Z800 CPU の全貌 6ページ
命令セット
命令セットの表記法
アドレッシングモード
 命令セットを表記するにあたり、以下の記号を使用します。
BX Base Index
DA Direct Address (直接アドレス)
IM Immediate Constant (直値)
IR Indirect Register (レジスタ間接)
X Index
R Single register of the set (A, B ,C, D, E, H, L)
RA Relative address (相対アドレス)
RX A byte in the IX or IY register (IX・IYレジスタ中のバイト)
SP Current Stack Pointer
SR Stack Relative (スタックポインタ相対)
SX Short Index
n 8-bit constant (8ビット定数)
nn 16-bit constant (16ビット定数)
シンボル
 同様に以下のシンボルを使用します。
dst Destination location or contents
src Source location or contents
n An 8-bit constant
nn A 16-bit constant
SP Current Stack Pointer
p Interrupt mode
(c) IO port pointed to by C register
SSP System Stack Pointer
USP User Stack Pointer

 値の割当は""という記号によって表されます。例えば、

      dst dst + src

として、ソースデータがディスティネーションデータに加えられ、結果がディスティネーションロケーションにストアされることを表します。"addr(n)"という表記法は、与えられたロケーションの"n"ビットを参照することを表します。例えば、

      dst(7)

として、ディスティネーションのビット7を表します。

フラグ
 Fレジスタは以下の6つのフラグで構成されています。
Carry flag
Half carry flag
Add/Subtract flag
Parity/Overflow flag
Sign flag
Zero flag
コンディションコード
 以下の記号はコンディションコードを表しています。
Z Zero
NZ Not zero
C Carry
NC No carry
S Sign
NS No sign
V Overflow
PE Parity even
PO Parity odd
P Positive
M Minus
命令セット一覧
8ビットロードグループ フラグ
   命令  アドレッシングモード     処理
EX A , src src = R, RX, IR, DA, X,
 SX, RA, SR, BX
Exchange Accumlator
Asrc
EX H , L Exchange H , L
HL
LD dst , src src =
dst =

or
src =

dst =
A
R, RX, IR, DA, X, SX,
 RA, SR, BX, (BC), (DE)

R, RX, IM, IR, DA, X, SX,
 RA, SR, BX, (BC), (DE)
A
Load Accumlator
dstsrc
LD dst , src dst = R Load Register (BYTE)
dstsrc
src = R, RX, IM, IR, SX
or
dst = R, RX, IR, SX
src = R
LD dst , n dst = R, RX, IR, DA, X, SX,
 RA, SR, BX
Load Immediate (BYTE)
dstn
LDUD dst , src dst =
src =
or
dst =
src =
A
IR or SR in user space

IR or SR in user space
A
Load in User Data Space(Byte)
dstsrc
LDUP dst , src dst =
src =
or
dst =
src =
A
IR or SX in user space

IR or SX in user space
A
Load in User Program Space(Byte)
dstsrc
16ビットロードグループ フラグ
   命令  アドレッシングモード     処理
EX src , HL src = DE, IX, IY Exchange HL with
Addressing Register

srcHL
EX (SP) , dst dst = HL, IX, IY Exchange Addressing Register
with Top of Stack

(SP)dst
EX AF , AF' Exchange Accumulator/Flag
with Alternate Bank

AFAF'
EXX Exchange Byte/Word Registers
with Alternate Bank

BCBC'
DEDE'
HLHL'
LD[W] dst , src dst =
src =
or
dst =
src =
HL, IX, IY
IM, DA, X, RA, SR, BX

DA, X, RA, SR, BX
HL, IX, IY
Load Addressing Register
dstsrc
LD[W] dst , src dst =
src =
or
dst =
src =
BC, DE, HL, SP
IM, IR, DA, SX

IR, DA, SX
BC, DE, HL, SP
Load Register Word
dstsrc
LD[W] dst , nn dst = RR, IR, DA, RA Load Immediate Word
dstnn
LD[W] dst , src dst =
src =
or
dst =
src =
SP
HL, IX, IY, IM, IR

IR, DA, SX
SP
Load Stack Pointer
dstsrc
LDA dst , src dst =
src =
HL, IX, IY
X, RA, SR, BX
Load Address
dstsrc(address)
POP dst dst = RR, IR, DA, RA Pop
dst(SP)
SPSP + 2
PUSH src src = RR, IM, IR, DA, RA Push
SPSP - 2
(SP)src
page 6