【计算机组成原理】关于ALU在SUB命令时,CF的判断

例题:
19.减法指令 “sub R1, R2, R3”的功能为 “(R1)-( R2)→ R3 ”,该指令执行后将生成进位 /借位标志 CF 和溢出标志 OF。若( R1)= FFFF FFFFH ,(R2) = FFFF FFF0H ,则该减法指令执行后, CF 与 OF 分别为(A)
A. CF=0, OF=0   B. CF=1, OF=0
C. CF=0, OF=1   D. CF=1, OF=1

在加法运算时,CF=C⊕0,减法运算时CF=C⊕1,
加法器的结构如下图所示,在获取到命令为减法时,多路选择器会选择1作为输出,并与Cin进行异或后输出

这是为了平衡补码运算时将减数替换为补码做加法的措施,如果AX-BX减的开,那么在计算机中就会替换为AX+(-BX)补码,会发生借位(进位),而如果AX-BX减不开,那么计算机替换为AX+(-BX)的补码会变为负数(假设为正数,负数逻辑类似),不会借位

例如一位符号位三位数据位
6-3 = 3 即 0110 + 1101 = 1 0011,发生进位(实际不该进)
3-6 = -3 即 0011 + 1010 = 0 1101,未发生进位(实际该进)

在这里插入图片描述

  • 11
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值