从《装配艺术》一书中,我复制了这句话:
在二进制补码系统中,数字的 HO 位是符号位。如果HO位为零,则为正数;如果 HO 位为 1,则该数为负数。例子:
对于 16 位数字:
8000h
为负,因为 HO 位为 1。
100h
为正,因为 HO 位为零。
7FFFh
是积极的。
0FFFFh
是负数。
0FFFh
是积极的。
我不明白最后两个例子。如果将这两个示例转换为二进制,则会得到0000 1111 1111 1111 1111
第一个和0000 1111 1111 1111
第二个。为什么前者为负,后者为正?在我看来,两者的最高位都是 0,因此两者都应该是正数。