表3.1 8086レジスタ
カテゴリ |
名称(上位/下位) |
機能 |
汎用レジスタ |
AX (AH/AL) |
各種演算用 |
BX (BH/BL) |
ベースポインタ用 |
CX (CH/CL) |
繰返し計数用 |
DX (DH/DL) |
一時記憶用 |
インデックスレジスタ |
SI |
転送元ポインタ用 |
DI |
転送先ポインタ用 |
セグメントレジスタ |
CS |
命令セグメント用 |
DS |
データセグメント用 |
ES |
汎用セグメント用 |
SS |
スタックセグメント用 |
特殊レジスタ |
BP |
ベースポインタ用 |
SP |
スタックポインタ |
IP |
実行ポインタ |
FLAGS |
フラグレジスタ |
8086では表3.1 に示すレジスタがありましたが、
80386までに、表3.2 の通りレジスタが追加または拡張されました。
その後もレジスタの追加が続き、表3.3のプロセッサで
新たなレジスタが追加されました。
表3.2 80836レジスタ
カテゴリ |
名称(上位/下位) |
機能 |
汎用レジスタ |
EAX |
AXを32bit拡張 |
EBX |
BXを32bit拡張 |
ECX |
CXを32bit拡張 |
EDX |
DXを32bit拡張 |
インデックスレジスタ |
ESI |
SIを32bit拡張 |
EDI |
DIを32bit拡張 |
セグメントレジスタ |
CS |
|
DS |
|
ES |
|
FS |
新規 |
GS |
新規 |
SS |
|
特殊レジスタ |
EBP |
BPを32bit拡張 |
ESP |
SPを32bit拡張 |
EIP |
IPを32bit拡張 |
EFLAGS |
FLAGSを32bit拡張 |
システムレジスタ |
GDTR |
Grobal Descriptor Table |
IDTR |
Interrupt Descriptor Table |
LDTR |
Local Descriptor Table |
TR |
Task Register |
CR[0-3] |
Control Register [0-3] |
デバッグレジスタ |
DR[0-7] |
Debug Register [0-7] |
表3.3 拡張レジスタ
CPU |
製造元 |
追加レジスタ |
80486 |
Intel |
浮動小数点レジスタ群(ST[0-7])、コプロセッサ統合 |
MMX Pentium |
Intel |
MMXレジスタ群(MM[0-7]) |
Pentium III |
Intel |
SSEレジスタ群(XMM[0-7]) |
Pentium 4 |
Intel |
SSE2レジスタ群(XMM[8-15]) |
Athlon 64 |
AMD |
64bit拡張レジスタ群(RAX, RSP, R[8-15]など) |