假定某台计算机的机器数占16位,写出十进制数32769和-32769的原码、反码和补码?

发布网友

我来回答

3个回答

热心网友

32769 的二进制码为 01000000000000001 是十七位(第一位表示符号)
机器只有16位,最高位,会溢出,就变成了1000000000000001
第1位表示正负 (1负,0正)
1000000000000001 (32769)会被当做负数处理
负数的源码: 绝对值,再最高位补1 就是 1000000000000001
负数的反码:除符号位全部取反 就是 1111111111111110

负数的补码:反码+1 就是 1111111111111111
-32769是一样的,符号位溢出了,和上面一样

热心网友

16位数,如果带符号的话,那可以表达的数是-32768到32767之间,32769这个数在转换过程中会溢出。

热心网友

假定某台计算机的机器数占 16 位,

--早期,八位计算机,也能使用 16 位的操作数。

--某一个数较大,一次算不完,就多算几遍。

--就是说:计算机的机器数,有多少位,无关紧要。

--关键是:你的内存,有多大!

--

写出十进制数 32769 和-32769 的原码、反码和补码?

--这俩数,已经超出 16 位数的表示范围了。

--必须用 32 的操作数来表示。

--那么,你自己,就应该可以解决了。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com