十进制数 $114$ 的相反数的 $8$ 位二进制补码是:
这题别急着转进制,先盯着'相反数'和'8位'两个词。相反数就是变号,8位补码里,正数原码=补码,负数补码是'符号位不动,其余取反加1'。所以直接想:114变负数,再按这个规则算,瞬间就能锁定答案。
最容易栽跟头的地方是:把'相反数'理解成'取反'(按位取反~),或者忘记补码定义里'符号位不参与取反'。还有,很多人会先转成二进制01110010,然后直接加1得到01110011,这是把负数的补码算法套用在正数上了,完全跑偏。另外,8位补码表示范围是-128到127,114的相反数-114在这个范围内,不会溢出,但如果你记成-128到128或者搞错位数,就会选错。
这道题考查的是补码表示法与十进制负数的转换,核心在于理解'相反数'在计算机里的存储规则。命题人喜欢挖的坑就是让人混淆'按位取反'和'补码求负',或者忽略'8位'这个限制。拿到题先想:求114的相反数,就是求-114。在8位补码系统里,正数的补码等于原码,而负数的补码等于'符号位不变,其余位取反,再加1'。所以步骤很清晰:先把114写成8位二进制。114 = 64+32+16+2 = 01110010。然后求它的相反数补码:符号位0保持不变,后面7位取反变成10001101,再加1,得到10001110。这就是答案A。这里的关键是记住负数补码的两个动作:取反、加1,而且顺序不能乱。避坑指南:千万别把114直接取反(~114)当成结果,那会得到00000001(8位截断),完全不对;也别在取反后忘了加1,那样会得到00000000,对应的是-0,在补码里不存在。考频趋势方面,补码概念在CSP-J/S近年出现频率稳定,2020年前后出现过单题直接考负数补码表示,属于基础必考点。预测:未来考题可能会结合移位运算或位运算表达式来间接考查补码性质,比如给出一个位运算式子让你判断结果对应的十进制负数,但核心依然是补码规则。