|
|
|
命令セットの表記法 |
アドレッシングモード |
命令セットを表記するにあたり、以下の記号を使用します。 |
|
|
|
|
|
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 |
|
|
|
|
|
|