1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

アドレッシングモードとは

Last updated at Posted at 2021-11-15

アドレッシングモード

CPUの命令セットアーキーテクチャにおいて、命令のオペランド部(演算の対象となるデータのこと)を表すための方法のこと。オペランドが格納されている場所(実効アドレス)を指し示すため、実効アドレッシング・モードということもある。

 例えば加算演算を行う場合、加算命令のほかに、加算される2つのデータ(オペランド)が置かれている場所と、結果を格納する場所の3カ所を指定する必要がある(ただし多くのプロセッサ・アーキテクチャでは、加算されるオペランドの場所に結果を書き戻すことにして、オペランドの指定を2つで済ませている)。
この場所の指定方法のことを「アドレッシング・モード」という。代表的なアドレッシング・モードとしては、イミディエイト(即値)モードやレジスタ直接モード、レジスタ間接モード、スケールド・インデックス・モードなどがある。

引用
https://atmarkit.itmedia.co.jp/icd/root/55/5784555.html

命令セット 【ISA】 Instruction Set Architecture

( 命令セットアーキテクチャ)

命令セットとは、あるマイクロプロセッサ(CPU/MPU)を動作させるための命令語の体系。プロセッサが直に解釈して実行できる機械語(マシン語)の仕様を定めたもの。

cのポインタ型のサイズ

アドレッシングモードのサイズが、ポインタ型のサイズとなる。
32bitのOSの場合、32ビットのアドレス番地を持つ。つまり0~0xFFFF FFFFまで。
64bitのOSの場合、64ビットのアドレス番地を持つ。つまり0~0xFFFF FFFF FFFF FFFFまで。

なので、ポインタ型を宣言すると、その最大値を格納できるサイズが確保される。

void* ptr;
printf("%d", sizeof(ptr)); // 8
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?