|
===================================== 〔語彙分解〕的な部分一致の検索結果は以下の通りです。 ・ ー : [ちょうおん] (n) long vowel mark (usually only used in katakana)
アドレッシングモード(''Addressing Mode'')は、CPUの命令セットアーキテクチャ(ISA)の一部を構成する。プロセッサの命令には操作対象をオペランドで指定するものがあり、その指定方法の詳細がアドレッシングモードと呼ばれるものである。したがって、広義のアドレッシングモードにはレジスタを指定する場合も、値が命令のオペランドとして直接与えられている場合も含まれるが、狭義のアドレッシングモードはオペランドとして使用すべきメモリ領域を指定するものとみなされる。 プログラミングの観点から言えば、アドレッシングモードが重視されるのはコンパイラ開発やアセンブリ言語でプログラミングする場合である。 == どれだけのアドレッシングモードがあるか == コンピュータ・アーキテクチャが異なれば、それぞれに独自のアドレッシングモードがある。複雑なアドレッシングモードを廃し、数個の単純なアドレッシングモードだけにすると、使用する命令数が増え、レジスタも多く必要になるが、アドレッシングモードを単純化することで、CPUの命令パイプラインの設計が容易になるという利点があると言われている〔"How many addressing modes are enough?" by F. Chow, S. Correll, M. Himelstein, E. Killian, L. Weber, all from MIPS Computer Systems, Inc. 1987 "An Overview of the MIPS-X-MP Project" by John L. Hennessy and Mark A. Horowitz 1986: "MIPS-X uses a single addressing mode: base register plus offset. This simple addressing mode allows the computation of the effective address to begin very early"〕。 RISCでは一般にアドレッシングモードが少なく単純だが、DECのVAXなどのCISCでは1ダース以上のアドレッシングモードを備え、その一部は非常に複雑である。IBM System/360 は3種類のアドレッシングモードしか持たなかったが、System/390ではいくつか追加されている。 アドレッシングモードが少ない場合(例えばRISCや IBM System/390)、命令コード側にオペランドの意味を規定する情報が含まれている。しかしアドレッシングモードが豊富なアーキテクチャでは命令フォーマット内に命令コードとは別にアドレッシングモードを指定するフィールドが存在する。DEC VAX はほとんど全ての命令で複数のメモリオペランドを指定でき、オペランド指定フィールドの先頭数ビットで、そのオペランドのアドレッシングモードを指定するようになっている。アドレッシングモードを指定するビット列をオペコードから分離した命令セットは「直交性が高い」と言われる。 豊富なアドレッシングモードを持つコンピュータであっても、実際のプログラムを調べてみると、90%は単純なアドレッシングモードで済んでいる。これは高水準言語のコンパイラが生成したコードを調査した結果であり、コンパイラ自体の限界を反映したものということもできる〔"Instruction Set Principles: Addressing Mode Usage (Summary)" by Dr. Sofiène Tahar "3 programs measured on machine with all address modes (VAX)": "displacement mode" and "immediate mode" are used 75% of the time. "Fundamentals of Computer Design" p. 112-113 "Frequency of addressing modes for TI TMS320C54x DSP. The C54x has 17 data addressing modes, not counting register access, but the four found in MIPS account for 70% of the modes. Autoincrement and autodecrement, found in some RISC architectures, account for another 25% of the usage. This data was collected form a measurement of static instructions for the C-callable library of 54 DSP routines coded in assembly language." "Efficient and Language-Independent Mobile Programs" by Ali-Reza Adl-Tabatabai, Geoff Langdale, Steven Lucco, and Robert Wahbe 1995: "79% of all instructions executed could be replaced by RISC instructions or synthesized into RISC instructions using only basic block instruction combination."〕。 抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)』 ■ウィキペディアで「アドレッシングモード」の詳細全文を読む スポンサード リンク
|