2025-11-18 06:05:01
0x9f减去0xfd等于-94(十六进制0x9C)。就像温度计从99度降到253度会差-154度,这里直接用数值相减就行。先算十进制更直观,0x9f是159,0xfd是253,159-253就是-94。再转回十六进制就是0x9C,不过通常用负数表示更清楚。
为什么这样算呢?先看高位字节,0x0减0x0还是0。然后低位9减D(13),不够减就要借位。借位后变成19-13=6,但高位借了1,所以高位变成8-15=-7。这时候要处理负数,用补码转换。-7的补码是25(十六进制0x19),所以结果其实是0x19C,但这里直接算十进制差值更简单。数据转换时容易出错,比如把0x9f写成0x9E,或者把减法顺序搞反,所以得仔细核对每一步。
本题链接: