十进制负数转化成二进制?

怎么转???? 1111111111110010 为什么是-14(我在书上看到的,不明白啊。。。)????????????负数如何转化成二进制(除以2??)??? 例如-38 -45????除以2???-14除以2怎么是1111111111110010啊(怎么除的??)????? 正数14转成二进制是01110 可负数-14怎么就成了1111111111110010了。。。。。这也忒大了点吧????详细点解释啊。。。我只要十进制负数如何转化成二进制解释,其它的都不要!!!

负数的补码:符号位变为一,数值位取反加一,符号位是二进制数的第一位,其余为均为数值位具体实例分析:十进制负数转化成二进制:先把十进制负数取正,然后用二进制表示出来,因此-14先表示成01110,第一位是符号位0,变为1,数值位取反变为0001,再加1变为0010,因而-14补码就是10010,至于你题目中为什么-14补码为1111111111110010,其实不是什么大小的问题,你分析这个数,第一位还是符号位,为1,然后之后的也全是数值位,至于你说得为什么这么多1,在0010前面增加了27个1,是因为:机器中一般整型数是两个字节,也就是用32比特位来存储的,二进制表示14的话要在00010的数值位0010前面补27个0凑够31位,再加上一位符号位不就是32位了么,这种情况下补码不就是-14的数值位0010前面增加27个1么,因为这31个位全部要参与取反加1运算!说了这么多,够详细吧。你应该明白点了吧,别太着急,呵呵
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-09-26
这是用八位补码表示的,最高位表示为符号位,0代表是正数,1代表负数
-59为负数所以最高位是1
59D=111011B
所以-59D=1011 1011
反码就是将除符号位外取反
所以反码为:1100 0100
补码就是反码加1
所以反码为:1100 0101
如果已知补码求原码只需将补码再求补码就得到原码
例如已知补码
1100 0101
首先最高位为1所以为负数
反码为:1011 1010
原码为:1011 1011=-59
用补码表示时将二进制的减法运算变成加法运算,方便计算机处理数据
例如:8-5用补码表示
1000(8)
+ 1011(-5)
0011=3D
第2个回答  2013-10-20
负数是先取反后加一的哦..也就是先求反码再求补码的..
相似回答