正数的补码是其本身 但这个正数也可能是负数的补码 正数岂不是存在有两个的补码

1个回答

  • 首先,所谓“正数”、“负数”(以及零)所指的都是一个数字本身的值,和编码方式、书写方式、存储方式都是无关的——编码当然不会改变原数的数值大小了.所以,你所谓的“这个正数也可能是负数的补码”的情况是不可能存在的.

    当然,你不会不明白这一点,只不过是说法有点问题.我想你的意思是这样的:

    1)一个正数,其补码的形式就是其“原码”的形式本身;

    2)一个“有着正数的‘原码(或补码)’形式”的编码——即符号位为 0 的一个编码,可能是一个负数的“补码”;

    如果是这样,那请记住:根据补码的定义,任何负数的补码,其符号位都只能是 1,不可能是 0.所以,还是不会出现你所担心的问题.