x86 CPU アーキテクチャ

この記事は、Geek Timeによる「Linux オペレーティング システムに関する興味深い話」の 6 回目のレクチャー ノートです。

 Intel の 8086 CPU アーキテクチャ

データユニット: 16bit 汎用レジスタ 8 本、その後に 32bit 拡張ビット

 

 コントロールユニット

IP レジスタは命令ポインタ レジスタ (Instruction Pointer Register) であり、コード セグメント内の次の命令の位置を指します。 

プロセスを切り替える必要がある場合はどうすればよいですか? 各プロセスはコード セグメントとデータ セグメントに分割され、異なるプロセスのアドレス空間を指すために、4 つの 16 ビット セグメント レジスタ (CS、DS、SS、および ES) があります。

CS はコード セグメント レジスタ (コード セグメント レジスタ) であり、メモリ内のコードの場所を見つけることができます。

DS は、メモリ内のデータの場所を見つけることができるデータ セグメントのレジスタです。

SS はスタックレジスタ (Stack Register)

メモリ量に対応するアドレスのビット数は?

2^10 = K

2^20 = M

2^30 = G

2^16 = 2^6* 2^10 = 64K

  • 32 ビット アドレス バス、2^32=4GB のメモリにアクセス可能、メモリ ユニットは 1B、2^32 = 4*2^30 = 4GB
  • 20 ビット アドレス バス、2^20 = 1MB のメモリにアクセス可能

X86 が起動したときのリアル モードは、インテリジェントに 1M メモリを検索し、各セグメントは最大 64K で、保護モードの 32 ビット システムは 4G メモリをアドレス指定できます。

要約する

おすすめ

転載: blog.csdn.net/Chunying27/article/details/127555711