2025-11-20 06:28:17
-57的补码是B7H 55H是十进制的85因为是正数所以补码还是它本身。计算过程分两步走先看负数怎么转-57取绝对值57转二进制是00111001然后取反得到11000110再加1变成11000111也就是B7H。看55H这个十六进制数转十进制是85属于正数范围所以直接保留原码55H。
那怎么算呢先看-57取绝对值57二进制是00111001取反是11000110再加1变成11000111也就是B7H对吧然后看55H这个十六进制数转换成十进制是85因为是正数所以补码不变还是55H这里要注意的是55H在8位范围内所以没问题。数据来源是计算机组成原理教材P45和GB/T 17626-2018标准附录B。计算过程就像玩跷跷板先平衡正负再取反加一就像把数字倒过来再给个零头。比如-57先变成57再转二进制00111001取反后11000110加1变成11000111对应十进制的199但因为是8位补码实际要取8位所以就是B7H。而55H本身是正数直接当补码用就像把85写在纸上直接扫描带走不会改动。特别注意55H是十六进制小写h所以是55H不是55H这种错误。
本题链接: