Z80 CPU中的主要指令

表1 - Z80 CPU的主要指令
指令的种类 助记符 功能
运算指令
ADD  A,num
把数值num加到寄存器A的值上
ADD  A,reg
把寄存器reg的值加到寄存器A的值上
SUB  num
从寄存器A的值中减去数值num
SUB  reg
从寄存器A的值中减去寄存器reg的值
INC  reg
将寄存器reg的值加1
DEC  reg
将寄存器reg的值减1
AND  num
计算寄存器A的值和数值num的逻辑积
AND  reg
计算寄存器A的值和寄存器reg的值得逻辑积
OR   num
计算寄存器A的值和数值num的逻辑和
OR   reg
计算寄存器A的值和寄存器reg的值的逻辑和
XOR  num
计算寄存器A的值和数值num的逻辑异或
XOR  reg
计算寄存器A的值和寄存器reg的值的逻辑异或
SLA  reg
对寄存器reg的值进行算数左移运算
SRA  reg
对寄存器reg的值进行算术右移运算
SRL  reg
对寄存器reg的值进行逻辑右移运算
CP   num
比较寄存器A的值和数值num的大小
CP   reg
比较寄存器A的值和寄存器reg的值的大小
内存与CPU之间的输入输出指令
LD   reg,num
把数值num写入到寄存器reg中
LD   reg1,reg2
把寄存器reg2的值写入到寄存器reg1中
LD   (num),reg
把寄存器reg的值写入到地址num上
LD   (reg1),reg2
把寄存器reg2的值写入到存放在寄存器reg1中的地址上
PUSH reg
把寄存器reg的值写入到栈中
POP  reg
把由栈顶读出的数据存放到寄存器reg中
I/O与CPU之间的输入输出指令
IN   A,(num)
从地址num中读出数据,存放到寄存器A中
IN   reg,(C)
从存储在寄存器C中地址上读出数据,存放到寄存器reg中
OUT  (num),A
把寄存器A的值写入到地址num中
OUT  (C),reg
把寄存器reg的值写入到存储在寄存器C中的地址上
程序流程控制指令
JP   num
使程序的流程跳转到地址num上,接下来从那个地址上的指令开始执行
CALL num
调用存放在地址num上的子例程
RET
从子例程中返回
HALT
中止CPU的运行
表2 - Z80 CPU的寄存器
Z80 CPU
A F
B C
D E
H L
I R
IX
IY
SP
PC

你可能感兴趣的:(Z80 CPU中的主要指令)