|
|
命令セット(つづき) |
|
|
ビット操作およびローテート&シフトグループ |
|
フラグ |
|
|
|
命令 |
アドレッシングモード |
|
|
|
|
|
|
|
|
処理 |
|
|
|
BIT |
b , dst |
dst = |
R, IR, SX |
|
・ |
|
|
・ |
|
・ |
|
Bit Test
ZNOT dst(b) |
|
|
RES |
b , dst |
dst = |
R, IR, SX |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Reset Bit
dst(b)0 |
|
|
RL |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Rotate Left
tmpdst
dst(0)C
Cdst(7)
for n=0 to 6
dst(n + 1)tmp(n)
|
|
|
RLA |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Rotate Left (Accumulator)
tmpA
A(0)C
CA(7)
for n=0 to 6
A(n + 1)tmp(n)
|
|
|
RLC |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Rotate Left Circular
tmpdst
Cdst(7)
dst(0)tmp(7)
for n=0 to 6
dst(n + 1)tmp(n)
|
|
|
RLCA |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Rotate Left Circular
(Accumulator)
tmpdst
Cdst(7)
dst(0)tmp(7)
for n=0 to 6
dst(n + 1)tmp(n)
|
|
|
RLD |
dst |
dst = |
IR |
|
|
|
|
|
|
・ |
|
Rotate Left Digit
tmp(0:3)A(0:3)
A(0:3)dst(4:7)
dst(4:7)dst(0:3)
dst(0:3)tmp(0:3)
|
|
|
RR |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Rotate Right
tmpdst
dst(7)C
Cdst(0)
for n=0 to 6
dst(n)tmp(n + 1)
|
|
|
RRA |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Rotate Right (Accumulator)
tmpA
A(7)C
CA(0)
for n=0 to 6
A(n)tmp(n + 1)
|
|
|
RRC |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Rotate Right Circular
tmpdst
Cdst(0)
dst(7)tmp(0)
for n=0 to 6
dst(n)tmp(n + 1)
|
|
|
RRCA |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Rotate Right Circular
(Accumulator)
tmpA
CA(0)
A(7)tmp(0)
for n=0 to 6
A(n)tmp(n + 1)
|
|
|
RRD |
dst |
dst = |
IR |
|
|
|
|
|
|
・ |
|
Rotate Right Digit
tmp(0:3)A(0:3)
A(0:3)dst(0:3)
dst(0:3)dst(4:7)
dst(4:7)tmp(0:3)
|
|
|
SET |
b , dst |
dst = |
R, IR, SX |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Set Bit
dst(b)1 |
|
|
SLA |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Shift Left Arithmetic
tmpdst
Cdst(7)
dst(0)0
for n=0 to 6
dst(n + 1)tmp(n)
|
|
|
SRA |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Shift Right Arithmetic
tmpdst
Cdst(0)
dst(7)tmp(7)
for n=0 to 6
dst(n)tmp(n + 1)
|
|
|
SRL |
dst |
dst = |
R, IR, SX |
|
|
|
|
|
|
|
|
Shift Right Logical
tmpdst
Cdst(0)
dst(7)0
for n=0 to 6
dst(n)tmp(n + 1)
|
|
|
TEST |
dst |
dst = |
R, IR, SX |
|
|
・ |
・ |
・ |
・ |
・ |
|
Test and Set
sdst(7)
dstFF |
|
|
|
プログラム制御グループ |
|
フラグ |
|
|
|
命令 |
アドレッシングモード |
|
|
|
|
|
|
|
|
処理 |
|
|
|
CALL |
cc , dst |
dst = |
IR, DA, RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Call
条件 cc が成立したら
SPSP - 2
(SP)PC
PCdst |
|
|
CALL |
dst |
dst = |
IR, DA, RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Call
SPSP - 2
(SP)PC
PCdst |
|
|
CCF |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Complement Carry Flag
CNOT C |
|
|
DJNZ |
dst |
dst = |
RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Declement and Jump if Non-Zero
BB - 1
if B≠0 then PCdst |
|
|
JAF |
dst |
dst = |
RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump on Auxiliary
Accumulator/Flag
AFが裏レジスタなら
PCdst |
|
|
JAR |
dst |
dst = |
RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump on Auxiliary
Register File in Use
BC・DE・HLが裏レジスタなら
PCdst |
|
|
JP |
cc , dst |
dst = |
IR, DA, RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump
条件 cc が成立したら
PCdst |
|
|
JP |
dst |
dst = |
IR, DA, RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump
PCdst |
|
|
JR |
cc , dst |
dst = |
RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump Relative
条件 cc* が成立したら
PCPC + dst |
|
|
JR |
dst |
dst = |
RA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Jump Relative
PCPC + dst |
|
|
RET |
|
|
|
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Return
PC(SP)
SPSP - 2 |
|
|
RET |
cc |
|
|
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Return
条件 cc が成立したら
PC(SP)
SPSP - 2 |
|
|
RST |
dst† |
dst = |
DA |
|
・ |
・ |
・ |
・ |
・ |
・ |
|
Restart
SPSP - 2
(SP)PC
PCdst |
|
|
SC |
nn |
|
|
|
・ |
・ |
・ |
・ |
・ |
・ |
|
System Call
SPSP - 4
(SP)PS
SPSP - 2
(SP)nn
PSSystem Call
PSProgram Status |
|
|
SCF |
|
|
|
|
・ |
・ |
|
・ |
|
|
|
Set Carry Flag
C1 |
|
|
|
|
|
|