负数的补码之间进行加发运算,按照计算机的计算模式,符号位由于1加1,反而变成0了,结果肯定是正数,
答案:2 悬赏:20 手机版
解决时间 2021-12-31 14:13
- 提问者网友:沦陷
- 2021-12-30 17:54
负数的补码之间进行加发运算,按照计算机的计算模式,符号位由于1加1,反而变成0了,结果肯定是正数,显然不对,我哪里理解不对呢
最佳答案
- 五星知识达人网友:孤老序
- 2021-12-30 18:07
当两个负数相加,结果却是正数,这种现象,就是溢出。
当两个正数相加,结果却是负数,这种现象,就是溢出。
正减去负,得出负数,也是溢出。
负减去正,得出正数,也是溢出。
加减法的溢出,一共就有这四种。
溢出后,结果不可用。
如果是在 CPU 中计算,溢出时,OF 会自动置一,说明结果不可用了。
当两个正数相加,结果却是负数,这种现象,就是溢出。
正减去负,得出负数,也是溢出。
负减去正,得出正数,也是溢出。
加减法的溢出,一共就有这四种。
溢出后,结果不可用。
如果是在 CPU 中计算,溢出时,OF 会自动置一,说明结果不可用了。
全部回答
- 1楼网友:行路难
- 2021-12-30 18:44
这个数是负数。并且是-128.比如,用对于8位有符号数,7位表示数据位,第8位是符号位的话,它能表示的有符号十进制数范围是-128-127. 特别提醒一点,对于表示的最小的数,也就是最小的负数,比如这里的-128,它的数据位是全为0,而0值的八位表示是8个0。并且,对于正数,也就是最高位是0,补码就是原码;而对于负数,也就是符号位是1,补码是其原码的数据位取反后加1,这个情况要除了最下的负数,也就是这里的1000 0000,它的补码就是它本身。(只需要明白这几点对于处理计算就可以了,实际为什么对于最小的负数会特别说明,其实就是我们通常说的下溢出问题,大概说来就是位数不够,实际已经最小了,可是位数只有这么多,所以,表示其实就是这样,细致的话看看computer calculation,里面有关于一些原码,等各种码的讨论,很细致)
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯