24小时热门版块排行榜    

查看: 2080  |  回复: 14
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

晴间多云

木虫 (正式写手)

[求助] 开头为1的二进制数如何转换为十进制数 已有2人参与

例如:11101011 ,书上说首位是零的话,说明是一个负整数,是这样吗?
该如何转换为十进制?
回复此楼

» 猜你喜欢

在生活中要学会独立思考和解决一些问题!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

whflw

木虫 (初入文坛)

引用回帖:
14楼: Originally posted by 晴间多云 at 2014-12-17 16:44:18
你看这样算对不?
找到方法了:
(1 1101011)二进制 ,最高位为1,可以确定这是一个负数,最高位为符号位,其他位为数值位,符号位不变,数值位逐个取反得:1 0010100 ,然后加1得:1 0010101 ,再将其按权展开后 ...

上面的说法是对的,有一个数是例外的,也就是80H,也就是-128,这个数是需要将符号位也作为数值位的,这个记住了就可以了
15楼2014-12-18 08:57:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 15 个回答

Leodom

新虫 (初入文坛)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
晴间多云: 金币+10, ★★★很有帮助, 回答的很详细 2014-12-15 23:14:42
整数二进制转换为十进制:
首先将二进制数补齐位数,首位如果是0就代表是正整数,如果首位是1则代表是负整数。
 先看首位是0的正整数,补齐位数以后,将二进制中的位数分别将下边对应的值相乘,然后相加得到的就为十进制,比如1010转换为十进制为10
若二进制补足位数后首位为1时,就需要先取反再换算:例如,11101011,首位为1,那么就先取反吧:-00010100,然后算一下10100对应的十进制为20,所以对应的十进制为-20。

[ 发自小木虫客户端 ]
2楼2014-12-15 22:32:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

晴间多云

木虫 (正式写手)

引用回帖:
2楼: Originally posted by Leodom at 2014-12-15 22:32:48
整数二进制转换为十进制:
首先将二进制数补齐位数,首位如果是0就代表是正整数,如果首位是1则代表是负整数。
 先看首位是0的正整数,补齐位数以后,将二进制中的位数分别将下边对应的值相乘,然后相加得到 ...

但是反过来算呢?把-20转换成二进制呢?好像是11101100
这个是我用笔记本上的计算器算的:
开头为1的二进制数如何转换为十进制数
1.png


开头为1的二进制数如何转换为十进制数-1
2.png

在生活中要学会独立思考和解决一些问题!
3楼2014-12-15 23:17:24
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

晴间多云

木虫 (正式写手)

引用回帖:
2楼: Originally posted by Leodom at 2014-12-15 22:32:48
整数二进制转换为十进制:
首先将二进制数补齐位数,首位如果是0就代表是正整数,如果首位是1则代表是负整数。
 先看首位是0的正整数,补齐位数以后,将二进制中的位数分别将下边对应的值相乘,然后相加得到 ...

为什么反过来算结果不一样呢?
在生活中要学会独立思考和解决一些问题!
4楼2014-12-15 23:18:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见