关于八进制、十六进制(小数部分)转换二进制如何换算?

求提供详细换算方法,不要直接给出像0—000,1—001这种。譬如十六进制0.2转换二进制,为什么是0.001?如果是像十进制转换二进制那种算法的话,这里十六进制的小数部... 求提供详细换算方法,不要直接给出像0—000,1—001这种。

譬如十六进制0.2转换二进制,为什么是0.001?如果是像十进制转换二进制那种算法的话,这里十六进制的小数部分转换排序又是怎么一回事?正序排列?倒序排列?
展开
 我来答
全是菜鸡eO5Lf
高粉答主

2019-11-21 · 关注我不会让你失望
知道小有建树答主
回答量:624
采纳率:100%
帮助的人:13.6万
展开全部

常规的算法就是统统转10进制再转成对应的,只不过整数部分是一直除,小数部分是一直乘。但是对于2、8、16进制之间互相转化不需要这么麻烦,不管是小数还是整数部分,说一个快速转化的方法。

8、16要转成二进制非常容易,只要把每一位都转成二进制整个串起来就行,只不过8进制每一位转3位2进制,16进制每次转4位。

扩展资料

在进行进制转换时有一基本原则:转换后表达的“量”的多少不能发生改变。二进制中的111个苹果和十进制中的7个苹果是一样多的。

十进制中的数位排列是这样的…… 万 千 百 十 个 十分 百分 千分……

R进制中的数位排列是这样的……R^4 R^3R^2 R^1 R^0 R^-1 R^-2 R^-3……

可以看出相邻的数位间相差进制的一次方。

对10进制,从低位到高位,依次要乘以10^0,10^1,10^2,10^3……,也就是1、10、100、1000

对2进制,从低位到高位,依次要乘以2^0,2^1,2^2,2^3……,也就是1、2、4、8、……

参考资料来源:百度百科-进制转换

TableDI
2024-07-18 广告
Excel表格中的计数函数主要用于统计单元格区域中满足特定条件的数值或非空单元格的数量。最常用的计数函数是`COUNT`和`COUNTA`。`COUNT`函数用于统计选定区域内数值型单元格的数量,忽略文本和空单元格。而`COUNTA`函数则... 点击进入详情页
本回答由TableDI提供
discovery522
推荐于2017-09-06 · TA获得超过4714个赞
知道大有可为答主
回答量:2308
采纳率:71%
帮助的人:1494万
展开全部
常规的算法就是统统转10进制再转成对应的,只不过整数部分是一直除,小数部分是一直乘。

但是对于2 8 16进制之间互相转化不需要这么麻烦,不管是小数还是整数部分,说一个快速转化的方法。
8,16要转成二进制非常容易,只要把每一位都转成二进制整个串起来就行,只不过8进制每一位转3位2进制,16进制每次转4位。

举个例子:
12.34,如果是16进制,转2进制如下 每位转4位2进制 0001 0010.0011 0100就是10010.001101。
如果12.34是8进制,类似只是每次是3位的001 010. 011 100就是1010.0111。
你说的十六进制0.2就是0000.0010=0.001。
反过来划分相同位数拼起来就行,这样8 16其实转化也很方便。
比如刚才10010.001101,这次转8进制而不是16进制,重新分段3个一段010 010.001 101=22.15。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wuhansen
推荐于2017-09-03 · TA获得超过4088个赞
知道大有可为答主
回答量:1383
采纳率:50%
帮助的人:1215万
展开全部
常规的算法就是统统转10进制再转成对应的,只不过整数部分是一直除,小数部分是一直乘。

但是对于2 8 16进制之间互相转化不需要这么麻烦,不管是小数还是整数部分,告诉你一个快速转化的方法。
8,16要转成二进制非常容易,只要把每一位都转成二进制整个串起来就行,只不过8进制每一位转3位2进制,16进制每次转4位
举个例子
12.34,如果是16进制,转2进制如下 每位转4位2进制 0001 0010.0011 0100就是10010.001101
如果12.34是8进制,类似只是每次是3位的001 010. 011 100就是1010.0111
你说的十六进制0.2就是0000.0010=0.001
反过来划分相同位数拼起来就行,这样8 16其实转化也很方便
比如刚才10010.001101,这次转8进制而不是16进制,重新分段3个一段010 010.001 101=22.15
追问
我的意思是十六进制0.2转二进制,是不是也是用2除以2,取余数排列?我想知道是正序排列还是倒序排列?而不是你直接给出的答案那种。
追答
我说了如果你要用常规算法,先都转成10进制再算
转10进制都是每位*那个进制的那一位次方,小数部分是负数
1101.0111=>1*2^3+1*2^2+0*2^1+1*2^0+0*2^(-1)+1*2^(-2)+1*2^(-3)+1*2^(-4)

这样

10进制转其他进制小数部分是乘的
如0.4375
0.4375*2=0.875 整数部分为0 即当前二进制数值为:0.0
0.875*2=1.75 整数部分为1 即当前二进制数值为:0.01 去掉1后继续运算。
0.75*2=1.5 整数部分为1 即当前二进制数值为:0.011 去掉1后继续运算。
0.5*2=1.0 整数部分为1 即当前二进制数值为:0.0111 去掉1后为0,运算结束。
0.4375的二进制数为:0.0111

你说的十六进制0.2转二进制就是这样
先转十进制2*16^(-1)=2/16=0.125
再转二进制,
0.125*2=0.25,0
0.25*2=0.5,0
0.5*2=1,1
小数部分就是001,因为没整数部分所以就是0.001

但是之前说了2 8 16之间真没必要这样算...
因为0-16这几个数字的二进制非常容易推出来...常用的话比如我基本都记得住...直接每项拆开快多了不需要区分整数小数部分为何要常规算法
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式