十进制负数转换成二进制数

 我来答
捷嘉泽夕琦
2019-03-22 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:35%
帮助的人:920万
展开全部
数制转换(用8bit整数说明):
十进制转二进制:
正数直接转

55
=
0011
0111b
负数:绝对值转换成二进制,按位取反,加1,
如-55,先把55转换成0011
0111b,取反:
1100
1000b
加1:1100
1001b
逆问题,二进制转十进制,要弄清楚是多少位的,不足的部分要在前面把0补上。
首先看首位是0还是1,
0表示正数,1表示负数。正数直接转,负数,先减一,按位取反,转换十进制,加上负号。
例如
0100
1000
转过来是72
1000
0000
第一位为1
表示是个负数,所以减一,0111
1111,取反1000
0000转换成十进制128,加上负号
-128。
有了二进制,16进制和8进制数都不是问题。
京新荣守时
2019-03-20 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:30%
帮助的人:605万
展开全部
方法如下:
1.
先把数转成正的。然后用除2的方法得到2进制。
2.
把最高位变成1代表负数
3.
按位取反,末尾的那一位加一得到补码
我举个例子来说吧
如(-12)10=(
)8=(
)16
第一步:将-12看成12,转换成二进制
0000
0000
0000
1100
第二步:取反加一,为-12
1111
1111
1111
0100
第三步:转换成八进制是三位一结合:(177764)8
转换成十六进制是四位一结合:(fff4)16
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
达耘涛禽婕
2019-08-19 · TA获得超过3万个赞
知道大有可为答主
回答量:1.1万
采纳率:33%
帮助的人:893万
展开全部
这个应该是对补码进行操作吧?假如5个bit来表示一个数
可以这么证明:负数全部取反与原补码的和为11111,如果把00001与11111相加,就得到了00000,这说明这个操作最后求出来的数是正确的。
再考虑先减1再取反是一个逆操作也是正确的
其实就和-(+a)和+(-a)一个道理
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
沙里波特
2021-04-01 · TA获得超过5251个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:639万
展开全部
进制转换,仅仅是把绝对值做“进制转换”。
正负号,不可变动。
 
如:-617(十进制)
 =-10 0110 1001(二进制)
 =-1151(八进制)
 =-269(十六进制)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式