- 8 ビットレジスタ: A, F, B, C, D, H, L
- 16 ビットレジスタ: SP, PC
- 8 ビットレジスタは AF、BC、DE、HL の組み合わせで、16 ビットのペアレジスタとしても扱うことがある
表.レジスタセットと組み合わせ
15..8 |
7..0 |
A |
F |
B |
C |
D |
E |
H |
L |
SP |
PC |
アキュームレータ (A)
算術演算や論理演算などの演算は、このレジスタが使われ、結果がこれに保存される。
メモリとのやり取りにもこのレジスタが多く使用される。
フラグレジスタ (F)
アキュームレータでは、演算を行うのに使われるが、その結果、どのようなことが起こったかを保存するレジスタ。
表.フラグレジスタ
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
Z |
N |
H |
C |
- |
- |
- |
- |
- ゼロフラグ(Z): 演算結果がセロであることを示すフラグ。
結果がゼロの時、1となり、そうでないときは、0となる。
- サブトラクトフラグ(N): 直前に実行された命令が、減算命令であったことを示すフラグ。
減算命令であったとき、1となり、加算命令であったときは、0となる。
- ハーフキャリーフラグ(H): 演算の結果、下位4ビットから上位4ビットに対して、キャリー(桁上がり)またはボロー(桁下がり)があったことを示すフラグ
下位4ビットからのキャリーまたはボローがあったとき、1となり、そうではなかったときは、0となる。
- キャリーフラグ(C):加減算の結果、キャリーまたはボローがあったことを示すフラグ。
キャリーまたは、ボローがあったとき、1となり、そうでなかったときは、0となる。
また、ビット・シフト/ローテート命令で、最上位または最下位ビットからあふれたビットをキャリーとして扱う。
汎用レジスタ (B, C, D, E, H, L)
一時的な記憶場所として、いろいろな目的で使用できるレジスタ。
2つずつペアとして、BC、DE、HLのペア・レジスタとして使用できる。
完全な汎用ではなく、各命令で、特殊な意味を持たせている。
スタックポインタ (SP)
16ビットのレジスタで、メモリー上のスタックエリアのアドレスを記憶している。
レジスタの値を一時的に退避(PUSH命令)したり、復帰(POP命令)したりするために利用される。
プログラムカウンタ (PC)
16 ビットのレジスタで、次に実行する命令のアドレスを保持している。
命令を 1 バイト読み込む毎に加算される。
最終更新:2017年08月28日 12:27