二进制补码运算溢出判断

二进制补码运算溢出判断只有一个选项正确,第一题我觉得好像A和D都可能溢出。。求解释... 二进制补码运算溢出判断只有一个选项正确,第一题我觉得好像A和D都可能溢出。。求解释 展开
 我来答
娱乐小八卦啊a
高粉答主

2020-01-19 · 娱乐小八卦,天天都知道
娱乐小八卦啊a
采纳数:256 获赞数:117860

向TA提问 私信TA
展开全部

补码运算的溢出判别方式为双高位判别法,利用Cs表示符号位是否进位,利用Cp表示最高数值位是否进位。如果Cs ^ Cp的结果为真,则代表发生了溢出(运算结果大于0则为负溢出,小于0则为正溢出),否则运算结果正确。

例如:

 1000 0011(补码为-3,原码为-125)        0000 0011(补码为3,原码为3)

+1100 1001(补码为-73,原码为-55)      +1100 1001(补码为-73,原码为-55)

10100 1100(补码为76,原码为76)        01100 1100(补码为-76,原码为-52)

Cs为1,Cp为0所以产生了负溢出。            Cs为0,Cp为0所以结果正确。

扩展资料

二进制补码运算规则:

1、正数:原码=反码=补码

2、负数:原码(第一位是1符号位)=反码(除第一位符号位外,其它按位取反)=补码(反码+1)

3、0:原码=反码=补码=0

举例:

1、15-5=15+(-5)=10

原码:

15:0000 1111

-5:1000 0101

反码:

15:0000 1111

-5:1111 1010

补码:

15:0000 1111

-5:1111 1011

参考资料来源:

百度百科——补码

iv...5@mail.ru
2018-02-25 · TA获得超过114个赞
知道小有建树答主
回答量:134
采纳率:66%
帮助的人:20万
展开全部
判断溢出,有三种方法:
1.由人进行计算,并判断:正+正=负、负+负=正、...,这就是溢出。
2.由CPU进行计算,由人观察标志位:OV=1,就是溢出。
3.由CPU进行计算,并给出溢出标志位:C7异或C6,为1,就令OV=1。
楼主问的是那种方法?
追问
我问的是第一种方法,麻烦解释一下哈😁
没问题了,谢谢。我看错选项了。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2022-03-03 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部

发生溢出,是数据过大,超出了补码所能表示的范围。

具体表现,就是:符号位错误。

可能发生溢出的算法有:正数+正数负+负

此外还有:正-负负-正

如果结果的符号,不符合正常的规律,就是溢出了。

CPU 计算后,会自动判断,如果溢出,将置位 OF。

图中的四个选项,只有 (d)B-C,才有可能溢出。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
帐号已注销
2018-02-25
知道答主
回答量:8
采纳率:16%
帮助的人:2.1万
展开全部
B
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式