※
※ このページは書きかけです。以下の可能性があります。
※ ・誤字、脱字等のチェックをおこなっていません。
※ ・テキスト、表などフォーマットがされていない。
※ ・画像が抜けている。
※
この表は、命令の種類ごとに分類して、R800のインストラクションをまとめたものです。表中のニーモニックは各命令の名前を現わし、命令動作でその動作内容を簡単に示しています。
命令動作の欄で←とあるのは、右側の内容を左側に代入することを、カッコでくくられたものは、くくられたレジスタなどで示されるメモリの内容を、それぞれ意味しています。例えば、
r←[.hl]
とあるのは、.hlレジスタで示されるアドレスのメモリの内容を、8ビットレジスタに代入するということです。ただし、入出力命令の[n]と[.c]は、対応する入出力ポートの番号のことです。
フラグの欄は各フラグの動作を、オペコードはそれぞれの命令に対するマシン語コードを、2進数と16進数で記したものです。その右側のBとCは、各命令の長さ(バイト数)と、命令を実行するのに要するクロック数を、それぞれ表しています。
このほか、インストラクション表に出てくる略号に関しては、次の凡例を参照して下さい。
表に記載されたニーモニックはZ80のものと違っていますが、R800で追加された乗算命令や、Z80で正式に動作が保障されていなかった命令以外はZ80と命令動作はすべて同じです。
凡例
| |
.a{7} | レジスター.aの最上位ビット |
.a{4-7} | レジスター.aのビット4-7 |
: | 動作の区切り |
.de:.hl | 上位16ビットが.de、下位16ビットが.hlに入る、32ビット整数 |
[.ix+d] | .ixに8ビットの符号つき変位を足した値が示すアドレス |
C | キャリーフラグ |
Z | ゼロフラグ |
P/V | パリティ・オーバーフローフラグ |
S | サインフラグ |
N | 減算フラグ |
H | ハーフキャリーフラグ |
・ | フラグは変化しない |
↕ | フラグは実行結果により変化する |
0 | フラグは0 |
1 | フラグは1 |
? | 不定になる |
V | オーバーフローフラグとして使われる |
P | パリティーフラグとして使われる |
IFF | 割り込みフリップフロップとして使われる |
r,r' | 8ビットレジスター、.a,.b,.c,.d,.e,.h,.l |
u,u' | 8ビットレジスター、.a,.b,.c,.d,.e,.ixh,.ixl |
v,v' | 8ビットレジスター、.a,.b,.c,.d,.e,.iyh,.iyl |
p | 8ビットレジスター、.ixh,.ixl |
q | 8ビットレジスター、.iyh,.iyl |
ss | 16ビットレジスター、.bc,.de,.hl,.sp |
pp | 16ビットレジスター、.bc,.de,.ix,.sp |
rr | 16ビットレジスター、.bc,.de,.iy,.sp |
qq | 16ビットレジスター、.bc,.de,.hl,.af |
e | short br 系の命令の飛び先アドレスへの差分、8ビットの符号付き即値 |
| (+127〜-128) |
k | brk命令の飛び先アドレス、00h,08h,10h,18h,20h,28h,30h,38h |
nn | 16ビットの即値、もしくは絶対アドレス |
n | 8ビットの即値 |
b | ビット演算命令の第何ビットかを示す値 |
NOT | ビットを反転する |
∨ | ビットのORをとる |
⊻ | ビットのXORをとる |
∧ | ビットのANDをとる |
tmp | 一時的に値を退避する |
B | 命令のバイト数 |
C | 命令の実行に必要な最小クロック数 |
分岐命令、コール命令でクロック数が2つ書いてあるものは、上が条件が成立しないとき、下が条件が成立した時を意味します。
また、入出力命令でクロック数が2つ書いてあるものは、上がまだ転送が終わらないとき、下が転送が終わったときをそれぞれ意味します。
ここに示す命令表のクロック数は、SYSCLK換算でXTALの発振周波数の4分の1です。また、ノーウエイトで実行したときの値で、DRAM上で実行した時はページブレークやリフレッシュにより、自動的にウエイトが挿入されます。
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
ld r , r' | r ← r' | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | r | r' | | 1 | 1 |
ld r , n | r ← n | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 0 | r | 1 | 1 | 0 | | 2 | 2 |
| | | | | | | | ← n → | | | |
ld r , [.hl] | r ← [.hl] | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | r | 1 | 1 | 0 | | 1 | 2 |
ld r , [.ix+d] | r ← [.ix+d] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 3 | 5 |
| | | | | | | | 0 | 1 | r | 1 | 1 | 0 | | | |
| | | | | | | | ← d → | | | |
ld r, [.iy+d] | r ← [.iy+d] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 3 | 5 |
| | | | | | | | 0 | 1 | r | 1 | 1 | 0 | | | |
| | | | | | | | ← d → | | | |
ld [.hl],r | [.hl] ← r | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | 1 | 1 | 0 | r | | 3 | 5 |
ld [.ix+d],r | [.ix+d] ← r | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 3 | 5 |
| | | | | | | | 0 | 1 | 1 | 1 | 0 | r | | | |
| | | | | | | | ← d → | | | |
ld [iy+d],r | [iy+d] ← r | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | FD | 3 | 5 |
| | | | | | | | 0 | 1 | 1 | 1 | 0 | r | | | |
| | | | | | | | ← d → | | | |
ld u, u' | u ← u' | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 2 | 2 |
| | | | | | | | 0 | 1 | u | u' | | | |
ld v, v' | v ← v' | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 2 | 2 |
| | | | | | | | 0 | 1 | v | v' | | | |
ld u, n | u ← n | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 3 | 3 |
| | | | | | | | 0 | 0 | u | 1 | 1 | 0 | | | |
| | | | | | | | ← n → | | | |
ld v, n | v ← n | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 3 | 3 |
| | | | | | | | 0 | 0 | v | 1 | 1 | 0 | | | |
| | | | | | | | ← n → | | | |
ld [.hl],n | [.hl] ← n | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 36 | 2 | 3 |
| | | | | | | | ← n → | | | |
ld [.ix+d],n | [.ix+d] ← n | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 4 | 5 |
| | | | | | | | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 36 | | |
| | | | | | | | ← d → | | | |
| | | | | | | | ← n → | | | |
ld [iy+d],n | [iy+d] ← n | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 4 | 5 |
| | | | | | | | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 0 | 36 | | |
| | | | | | | | ← d → | | | |
| | | | | | | | ← n → | | | |
| 000 | 001 | 010 | 011 | 100 | 101 | 110 | 111 |
r | .b | .c | .d | .e | .h | .l | | .a |
u | .b | .c | .d | .e | .ixh | .ixl | | .a |
v | .b | .c | .d | .e | .iyh | .iyl | | .a |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
ld ss, nn | ss ← nn | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 0 | ss | 0 | 0 | 0 | 1 | | 3 | 3 |
| | | | | | | | ← nnl → | | | |
| | | | | | | | ← nnh → | | | |
ld .ix, nn | .ix ← nn | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 4 | 4 |
| | | | | | | | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 21 | | |
| | | | | | | | ← nnl → | | | |
| | | | | | | | ← nnh → | | | |
ld .iy, nn | .iy ← nn | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 4 | 4 |
| | | | | | | | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 21 | | |
| | | | | | | | ← nnl → | | | |
| | | | | | | | ← nnh → | | | |
ld .sp, .hl | .sp ← .bl | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | F9 | 1 | 1 |
ld .sp, .ix | .sp ← .ix | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 2 | 2 |
| | | | | | | | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | F9 | | |
ld .sp, .iy | .sp ← .iy | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 2 | 2 |
| | | | | | | | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 1 | F9 | | |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
xch .de,.hl | .de⇔.hl | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | EB | 1 | 1 |
xch .af,.af' | .af⇔.af' | ↕ | ↕ | ↕ | ↕ | ↕ | ↕ | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 08 | 1 | 1 |
xch [.sp],.hl | .l⇔[.sp];.h⇔[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | E3 | 1 | 5 |
xch [.sp],.ix | .ixl⇔[.sp] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 2 | 6 |
| .ixh⇔[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | E3 | | |
xch [.sp],.iy | .iyl⇔[.sp] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 2 | 6 |
| .iyh⇔[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 0 | 1 | 1 | E3 | | |
xchx | .bc⇔.bc';.de⇔.de';.hl⇔.hl' | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 0 | 1 | 1 | D9 | 1 | 1 |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
push qq | [.sp-2]←qql;[.sp-1]←qqh | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | q | q | 0 | 1 | 0 | 1 | | 1 | 4 |
| .sp←.sp-2 | | | | | | | | | | | | | | | | | |
push .ix | [.sp-2]←.ixl;[.sp-1]←.ixh | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 2 | 5 |
| .sp←.sp-2 | | | | | | | | | | | | | | | E5 | | |
push .iy | [.sp-2]←.iyl;[.sp-1]←.iyh | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 2 | 5 |
| .sp←.sp-2 | | | | | | | | | | | | | | | E5 | | |
pop qq | qql←[.sp];qqh←[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | q | q | 0 | 0 | 0 | 1 | | 1 | 3 |
| .sp←.sp+2 | ・ | ・ | ・ | ・ | ・ | ・ | | | | | | | | | | | |
pop .ix | .ixl←[.sp];.ixh←[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 1 | DD | 2 | 4 |
| .sp←.sp+2 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | E1 | | |
pop .iy | .iyl←[.sp];.iyh←[.sp+1] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 1 | FD | 2 | 4 |
| .sp←.sp+2 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 1 | E1 | | |
pop .afのときはflagsはすべて変化する
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
move [.hl++],[.de++] | [.de]←[.hl];.de←.de+1 | ・ | ・ | 0 | ↕ | 0 | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 4 |
| .hl←.hl+1;.bc←.bc-1 | | | | | | | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | A0 | | |
move [.hl--],[.de--] | [.de]←[.hl];.de←.de-1 | ・ | ・ | 0 | ↕ | 0 | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 4 |
| .hl←.hl-1;.bc←.bc-1 | | | | | | | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | A8 | | |
movem [.hl++],[.de++] | repeat;[.de]←[.hl];.de←.de+1 | ・ | ・ | 0 | 0 | 0 | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 4 |
| .hl←.hl+1;.bc←.bc-1;until .bc=0 | | | | | | | 1 | 0 | 1 | 1 | 0 | 0 | 0 | 0 | B0 | | |
movem [.hl--],[.de--] | repeat;[.de]←[.hl];.de←.de-1 | ・ | ・ | 0 | 0 | 0 | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 4 |
| .hl←.hl-1;.bc←.bc-1;until .bc=0 | | | | | | | 1 | 0 | 1 | 1 | 1 | 0 | 0 | 0 | B8 | | |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
call nn | [.sp-2] ← .pcl;[.sp] ← pch | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | CD | 3 | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nni → | | | |
| | | | | | | | ← nnh → | | | |
call nz,nn | if z=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | C4 | 3 | 5 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call z,nn | if z=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 0 | 1 | 1 | 0 | 0 | CC | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call ne,nn | if c=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | D4 | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call c,nn | if c=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 1 | 0 | 0 | DC | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call po,nn | if F=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 1 | 0 | 0 | E4 | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call pe,nn | if F=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 0 | EC | 3 | 5 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call p,nn | if s=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 0 | 1 | 0 | 0 | F4 | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
call m,nn | if s=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 1 | 0 | 0 | FC | 3 | 3 |
| [.sp-2] ← .pcl;[.sp] ← pch | | | | | | | ← nni → | | | 5 |
| .sp ← .sp-2;pc-nn | | | | | | | ← nnh → | | | |
ret | .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 1 | C9 | 1 | 3 |
ret nz | if z=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | C0 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret z | if z=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 0 | 1 | 0 | 0 | 0 | C8 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret nc | if c=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | D0 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret c | if c=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 0 | 0 | D8 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret po | if F=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 0 | E0 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret pe | if F=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | E8 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret p | if s=0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | F0 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
ret m | if s=1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 0 | 0 | 0 | F8 | 1 | 1 |
| .pcl ← [.sp];pch ← [.sp+1];.sp ← .sp+2 | | | | | | | | | | | | | | | | | 3 |
reti | interrupt return | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 5 |
| | | | | | | | 0 | 1 | 0 | 0 | 1 | 1 | 0 | 1 | 4D | | |
retn | Non Maskable Interrupt return | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 0 | 0 | 0 | ED | 2 | 5 |
| | | | | | | | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 1 | 45 | | |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
in .a,[n] | .a ← [n] | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | DB | 2 | 3 |
in r,[.c] | r ← [.c] | 1 | 1 | 0 | P | 0 | ・ | ↕ | ↕ | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
in .f,[.c] | [.c] | 1 | 1 | 0 | P | 0 | ・ | ↕ | ↕ | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
| | | | | | | | 0 | 1 | 1 | 1 | 0 | 0 | 0 | 0 | 70 | | |
in [.hl++],[.c] | [.hl] ← [.c];b ← .b-1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | ↕ | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl+1 | | | | | | | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | A2 | | |
in [.hl--],[.c] | [.hl] ← [.c];b ← .b-1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | ↕ | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl-1 | ? | 1 | ? | ? | 1 | ・ | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | AA | | |
inm [.hl++],[.c] | repeat;[.hl] ← [.c];b ← .b-1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl+1;until .b=0 | ? | 1 | ? | ? | 1 | ・ | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 | B2 | | 3 |
inm [.hl--],[.c] | repeat;[.hl] ← [.c];b ← .b-1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl-1;until .b=0 | ? | 1 | ? | ? | 1 | ・ | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 0 | BA | | 3 |
out [n],.a | [n] ← .a | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 0 | 1 | 0 | 0 | 1 | 1 | D3 | 2 | 3 |
out [.c],r | [.c] ← r | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
out [.c],[.hl++] | [.c] ← [.hl];.b ← .b-1 | ? | 1 | ? | ? | 1 | ・ | 1 | ↕ | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 4 |
| .hl ← .hl+1 | | | | | | | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 1 | A3 | | |
out [.c],[.hl--] | [.c] ← [.hl];.b ← .b-1 | ? | 1 | ? | ? | 1 | ・ | 1 | ↕ | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl-1 | | | | | | | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 1 | AB | | |
outm [.c],[.hl++] | repeat;[.c] ← [.hl];.b ← .b-1 | ? | 1 | ? | ? | 1 | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl+1;until .b=0 | | | | | | | 1 | 0 | 1 | 1 | 0 | 0 | 1 | 1 | B3 | | 3 |
outm [.c],[.hl--] | repeat;[.c] ← [.hl];.b ← .b-1 | ? | 1 | ? | ? | 1 | ・ | 1 | 1 | 0 | 1 | 1 | 0 | 1 | 1 | ED | 2 | 4 |
| .hl ← .hl-1;until .b=0 | | | | | | | 1 | 0 | 1 | 1 | 1 | 0 | 1 | 1 | BB | | 3 |
ニーモニック | 命令動作 | flags | オペコード | B | C |
S | Z | H | P/V | N | C | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 | Hex |
| | | | | | | | | | | | | | | | | | |
adj .a | adjust to decimal | ↕ | ↕ | ↕ | P | ・ | ↕ | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 1 | 27 | 1 | 1 |
not.a | .a ← NOT .a | ・ | ・ | 1 | ・ | 1 | ・ | 0 | 1 | 0 | 0 | 1 | 1 | 1 | 1 | 2F | 1 | 1 |
neg.a | .a ← NOT .a+1 | ↕ | ↕ | ↕ | V | ・ | ↕ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 2 |
| | | | | | | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 44 | | |
notc | C ← NOT c | ・ | ・ | ? | ・ | 0 | ↕ | 0 | 0 | 1 | 1 | 1 | 1 | 1 | 1 | 3F | 1 | 1 |
setc | C ← 1 | ・ | ・ | 0 | ・ | 0 | ↕ | 0 | 0 | 1 | 1 | 0 | 1 | 1 | 1 | 37 | 1 | 1 |
nop | NO operation | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 00 | 1 | 1 |
halt | HALT | ・ | ・ | ・ | ・ | ・ | ・ | 0 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 76 | 1 | 2 |
di | IFF ← 0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 0 | 0 | 1 | 1 | F3 | 1 | 2 |
ei | IFF ← 1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | FB | 1 | 1 |
im 0 | interrupt mode 0 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
| | | | | | | | 0 | 1 | 0 | 0 | 0 | 1 | 1 | 0 | 46 | | |
im 1 | interrupt mode 1 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
| | | | | | | | 0 | 1 | 0 | 1 | 0 | 1 | 1 | 0 | 56 | | |
im 2 | interrupt mode 2 | ・ | ・ | ・ | ・ | ・ | ・ | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 | ED | 2 | 3 |
| | | | | | | | 0 | 1 | 0 | 1 | 1 | 1 | 1 | 0 | 5E | | |