补码表示的二进制整数01101101的反码和原码是?

2025-03-19 01:18:18
推荐回答(3个)
回答1:

8位二进制补码01101101就是整数+109,变号操作之后变成-109,而-109的8位二进制补码为10010011。

原码表示:将符号位数码化了的数,其中“+”用0表示,“-”用1表示。
反码表示:正数的反码表示与原码表示一样;负数的反码表示是原码表示的符号位不变,数值位逐位取反。
补码表示:正数的补码表示与原码表示一样;负数的补码表示是原码表示的符号位不变,数值位逐位取反后最低位加1(反码表示最低位加1)。

回答2:

你先要搞清楚“变号操作”是咋回事儿才行。所谓变号操作就是将正数变成绝对值相等的那个负数,而将负数变成绝对值相等的正数。
8位二进制补码01101101就是整数+109,变号操作之后变成-109,而-109的8位二进制补码为10010011,因此应当选C。

回答3:

所谓的“变号操作”,就是数学里面的《求相反的数》。

在纸上写,就是在原数前面,添上一个负号。

在计算机里面,原数如果是补码,那么,连同符号位一起都《求反加一》,
即可得到《与原数相反的数》的补码。

0110 1101 >>>>>>>1001 0010 + 1 = 1001 0011。
>>>>>>>>全部求反加一>>>

这方法简便且正确,不用管它原来是正是负,更不用涉及到原码、反码以及真值。

在计算机语言中,NEG 指令,就是求《与原数相反的数》的指令。
它的实际操作,就是:连同符号位一起都《求反加一》。