二进制数的正负如何表示?

1 任何数是不是在储存空间里面都是以有符号数存在的?即最高位 1 为负数 0 为正数 对吗? 2 如系统是8位,数字10 1001 系统会自动补足八位是么?也就是按0010 1001 储存对不?

针对第一个问题:对。任何数在内存中都是以补码的形式存在(其中正整数:原码=反码=补码;负整数:原反码=原码(最高位不变,其余按位取反);补码=反码+1)。 针对第二个问题:如果不满八位,系统肯定是补足八位。对于正整数而言,最高位全部填满0.对于负整数而言,按照“原反码=原码(最高位不变,其余按位取反);补码=反码+1”原则发生变化:比如-5的存储: 【因为-5表示是:1000 0101(原码)=>1111 1010(反码)=> 1111 1011(补码,存储的就是这个)】
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-04-09
1,你的两个问题,第一个嘛,比如 1110100 ,占一个字节,可以看作是一个无符号的数,就是228,也可以看作是有符号的数,就是-12。可以看第二个是正确的,负数是以补码形式存储的,结果就是所有负数的最高位为1,但你要注意,一个正数的相反数,绝对不是把最高位的0变成1这么简单,得转换为补码。2,存储的最小单位是字节,当然不能小于8位呢。
第2个回答  推荐于2017-09-25
二进制数左数第一位(即最高位):
用0表示非负数,
用1表示负数,
负数通常不用原码表示,而是用补码来表示原码,
负数原码的补码是原码的符号位不变,其余位按位取反再加1所得

对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的类型有无符号其对应的十进制值是不同的。
第3个回答  2015-06-10
看二进制数左数第一位(即最高位):
用0表示非负数,
用1表示负数,
负数通常不用原码表示,而是用补码来表示原码,
负数原码的补码是原码的符号位不变,其余位按位取反再加1所得。
二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”。
二进制数(binaries)是逢2进位的进位制,0、1是基本算符;计算机运算基础采用二进制。电脑的基础是二进制。在早期设计的常用的进制主要是十进制(因为我们有十个手指,所以十进制是比较合理的选择,用手指可以表示十个数字,0的概念直到很久以后才出现,所以是1-10而不是0-9)。电子计算机出现以后,使用电子管来表示十种状态过于复杂,所以所有的电子计算机中只有两种基本的状态,开和关。也就是说,电子管的两种状态决定了以电子管为基础的电子计算机采用二进制来表示数字和数据。常用的进制还有8进制和16进制,在电脑科学中,经常会用到16进制,而十进制的使用非常少,这是因为16进制和二进制有天然的联系:4个二进制位可以表示从0到15的数字,这刚好是1个16进制位可以表示的数据,也就是说,将二进制转换成16进制只要每4位进行转换就可以了。
第4个回答  2013-04-09
在计算机的数据表示中只定义了正数的表示形式,并没有定义负数的表示形式,所以,负数一般都用补码的形式表示,正数的原码、反码、补码都相同,负数的反码是除符号位为1外,其它位全取反,补码就是"反码+1"。我知道就这么多了,希望能帮到你。

二进制数中正数的反码是什么?
答案:在二进制数的运算中,为了区别数的正负用一位“符号位”表示,符号位数放在这个数的最高位前面,符号位为“0”表示正数,符号位为“1”表示负数。例如数+1011与-1011分别表示为:01011和11011。这种表示称为原码表示法。因此,原码就是保持二进制数原来的形式,再加上符号位的码。如+1001原码是01001,...

二进制数的正负如何表示?
针对第一个问题:对。任何数在内存中都是以补码的形式存在(其中正整数:原码=反码=补码;负整数:原反码=原码(最高位不变,其余按位取反);补码=反码+1)。 针对第二个问题:如果不满八位,系统肯定是补足八位。对于正整数而言,最高位全部填满0.对于负整数而言,按照“原反码=原码(最高位不...

计算机语言二进制数,正负号怎么表示
看二进制数左数第一位(即最高位):用0表示非负数,用1表示负数,负数通常不用原码表示,而是用补码来表示原码,负数原码的补码是原码的符号位不变,其余位按位取反再加1所得 希望我的回答对你有所帮助,祝学习愉快。。

在二进制、八进制、十六进制中正、负用什么表示?
在计算机二进制中正数是一般通过原码表示,而负数通过补码来表示,具体的说,是根据二进制位最高位,是1 表示负数,0 表示正数。没有像十进制那样,有“-”与“+”的标识符。八进制、十六进制是二进制一种转换方式,可以简化书写。

在8位二进制 计算机中,正负数如何表示
第一数 0代表是正 1代表是负 如:00000001表示+1 10000001表示-1

计算机的二进制带符号运算为什么用0表示正数1表示负数
在二进制码中,为了区分正负数,采用最高位是符号位的方法来区分,正数的符号位为0、负数的符号位为1.剩下的就是这个数的绝对值部分,可以采用原码、反码、补码3种形式来表示绝对值部分。原码最简单,也最好理解.原码就是绝对值的二进制数形式:例如+7的8位二进制原码是00000111,-7的8位二进制原码是...

二进制中怎样识别负数
在二进制数里,最高位0表示正数,1表示负数。为了便于加减计算,正负数用补码来表示,正数的补码就是原码;负数的补码是原码的反码再加1。如八位二进制数,它的表示数的范围是:-128到+127。+18 --- 00010010 -18 --- 反码为:11101101 补码为:11101110 ...

二进制可以转化为正负的两个十进制?
在实际应用中,数值数据都有正,负之分。计算机中为了使二进制数具有表示正负的能力,规定其最高位为1时表示负,最高位为0时表示正(二进制最高位不表示数值大小,而是用来表示正负关系)。例如:+5=00000101;-5=10000101

正码反码补码计算原理
正码反码补码是二进制数在计算机中的表示方式,用于表示正负数。正码是正数的二进制表示,例如正数3的正码是00000011。反码是将正数的二进制表示中所有位上的1变为0,0变为1得到的数,例如正数3的反码是11111100。补码是将正数的反码加1得到的数,例如正数3的补码是11111101。对于负数的表示,首位是1...

二进制的正负转换
十进制数,正负数互换,相差的只是个符号。二进制数,正负数互换,则要把全部数码(包括符号位)都求反加1。+5:0101 -5:1010+1 = 1011 -5:1011 +5:0100+1 = 0101

相似回答