Z800 CPU の全貌 8ページ
命令セット(つづき)
ビット操作およびローテート&シフトグループ フラグ
   命令  アドレッシングモード     処理
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
page 8