Z80にはビットセット リセット テスト命令がある.これらの命令 は,どのメモリ位置 CPUレジスタに対しても有効でレジスタ,レ ジスタ間接及びインデックスドのいずれのアドレッシングモード でも操作できる.
例 BIT 0,A
A の0ビット目のテスト,結果はFレジスタに RES 1,(HL)
HLで示す番地の内容の1ビット目のを0にする.
SET 2,(IX+d)
インデックスレジスタで示すアドレス+d番地の内 容の2ビット目を1にする.
メモリ・レジスタ直接アドレス指定
メモリの番地やレジスタ名を直接命令の中で指定する 1. ADD A , B A <= A + B
2. LD A , (0100H) A <= (0100H)
Z80 マイクロプロセッサの命令体系
(1)データ転送命令( data transfer instruction )
(2)算術論理演算命令( operation instruction )
(3)分岐命令( branch instruction )
(4)サブルーチン関連命令( subroutine call / returninstruction )
(5)入出力命令( input / output instruction )
(6)CPU制御命令( CPU control instruction )
(1)データ転送命令
ニーモニックコード 機能
LD r,rʻ r <= rʼ
LD r,n r <= n
LD rp ,nn rp <= nn
LD r ,(nn) r <= (nn)
LD (nn),r (nn) <= r LD (rp),A (rp) <= A LD A,(rp) A <= (rp)
但し r,rʻ ;A,B,C,D,E,H,L n, nn ; 8ビット 16ビットデータ rp;ペアレジスタ(BC,DE,HL) ( );( )内の番地の内容
PUSH qq (SPー1) <= qqH (SPー2)<=qqL
POP qq qqL <= (SP) qqH <= (SP+1)
(2)算術論理演算命令
演算命令
ニーモニック 機能
ADD 加算命令 例 ADD A,n A <= A+n
ADC キャリを含む加算命令 例 ADC A,n A <= A +n + CY SUB 減算命令 例 SUB s A <= A - s
SBC キャリを含む減算命令 例 SBC s A <= A – s - CY AND 論理積 例 AND s A <= A * s XOR 排他的論理和 例 XOR s A <= A s OR 論理和 例 OR s A <= A + s CP 比較 例 CP s A - s (内容は不変)
INC +1 例 INC r r <= r+1
DEC −1 例 DEC r r <= r – 1
(3)分岐命令
ニーモニック 機能
1. JP nn PC <= nn
2. JP cc,nn if cc = true , PC <= nn
条件符号cc フラグ 条件
NZ Z=“0” 演算結果がゼロでない Z Z=“1” 演算結果がゼロである NC CY=”0” MSBから桁上げがない C CY=”1” MSBから桁上げがある
PO P=“0” 8ビット中“1”の個数が偶数 PE P=”1” 8ビット中“1”の個数が奇数
P S=”0” MSBが“0”
M S=”1” MSBが“1”
(4)サブルーチン関連命令
ニーモニック 機能
CALL nn スタックメモリ<= PC, PC<=nn
(SP-1)<=PCH ,(SP-2)<=PCL ,PC<=nn RET PC <= スタックメモリ
PCL<=(SP),PCH<=(SP+1),SP<=SP+1 CALL cc,nn ccの条件が合えばCALL文を実行
RET cc ccの条件が合えばRET文を実行
NZ Z=“0” 演算結果がゼロでない Z Z=“1” 演算結果がゼロである NC CY=”0” MSBから桁上げがない C CY=”1” MSBから桁上げがある PO P=“0” 8ビット中“1”の個数が偶数 PE P=”1” 8ビット中“1”の個数が奇数 P S=”0” MSBが“0”
M S=”1” MSBが“1”
(5)入出力命令
ニーモニック 機能
IN A , (n) A <= ポート番号
IN r , ( C ) r <= ( C )
レジスタCで示すポート番号の内容を r レジスタに入力 OUT (n),A ポート番号 <= A
OUT (C),A レジスタCで示すポート番号<=A 他に
OTIR,OUTD,OTDR,INI,INIR,IND,INDR
(6) CPU 制御命令
ニーモニック 機能
NOP 何もしない
HALT 停止状態になる
DI 割り込み受付禁止 EI 割り込み受付許可
IM0 割り込みモード0 8080Aモード
IM1 割り込みモード1 38Hへのコール命令 IM2 割り込みモード2
レジスタIと割り込みデバイスからの8ビット
デー タを用いた間接コール命令
ローティとシフト命令
CY b 7 b 0
b 7 b 0
b 7 b 0
b 7 b 0
CY
CY
CY
左 ロ ー テ ィ ト サ ー キ ュ ラ
左 ロ ー テ ィ ト
右 ロ ー テ ィ ト
右 ロ ー テ ィ ト サ ー キ ュ ラ RLC
RRC
RL
RR
CY b 7 b 0 0
b 7 b 0
b 7 b 0
0 CY
CY
算 術 的 左 シ フ ト
算 術 的 右 シ フ ト
論 理 的 右 シ フ ト SLA
SRA
SRL
B7 B4 B3 B0 B3 B0
Acc (HL)
右 ロ ー テ ィ ト デ ジ ッ ト RRD
B7 B4 B3 B0 B3 B0
Acc (HL)
左 ロ ー テ ィ ト デ ジ ッ ト RLD
ブロックサーチ命令
CPI ; Aー(HL) ,HL <= HL+1 ,BC <= BC++1
(HL)の内容で指定されるメモリの内容とAとの内容を比較する.
CPIR ; Aー(HL) ,HL <= HL+1 ,BC <= BC++1
(HL)の内容で指定されるメモリの内容とAとの内容を比較する BCがゼロか,比較した結果が等しくなるまで繰り返す.
CPD ; A=(HL) , HL <= HL-1 , BC <= BC-1
(HL)の内容で指定されるメモリの内容とAとの内容を比較する
CPDR ; A=(HL) , HL <= HL-1 , BC <= BC-1
(HL)の内容で指定されるメモリの内容とAとの内容を比較する BCがゼロか,比較した結果が等しくなるまで繰り返す.
交換
EXX BC Ù BC’ DE Ù DE’ HLÙ HL’
レジスタペアの内容をそれぞれ裏レジスタの内容と交換する.
EX DE , HL DE Ù HL EX AF , AF’ AF Ù AF’
EX (SP) , HL L Ù (SP) H Ù (SP+1) EX (SP) , IX IXL Ù (SP) IXH Ù (SP+1) EX (SP) ,IY IYL Ù (SP) IYH Ù (SP+1)
リスタート命令
RST 0 0000Hへジャンプ C7H
RST 8 0008Hへジャンプ CFH
RST 16 0010Hへジャンプ D7H RST 24 0018Hへジャンプ DFH RST 32 0020Hへジャンプ E7h RST 40 0028Hへジャンプ EFH RST 48 0030Hへジャンプ F7H RST 56 0038Hへジャンプ FFH
その他の操作命令
DAA
2進化10進法による加減算の際にAの内容を補正する CPL
Aの内容について1の補数をとる.(反転させる)
NEG A<=0−A
Aの内容について2の補数をとる.
CCF
キャリーフラグの内容の1の補数をとる
SCF CY <= 1
キャリーフラグをセットする.
ブロック転送命令
LDI (DE) <= (HL) , DE <= DE+1 , HL <= HL+1 , BC <= BC-1
(HL)の内容を(DE)へ転送する.
LDIR (DE) <= (HL) , DE <= DE+1 , HL <= HL+1 , BC <= BC-1
(HL)の内容を(DE)へ転送する.この操作をBCが0になるまで繰り返す.
LDD (DE) <= (HL) , DE <= DEー1 , HL <= HLー1 , BC <= BCー1
(HL)の内容を(DE)へ転送する
LDDR (DE) <= (HL) , DE <= DE−1 , HL <= HLー1 , BC <= BCー1
(HL)の内容を(DE)へ転送する.この操作をBCが0になるまで繰り返す.
8ビット算術論理演算命令
8 ビ ッ ト 算 術 、 論 理 演 算
ソ ー ス
A B C D E H L ( H L ) ( I X
+ d ) ( I Y
+ d ) n レ ジ ス タ ・ ア ド レ シ ン グ レ ジ ス タ
間 接
イ ン デ ッ ク ス ド イ ミ デ ィ エ ッ ト
ʼ A D D ʼ A D D w C A R R Y
ʼ A D C ʼ S U B T R A C T
ʼ S U B ʼ S U B w C A R R Y
ʼ S B C ʼ
ʼ A N D ʼ
ʼ X O R ʼ
ʼ O R ʼ C O M P A R E
ʼ C P ʼ I N C R E M E N T
ʼ I N C ʼ D E C R E M E N T
ʼ D E C ʼ
8 7 8 0 8 1 8 2 8 3 8 4 8 5 8 6 8 F 8 8 8 9 8 A 8 B 8 C 8 D 8 E 9 7 9 0 9 1 9 2 9 3 9 4 9 5 9 6 9 F 9 8 9 9 9 A 9 B 9 C 9 D 9 E A 7 A 0 A 1 A 2 A 3 A 4 A 5 A 6 A F A 8 A 9 A A A B A C A D A E B 7 B 0 B 1 B 2 B 3 B 4 B 5 B 6 B F B 8 B 9 B A B B B C B D B E 3 C 0 4 0 C 1 4 1 C 2 4 2 C 3 4 3 D 0 5 0 D 1 5 1 D 2 5 2 D 3 5
D D F D
d n
8 6 8 E C E
9 6 9 E A 6 A E B 6 B E 3 4 3 5
F E F 6 E E E 6 D E D 6 D D
D D D D D D D D D D D D D D D D
F D F D F D F D F D F D F D F D F D d d d d d d d d d
d d d d d d d d d d
n n n n n n n 0 6
3 5 3 4 B E B 6 A E
A 6 9 E 9 6 8 E 8 6
8ビット転送命令
I R A B C D E H L ( H L ) ( B C ) ( D E ) ( I X + d )
( I Y
+ d ) ( n n ) n A
B C D E H L
( H L ) ( B C ) ( D E ) ( I X
+ d ) ( I Y
+ d ) ( n n )
I R
イ ン プ ラ イ ド レ ジ ス タ レ ジ ス タ 間 接 イ ン デ ッ 拡 張 ア ド
レ シ ン グ イ ミ デ ィ
エ ッ ト
レ ジ ス タ
レ ジ ス タ 間 接
イ ン デ ッ
拡 張 ア ド レ シ ン グ
イ ン プ ラ イ ド
E D 5 7
E D
5 F 7 F 7 8 7 9 7 A 7 B 7 C 7 D 7 E 0 A 1 A D D 7 Ed
F D 7 Ed
3 A nn
3 E n 4 7 4 0 4 1 4 2 4 3 4 4 4 5 4 6 D D4 6
d F D
4 6d n
0 6
4 F 4 8 4 9 4 A 4 B 4 C 4 D 4 E 4 E
D D d
F D
4 Ed n
n n
n n
n D D
D D D D D D
d d d d
F D F D F D F D
d
d d d
5 7 5 0 5 1 5 2 5 3 5 4 5 5 5 6 5 6 5 6
0 E 1 6 1 E 2 6 2 E
3 6 5 E
6 6 6 E
5 E 6 6 6 E 5 F 5 8 5 9 5 A 5 B 5 C 5 D 5 E
6 7 6 0 6 1 6 2 6 3 6 4 6 5 6 6
6 F 6 8 6 9 6 A 6 B 6 C 6 D 6 E 7 7 7 0 7 1 7 2 7 3 7 4 7 5 0 2
1 2 D D
d F D
d
D D D D D D D D D D D D
d d d d d d
F D F D F D F D F D F D
d d d d d d
7 7 7 0 7 1 7 2 7 3 7 4 7 5 7 7 7 0 7 1 7 2 7 3 7 4 7 5
E D 4 7 E D 4 F 3 2
nn
F D D D
d
3 6dn 3 6
n
8 ビ ッ ト ロ ー ド ” L D ” ソ ー ス 注 3 6
注 3 1
注 3 2
注 3 3
注 3 4
注 3 5 デ ィ ス テ ィ ネ ー シ ョ ン
ク ス ド
ク ス ド
16ビット転送命令
レ ジ ス タ
1 6 ビ ッ ト ロ ー ド ” L D ”
デ ィ ス テ ィ ネ ー シ ョ ン
A F B C D E H L S P I X I Y n n ( n n ) ( S P )
A F
B C
D E
H L
S P
I X
I Y
( n n )
( S P )
ソ ー ス
拡 張 イ ミ Σィエット
拡 張 ア ド レ シ ン グ
レ ジ ス タ 間 接 注 3 7
P U S H 命 令
P O P 命 令 拡 張 ア ド レ シ ン グ
レ ジ ス タ 間 接 レ ジ ス タ
F 1 C 1
D 1
E 1 D D
F D E 1
E 1 0 1
n n E D4 B
1 1
2 1
5 B
2 A 3 1 7 B
D D F 9
4 3 5 3 2 2
7 3
F 5 C 5 D 5 E 5
E 5
n n nn
n n nn D D
F 9 F 9 F D
nn E D
nn E D
nn E D
nn 2 An
n F D2 1
nn F D2 A
nn 2 1 D D
n n
nn nn nn
D D F D nn
nn F D
2 2 2 2
E D E D E D
→
( 注 ) P U S H お よ び P O P 命 令 の ↑ 全 実 行 が 終 わ っ た あ と に S P が 修 正 さ れ る 。
ポ ッ プ 命 令 は プ ッ シ ュ 命 令 と ち ょ う ど 逆 の 操 作 に な る 。
16ビット算術演算命令
B C D E H L S P I X I Y
H L
I X
I Y
H L
H L
ʼ A D D ʼ
A D D W I T H C A R R Y A N D S E T F L A G S ʼ A D C ʼ
S U B W I T H C A R R Y A N D S E T F L A G S ʼ S B C ʼ
I N C R E M E N T ʼ I N C ʼ
D E C R E M E N T ʼ D E C ʼ
1 6 ビ ッ ト 算 術 演 算
ソ ー ス
デ ィ ス テ ィ ネ ー シ ョ ン
0 9 1 9 2 9 3 9
D D D D D D D D
0 9 1 9 3 9 2 9
0 9 1 9 3 9 2 9
F D F D F D F D
E D E D E D E D
E D E D E D E D 4 A 5 A 6 A 7 A
4 2 5 2 6 2 7 2
2 3
2 B D D
D D
F D
F D 2 3
2 B 0 3 1 3 2 3 3 3
0 B 1 B 2 B 3 B
ジャンプコールリターング命令
J U M P ʼ J P ʼ
J U M P ʼ J P ʼ
J U M P ʼ J P ʼ
J U M P ʼ J P ʼ
J U M P ʼ J R ʼ
ʼ C A L L ʼ
D E C R E M E N T B , J U M P I F N O N Z E R O ʼ D J N Z ʼ
R E T U R N
ʼ R E T ʼ
R E T U R N F R O M I N T ʼ R E T I ʼ
R E T U R N F R O M N O N M A S K A B L E I N T ʼ R E T N ʼ
無 条 件 キ ャ リ
ノ ン ・
ゼ ロ
パ リ テ ィ
偶 数 奇 数 負 正 カ ウ ン ト
パ リ テ ィ ゼ ロ
キ ャ リ
ノ ン ・
拡 張 イ ミ デ ィ エ ッ ト
相 対
レ ジ ス タ 間 接
間 接
間 接
間 接 レ ジ ス タ
レ ジ ス タ
レ ジ ス タ 相 対 デ ィ エ ッ ト
拡 張 イ ミ
n n
P C + e ( H L )
( I X ) ( I Y )
n n
( S P ) ( S P + 1 )
( S P + 1 ) ( S P ) ( S P + 1 )
( S P ) P C + e
n n n
n n n n n n n n
n n n n n n n n
n n n n n n n n
n n n n n n n n n
e - 2 e - 2 e - 2 e - 2 e - 2
C 3 D A D 2 C A C 2 E A E 2 F A F 2
E 9 D D E 9 F D E 9
C 9 E D 4 D E D 4 5
D 8 D 0 C 8 C 0 E 8 E 0 F 8 F 0
1 8 3 8 3 0 2 8 2 0
C D D C D 4 C C C 4 E C E 4 F C F 4
1 0 e - 2
ジ ャ ン プ , コ ー ル , リ タ ー ン グ ル ー プ
条 件
あ る フ ラ グ は 1 つ 以 上 の 目 的 で 用 い ら れ る 。
詳 細 は 第 6 章 参 照 。
CPU 制御命令
ʼ N O P ʼ
ʼ H A L T ʼ
D I S A B L E I N T ʼ ( D I ) ʼ
E N A B L E I N T ʼ ( E I ) ʼ
S E T I N T M O D E 0
ʼ I M 0 ʼ
S E T I N T M O D E 1
ʼ I M 1 ʼ
ʼ I M 2 ʼ
S E T I N T M O D E 2
0 0
7 6
F 3
F B E D 4 6 E D 5 6 E D 5 E
C P U 制 御 命 令
8 0 8 0 A モ ー ド
3 8 H 番 地 へ の コ ー ル 命 令
レ ジ ス タ I と 割 り 込 み デ バ イ ス か ら の 8 ビ ッ ト デ ー タ を 用 い た 間 接 コ ー ル 命 令
その他の命令
D e c i m a l A d j u s t A c c ,ʼ D A A ʼ
C o m p l e m e n t A c c ,ʼ C P L ʼ
N e g a t e A c c ,ʼ N E G ʼ
( 2 ʼ c o m p l e m e n t )
C o m p l e m e n t C a r r y F l a g ,ʼ C C F ʼ
S e t C a r r y F l a g ,ʼ S C F ʼ
2 7
2 F E D 4 4
3 F
3 7
そ の 他 の 操 作
フラグの変化
I N I R ; I N D R ; O T I R ; O T D R
命 令 C Z S N H
P V
/
0
1
X P
V
● 0
0
0 0 0
0 0
0
0
0
0 0 0
0 0
0 0
0 0 0 0 0 0 0 0
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
● ● ●
● ● ● V
V
V V P
V V
P
P P
P
1 1
1 1
1
1 1 1
1
1
X 1 X
X
X X X
X X X 1 X X
X X 0
X X
X X 0 IFF
備 考
A D D A , s ; A D C A , s S U B s ; S B C A , s , C P s N E G
A N D s O R s ; X O R s I N C
D E C s A D D d d , s s A D C H L , s s
R L A ; R L C A ; R R A ; R R C A S B C H L , s s
R L s ; R L C s ; R R s ; R R C s S L A s ; S R A s ; S R L s R L D , R R D
D A A C P L S C F C C F I N r , ( C )
I N I ; I N D ; O U T I ; O U T D
L D I , L D D L D I R , L D D R
C P I , C P I R , C P D , C P D R
L D A , I ; L D A , R B I T b , s
8 ビ ッ ト 加 算 、 キ ャ リ を 含 む 加 算 8 ビ ッ 減 算 、 キ ャ リ を 含 む 加 算 、 比 較 符 号 反 転 ( ニ ゲ イ ト )
論 理 演 算
8 ビ ッ ト 、 イ ン ク リ メ ン ト 8 ビ ッ ト 、 デ ク リ メ ン ト 1 6 ビ ッ ト 加 算
1 6 ビ ッ ト キ ャ リ を 含 む 加 算 1 6 ビ ッ ト キ ャ リ を 含 む 減 算
ロ ー テ イ ト ・ ア キ ュ ウ ム レ ー タ
ロ ー テ イ ト ・ シ フ ト s
ロ ー テ イ ト ・ デ ジ ッ ト 左 、 右 デ ジ タ ル ・ ア ジ ャ ス ト ・ ア キ ュ ム レ ー タ ア キ ュ ム レ ー タ 補 数 変 数
セ ッ ト ・ キ ャ リ キ ャ リ 補 数 変 数 レ ジ ス タ 間 接 入 力 ブ ロ ッ ク 入 出 力
B ≠ 0 な ら ば Z = 0 、 そ の 他 は Z = 1
ブ ロ ッ ク 転 送
B ≠ 0 な ら ば P / V = 0 、 そ の 他 は P / V = 0 ブ ロ ッ ク ・ サ ー チ
A = ( H L ) な ら ば Z = 1 、 そ の 他 は Z = 0 B C ≠ 0 な ら ば P / V = 1 、 そ の 他 は P / V = 0 I F F の 内 容 が P / V に コ ピ ー さ れ る s の ビ ッ ト b の 内 容 が Z に コ ピ ー さ れ る
記 号 の 説 明
記 号 の 説 明
C ; キ ャ リ / リ ン ク ・ フ ラ グ 結 果 の M S B か ら の キ ャ リ が あ れ ば 、 C = 1 。
Z ; ゼ ロ ・ フ ラ グ 零 な ら ば 、 Z = 1 。
S ; サ イ ン ・ フ ラ グ 結 果 の M S B が 1 な ら ば 、 s = 1 。
P / V ; パ リ テ ィ と オ ー バ フ ロ ー 兼 用 フ ラ グ 結 果 が 奇 数 、 ま た は オ ー バ フ ロ ー な ら ば 、 P / V = 1 。 結 果 が 偶 数 な ら ば 、 P / V = 0 。
H ; ハ ー フ ・ キ ャ リ 結 果 に キ ャ リ 、 ボ ロ ー が あ れ ば 、 H = 1 。
N ; 加 算 / 減 算 フ ラ グ さ き の 演 算 が 減 算 な ら ば 、 N = 1
; 操 作 の 結 果 、 変 化 す る 。
● ; 操 作 の 結 果 、 変 化 し な い 。
0 ; 操 作 に よ り 、 リ セ ッ ト さ れ る 。
X ; 無 視 し て 良 い 。
V ; オ ー バ ・ フ ラ グ と し て 扱 わ れ る 。
P ; パ リ テ ィ ・ フ ラ グ と し て 扱 わ れ る 。
s ; 8 ビ ッ ト ・ ロ ケ ー シ ョ ン 。
R ; リ フ レ ッ シ ュ ・ カ ウ ン タ 。
I ; I レ ジ ス タ ( 割 り 込 み ベ ク ト ル の 上 位 バ イ ト 用 ) 。
r ; C P U レ ジ ス タ A , B , C , D , E , H , L 。
s s ; 1 6 ビ ッ ト ・ ロ ケ ー シ ョ ン 。
n ; 8 ビ ッ ト 値 ( 0 〜 2 5 5 ) 。
n n ; 1 6 ビ ッ ト 値 ( 0 〜 6 5 5 3 5 ) 。
Z80マイクロプロッセッサのフラグレジスタ
S Z X H X P/V N CY
MSB LSB
フラグ フラグが“1”にセットされる条件 S 演算の結果、MSB=1のとき
Z 演算の結果、すべてのビットが“0”のとき
X 未使用
H 演算の結果、下位4桁目からの桁上げが生じたとき
X 未使用
P/V 演算の結果、“1”の個数が偶数のとき
算術演算の結果、扱える数値の範囲を超えたとき
N 加減算フラグ ADD命令で“0” SUB命令で“1”にセット CY 演算の結果、MSBからの桁上がりが生じたとき
入力命令
入 力 命 令 群
ソ ー ス 入 力 ポ ー ト
デ ィ ス テ ィ ネ ー シ ョ ン 入 力
I N P U Tʼ I N ʼ
ブ ロ ッ ク 入 力 コ マ ン ド ʼ I N I ʼ_ I N P U T &
I n c H L , D e c B
ʼ I N I R ʼ_ I N P , I n c H L , D e c B , R E P E A T I F B ≠ 0 ʼ I N D ʼ_ I N P U T ρ D e c H L , D e c B
ʼ I N D R ʼ_ I N P U T , D e c H L , D e c B , R E P E A T I F B ≠ 0
レ ジ ス タ ・ ア ド レ シ ン グ
レ ジ ス タ 間 接
イ ミ デ ィ エ ッ ト
レ ジ ス タ 間 接
A
( n )( C )
B
C
D
E
H
L
( H L ) D B
n E D
E D
E D
E D
E D E D
E D
E D
E D
E D
E D 7 8
4 0
4 8
5 0
5 8
6 0
6 8
A 2
B 2
A A
B A
出力命令
レ ジ ス タ レ ジ ス タ
間 接
イ ミ デ ィ エ ッ ト
レ ジ ス タ 間 接
レ ジ ス タ 間 接
レ ジ ス タ 間 接
レ ジ ス タ 間 接
レ ジ ス タ 間 接
A B C D E H L ( H L )
( n )
( C )
( C )
( C )
( C )
( C ) D 3
n
E D E D E D E D E D E D E D E D 7 9 4 1 4 9 5 1 5 9 6 1 6 9
E D E D E D A 3
B 3 A B B B ʼ O U T ʼ
ʼ O U T I ʼ_ O U T P U T I n c H L , D e c b
ʼ O T I R ʼ_ O U T P U T,I n c H L , D e c B , R E P E A T I F B ≠ 0
ʼ O U T D ʼ_O U T P U T D e c H L & B
ʼ O T D R ʼ_ O U T P U T , D e c H L
& B , R E P E A T I F B ≠ 0
出 力 ポ ー ト デ ィ ス テ ィ ネ ー シ ョ ン
ブ ロ ッ ク 出 力 コ マ ン ド
ソ ー ス
出 力 命 令 群
ビット操作命令
レ ジ ス タ ・ ア ド レ シ ン グ レ ジ ス タ 間 接イ ン デ ッ ク ス ド
ビ ッ ト
T E S T
ʼ B I T ʼ
R E S E T B I T
ʼ R E S ʼ
S E T B I T
ʼ S E T ʼ
A B C D E H L ( H L ) ( IX
+ d )( I Y +d ) 0
1
2
3
4
5
6
7 0
1
2 3
4
5
6
7
0
1
2 3
4
5
6
7
CB C B C B C B C B C B C B C B CB CB
CB C B C B C B C B C B C B CB CB C B
C B C B C B C B C B CB C B CB C B C B
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B C B C B CB
C B C B
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B CB C B C B CB C B
CB C B C B CB C B CB C B C B
C B C B
CB C B C B C B C B C B C B C B
C B CB
CB C B CB C B C B C B C B CB
C B C B
CB C B C B C B C B C B C B CB C B CB
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B CB C B C B C B CB
CB C B C B C B C B C B C B CB C B CB
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B C B C B C B C B C B
CB C B C B C B C B C B C B CB C B CB
CB C B C B C B C B C B C B CB C B CB
CB C B C B C B C B C B C B CB
C B C B
CB C B C B C B C B C B C B CB
C B CB
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B C B C B CB C B C B
CB C B C B C B C B C B C B CB C B CB
CB C B C B C B C B C B C B CB CB CB
40 4 1 4 2 4 3 4 4 45 46
4 7
4 8 49 4A 4 B 4 C 4 D 4 E
4F
DD F D d
F D
F D
F D
F D
F D F D
F D
F D
F D F D
F D
F D
F D
F D
F D
F D
F D
FD
F D
F D
F D
F D
F D DD
DD
DD
DD
DD DD
DD
D D
DD
D D
D D DD
DD
DD
DD
DD
D D
DD
DD
DD D D
D D
DD
d d
d
d d
d d
d
d
d d
d
d
d
d
d
d
d
d d
d
d d
d
d d
d
d
d
d d
d
d
d
d
d
d
d
d d
d
d
d d
d
d
d
4 6 4 6
4 E 4E
5 0 5 1
57 5 2 53 5 4 5 5 5 6
5F 5 8 59 5 A 5 B 5 C 5D 5E
67 6 0 6 1 6 2 6 3 6 4 6 5 66
6F 6 8 6 9 6A 6B 6 C 6D 6E
77 70 71 7 2 73 7 4 7 5 76
7F 7 8 7 9 7 A 7B 7 C 7 D 7 E
87 8 0 8 1 8 2 8 3 8 4 8 5 86
8 F 8 8 8 9 8 A 8 B 8 C 8 D 8 E
97 90 9 1 9 2 93 94 9 5 9 6
9F 9 8 9 9 9 A 9 B 9 C 9D 9 E
A7 A O A 1 A 2 A 3 A 4 A 5 A 6
AF A8 A9 A A A B A C AD A E
B 7 B0 B 1 B2 B3 B 4 B 5 B6
BF B 8 B 9 B A BB B C B D B E
C 7 C 0 C 1 C 2 C 3 C 4 C 5 C6
CF C8 C 9 C A CB C C CD C E
D7 D0 D 1 D2 D 3 D 4 D 5 D6
DF D 8 D 9 DA D B D C D D D E
E7 E0 E 1 E 2 E 3 E 4 E5 E6
EF E 8 E 9 EA E B E C E D E E
F7 F 0 F 1 F2 F 3 F4 F5 F 6
FF F 8 F 9 FA F B FC F D F E
56 5 6
5E 5 E
66 6 6
6E 6 E
76 7 6
7E 7 E
8 6 8 6
8E 8 E 9 6 9 6
9 E 9 E
A6 A 6
AE A E
B6 B 6
BE BE
C6 C 6
CE CE
D 6 D 6
D E DE
E 6 E6
E E EE F 6 F 6
FE F E
ビ ッ ト 操 作 グ ル ー プ
ブロック転送命令
レ ジ ス タ 間 接
デ ィ ス テ ィ ネ ー シ ョ ン
( H L )
( D E )
E D A 0
B 0
A 8
B 8
H L は ソ ー ス の ポ イ ン タ 。
D E は デ ィ ス テ ィ ネ ー シ ョ ン の ポ イ ン タ 。 B C は バ イ ト カ ウ ン タ 。
ʼ L D I ʼ_ L o a d ( D E ) ← ( H L ) I n c H L & D E , D e c B C
ʼ L D I R ʼ_ L o a d ( D E ) ← ( H L )
I n c H L & D E , D e c B C , R e p e a t u n t i l B C = 0
ʼ L D D ʼ_ L o a d ( D E ) ← ( H L ) D e c H L & D E , D e c B C
ʼ L D D R ʼ_ L o a d ( D E ) ← ( H L )
D e c H L & D E , D e c B C , R e p e a t u n t i l B C = 0
E D
E D
E D
レ ジ ス タ 間 接
ソ ー ス
ブ ロ ッ ク 転 送 グ ル ー プ
ロ ケ ー シ ョ ン
ローテートとシフト命令
ソ ー ス お よ び デ ィ ス テ ィ ネ ー シ ョ ン
ロ ー テ イ ト あ る い は シ フ ト の 型
ロ ー テ イ ト と シ フ ト
A B C D E H L ( H L )
( I X + d )
( I Y + d ) ʼ R L C ʼ
ʼ R R C ʼ
ʼ R R ʼ ʼ R L ʼ
ʼ S L A ʼ
ʼ S R A ʼ
ʼ S R L ʼ
ʼ R L D ʼ
ʼ R R D ʼ C B
C B
C B
C B
C B
C B
C B
C B C B C B C B C B C B C B
C B C B C B C B C B C B C B
C B C B C B C B C B C B C B
C B C B C B C B C B C B C B C B C B C B C B C B C B C B
C B C B C B C B C B C B C B
C B C B C B C B C B C B C B
0 7 0 0 0 1 0 2 0 3 0 4 0 5 0 6 C B C B C B C B
C B
C B
C B C B
C B C B
C B
C B C B
C B D D F D
d D D
D D
D D
D D
D D D D
F D
F D
F D
F D F D F D d
d
d
d
d
d 0 F 0 8 0 9 0 A 0 B 0 C 0 D 0 E
1 7 1 0 1 1 1 2 1 3 1 4 1 5 1 6
1 F 1 8 1 9 1 A 1 B 1 C 1 D 1 E
2 7 2 0 2 1 2 2 2 3 2 4 2 5 2 6
2 F 2 8 2 9 2 A 2 B 2 C 2 D 2 E
3 F 3 8 3 9 3 A 3 B 3 C 3 D 3 E 3 E 3 E 2 E 2 E 2 6 2 6 1 E 1 E 1 6 1 6 0 E 0 E 0 6 d 0 6
d
d
d d
d
d E D
E D 6 7
6 F
A R L C A
R R C A
R L A
R R A 0 7
0 F
1 7
1 F
左 ロ ー テ イ ト ・ サ ー キ ュ ラ
b 7 b 0
C Y
C Y
右 ロ ー テ イ ト ・ サ ー キ ュ ラ
左 ロ ー テ イ ト
右 ロ ー テ イ ト
算 術 的 左 シ フ ト
算 術 的 右 シ フ ト
論 理 的 右 シ フ ト 0
0
左 ロ ー テ イ ト
右 ロ ー テ イ ト
b 3 b 0 b 3b 0b 3b 0
A C C
( H L )デ ジ ッ ト
A C C
( H L ) デ ジ ッ ト