(急)一个16位带符号整数,如果它的十六进制表示是(FFF0)16,那么它的实际数值是 —16。 为什么啊 ??

2025-05-24 21:56:55
推荐回答(4个)
回答1:

机内的有符号数最高位为1时是负数的补码,可用“符号位不变,其余位‘取反+1’”求得真值:1653FFF0写成二进制是1111111111110000。

取反:1000000000001111,+1:100000000010000——最后这个数是-16的原码。所以FFF0(16)=-16(10)。

扩展资料

求负整数的补码,将其原码除符号位外的所有位取反(0变1,1变0,符号位为1不变)后加1。

同一个数字在不同的补码表示形式中是不同的。比如-15的补码,在8位二进制中是11110001,然而在16位二进制补码表示中,就是1111111111110001。以下都使用8位2进制来表示。

例:求-5的补码。

-5对应带符合位负数5(10000101)→除符号位外所有位取反(11111010)→加00000001(11111011)

所以-5的补码是11111011。

回答2:

机内的有符号数最高位为1时是负数的补码,可用“符号位不变,其余位‘取反+1’”来求得真值:FFF0写成二进制是1111111111110000,取反:1000000000001111,+1:100000000010000——最后这个数是-16的原码。所以FFF0(16)=-16(10)。

回答3:

-16 的补码,写成 16 进制,就是 FFF0。

回答4:

我觉得还有一个知识点,现在计算器内都是用补码表示原码,所以有一个取反加一的过程,知道这个知识点基本都能做对吧