二进制代码表示数的大小和正负

来源:百度知道 编辑:UC知道 时间:2024/06/04 05:47:13
例如+5 用二进制代码表示为0 101
-5 用二进制代码表示为1 101
我现在疑惑的是符号和大小的表示间间隔了一个空格,在计算机里面也是有空格的吗?如果没有空格的话,那1101是理解成-5,还是13呢?
而且A用二进制代码表示成为01000001,最高位的0是符号吗?

对01码的解读需要考虑具体数据类型。
比如:常数+5,在计算机里数据类型为32位整型时,应该表示为0000000000000101(注意中间是没有空格的);当然如果数据类型为8位字符型的时,则表示为00000101。同理常数-5,用32位整型表示时,则为1111111111111011;用8位表示时,则为11111011。(注意-5的后面四位为1011)
反过来,如果只拿出一个1011来,则理解为十进制常数11。如果A=01000001,那么应该考虑A的数据类型,如果A是有符号8位字符型,那么最高位0是符号位;如果A是无符号8位字符型,那么最高位0就不是符号位。相应的A如果等于11000001,那么A的类型有无符号其对应的十进制值是不同的。

最高位就是符号位