算术运算与逻辑运算指令注意

本文详细解析了微处理器指令中关于进位和借位的操作,包括ADD和ADDC指令的进位处理、DA调整的条件、SUBB指令的借位规则以及DEC指令的影响。还介绍了MUL和DIV指令对标志位的影响,特别是OV标志在溢出和除以零情况下的设置。这些内容对于理解微处理器内部运算和错误检测至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 对于ADD、ADDC指令的进位问题:
    • (1)如果位7有进位,则Cy置1,否则Cy清0。
    • (2)如果位3有进位,则Ac置1,否则Ac清0。
    • (3)OV=位6进位⊕位7进位。
    • 注意:位6和位7同时有进位,所以OV=0。
    • 只有带符号数运算,OV标志才有意义。
    • OV=1,表示运算结果超过有效范围(-128~+127),运算结果是错误的。
  • 对于DA调整问题:
    • ① 累加器低4位大于9或辅助进位Ac=1,则加06H修正。
    • ② 累加器高4位大于9或进位Cy=1,则加60H修正。
  • 对于SUBB指令借位问题:
    • 如果位7需借位则Cy置1,否则Cy清0;
    • 如果位3需借位则Ac置1,否则Ac清0;
    • OV=位6借位⊕位7借位。
  • 对于DEC指令:
    • 不影响标志位(P标志除外)。
  • 整数乘除指令标志位影响问题:
    • 对于MUL指令,如果积>255,则OV置1,否则OV清0。Cy标志总是清0。
    • 对于DIV指令,Cy和OV清0。如果B=0(即除数为0),则OV置1。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

杨丙寅

好文要赞

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

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

打赏作者

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

抵扣说明:

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

余额充值