早教吧 育儿知识 作业答案 考试题库 百科 知识分享

关于C语言补码的问题比如说一个十进制的数是255,那他存在8位当中的就应该是11111111,这个对吧?但是最高位是1了啊,不是说最高位是1的就是负数吗?这个到底是怎么回事?如果是出现1111

题目详情
关于C语言补码的问题比如说一个十进制的数是255,那他存在8位当中的就应该是11111111,这个对吧?但是最高位是1了啊,不是说最高位是1的就是负数吗?这个到底是怎么回事?如果是出现11111111到底应该翻译成-1还是255啊。如果是-1的话,那么255是怎么样放到储存单元的啊?请用通俗点的语言解释······最好能在举几个例子。谢谢了啊
▼优质解答
答案和解析
8位补码表示 00000000零 00000001~01111111正数1~127 10000000~11111111负数-128~-1 所以可以看到8位二进制数表示的范围是-128~127