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
AF
BC
DE
HL
IR
IX
IY
SP
PC
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Story51314

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值