128 用二进制表示是100000000,对吧.但是正常不是以0开头的吗?

128 用二进制表示是100000000,对吧.但是正常不是以0开头的吗?

在这里128是一个无符号数.而你说那个0和1的区别在是有符号数之间.以0开头表示为正数,以1开头表示为负数,也就是说表示有符号数时第一位数字为符号位.
温馨提示:内容为网友见解,仅供参考
第1个回答  2007-01-01
计算机二进制换算是用16位机的,符号位是在上八位的

128 用二进制表示是100000000,对吧.但是正常不是以0开头的吗?
在这里128是一个无符号数.而你说那个0和1的区别在是有符号数之间.以0开头表示为正数,以1开头表示为负数,也就是说表示有符号数时第一位数字为符号位.

哪位能告诉我128 用二进制表示是100000000,对吧.但是正常不是以0开头的...
128d=10000000b,没有规定非要用0开头呀?

用八位二进制第一位是符号位 怎么表示-128 C语言的char范围
-128用8位二进制表示就是10000000,C语言的char如果是默认或者有符号,就是-128到127,如果是无符号的就是0到255

-128的原码是什么?
对于-128这个数,我们首先确定它是一个负数,所以符号位为1。然后,我们需要表示出128的二进制形式。在8位二进制数中,128的二进制表示为10000000。因此,-128的原码就是将符号位设为1,其余位表示128的二进制形式,即100000000。需要注意的是,原码表示法虽然简单直观,但存在一些缺点。例如,原码表示法...

128的原码反码补码是多少
对于-128,其补码就是10000000。这是因为在补码系统中,负数是通过取其正数的二进制表示(对于-128,其正数不存在于8位二进制范围内,但概念上可视为100000000左移一位后溢出,仅保留低8位),然后取反加一得到的。但在这个特殊情况下,-128的补码直接就是10000000,因为它已经是能表示的最小负数。

-128的二进制补码是怎么得来的?
会被舍弃。0只有一个补码00000000,如果是这样,那么10000000就不会表示成-0的补码 即:补码1000 0000唯一的表示-128,在补码中用(-128)代替了(-0),所以补码的表示范围为: (-128~0~127)共256个.注意:(-128)也有相对应的原码和反码, 它的反码是(11111111)原码仍然是(10000000)(-128)...

计算机中为什么二进制补码10000000可以表示-128?怎么推出来的? 10000000...
将其八位全部取反,得到01111111, 然后加1,得到10000000. 将该数看作无符号数,值为128, 故计算机中的10000000表示的是-128。最高位(即符号位)为1的8位有符号数有128个,故可表示128个负数;最高位为0的8位有符号数有128个,但全0的那个表示数0,所以总共只能表示127个正整数....

...的最小整数为什么是-128,10000000为什么是-128的补码。
只能写一百字,叫我情何以堪~~~有符号的8位二进制只有补码可以表示-128,而原码和反码只能表示-127到+127这个区间内的数,表示不了-128 定义规定:-128的补码是:1000 0000,用常规方法无法计算!

机器数的表示是怎样的?
所以用原码表示负数是不行的。 现在,再来看二进制的补码表示法。00010000 +11111000补码形式-8 --- 100001000 可以看到,按照正常的加法规则,得到的结果是100001000。注意,这是一个9位的二进制数。我们已经假定这是一台8位机,因此最高的第9位是一个溢出位,会被自动舍去。所以,结果就变成了00001000,转成十进制正...

若采用8位二进制补码表示十进制整数-128,则表示形式为
若采用8位二进制补码表示十进制整数-128,则表示形式为 常说的“取反加一”,解决不了这个问题。8 位二进制的原码和反码,表示范围都是:-127 ~+127。必须采用“补码定义式”才能求出-128 的补码。你去算一下吧,正确答案就是:1000 0000。

相似回答