演算装置
[Wikipedia|▼Menu]
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}

この記事は検証可能参考文献や出典が全く示されていないか、不十分です。出典を追加して記事の信頼性向上にご協力ください。(このテンプレートの使い方
出典検索?: "演算装置" ? ニュース ・ 書籍 ・ スカラー ・ CiNii ・ J-STAGE ・ NDL ・ dlib.jp ・ ジャパンサーチ ・ TWL(2013年12月)

演算装置(えんざんそうち)は、コンピュータプロセッサ)の構成要素のひとつで、論理演算四則演算などの演算をおこなう装置である。
ALUALUを表す記号。AとBは入力(オペランド)でRが演算結果。Fは制御部からの入力で、Dは出力ステータス。

ALU(arithmetic logic unit、漢字をあてて算術論理演算装置とも)は代表的な演算装置で、論理演算加算および減算をおこなう。
ALUの動作詳細は「74181」を参照

以下、74181を例にALUの動作を説明する。

コンピュータでは、コンピュータの利用目的としての計算以外にも、アドレスの計算などの目的で加算が多用されるため、高速な加算器が重要であり、桁上げ先読み加算器が使われる。この時、桁上げ先読みのためには入力の全桁のそれぞれについて論理和と論理積のゲートが必要であり、出力の全桁について排他的論理和が必要である。

そのため、回路を工夫することで、高速な加算器と任意の論理演算のための装置をうまくひとつにまとめることができる。それがALUである。

74181の場合、2個の4ビットの処理すべきデータ(オペランドと呼ぶ)とキャリー入力を受け取り、オペコードに基づく制御装置あるいは実行ユニットからの5ビットの入力に従って望む演算が行われ、1個の4ビットの出力と、キャリー出力、高速桁上げのためのキャリー生成とキャリー伝播の出力が生成される(詳細は回路図があるデータシートを参照のこと)。加算器で減算もできることについては加算器の記事を参照。

一般に、キャリーの状態などは、専用のレジスタ(ステータスレジスタ)または汎用レジスタの特定のビットとして、演算装置に入出力されるプロセッサが多い。
その他の演算装置

加算器

乗算器

バレルシフタ

FPU

など

除算浮動小数点数の演算など、複雑な処理の実装には、直接ハードウェアで実装するには資源が多く必要なので、以下のような代替手段が取られることがある。機械語命令のエミュレートといった形で実装されることもある。

ソフトウェアによる実装(性能の追求のため機械語で実装したライブラリとして提供されることが多い。コンパイラのインライン展開などのテクニックも使われる)

マイクロコードによる実装

歴史

いわゆるノイマン型とされる計算機の構成についてジョン・フォン・ノイマンが書いた1945年の報告書『EDVACに関する報告書の第一草稿』(First Draft of a Report on the EDVAC)で、システムの各部分について述べた2章の§2.2において、第一に(primarily)計算機械(computer)であるから、加減乗除をはじめとする演算(operation)に特化した器官(organs)が必要である、と述べられている。また、文献中には the arithmetical and the logical control procedures of the device といった表現も見られる。

ここで「器官(organ)」という言葉が使われていることについては、当時、マカロックピッツによるニューロンの形式化(1943年)や、(まだ発表前であったが)ノーバート・ウィーナーが『サイバネティックス』(1948年)において生物のようなはたらきを機械で実現するものとしてフィードバックを扱ったように、またノイマンの死後出版された著書『自己増殖するオートマトンの理論』に見られるような、生物の働きは機械で模倣できるのではないか、といった気勢からのものである。
関連項目

除算 (デジタル)

汎用ロジックIC










CPUテクノロジー
アーキテクチャ

ISA: CISC

EDGE

EPIC

MISC(英語版)

OISC

RISC

VLIW

ZISC(英語版)

ハーバード・アーキテクチャ

ノイマン型

4ビット

8ビット

12ビット

16ビット

18ビット

24ビット

31ビット

32ビット

36ビット

48ビット

60ビット

64ビット

128ビット

並列処理

パイプライン

命令パイプライン

イン・オーダー&アウト・オブ・オーダー

レジスタ・リネーミング

投機的実行

レベル

ビット

命令

スーパースカラー

データ

タスク

スレッド

マルチスレッディング

同時マルチスレッディング

ハイパースレッディング

スーパースレッディング(英語版)

コア

シングルコア

マルチコア

ホモジニアスマルチコア

ヘテロジニアスマルチコア


フリンの分類

SISD

SIMD

MISD

MIMD


タイプ

マイクロプロセッサ

DSP


次ページ
記事の検索
おまかせリスト
▼オプションを表示
ブックマーク登録
mixiチェック!
Twitterに投稿
オプション/リンク一覧
話題のニュース
列車運行情報
暇つぶしWikipedia

Size:19 KB
出典: フリー百科事典『ウィキペディア(Wikipedia)
担当:undef