对于一个十进制的数据456.78(d)要将其转化2,8,16三种进制数,请讨论下从2,8,16哪个
对于一个十进制的数据456.78(d)要将其转化2,8,16三种进制数,请讨论下从2,8,16哪个进制开始转换,经过怎么步骤,效率会快点...
对于一个十进制的数据456.78(d)要将其转化2,8,16三种进制数,请讨论下从2,8,16哪个进制开始转换,经过怎么步骤,效率会快点
展开
1个回答
展开全部
先转成二进制效率最快。
456÷2=228余0
228÷2=114余0
114÷2=57余0
57÷2=28余1
28÷2=14余0
14÷2=7余0
7÷2=3余1
3÷2=1余1
1÷2=0余1
从下到上取余数为:111001000,
整数456转换结果为111001000,
0.78x2=1.56取整1
0.56x2=1.12取整1
0.12x2=0.24取整0
0.24x2=0.48取整0
0.48x2=0.96取整0
0.96x2=1.92取整1
0.92x2=1.84取整1
0.84x2=1.68取整1
一直乘不尽,只能取大约数,这里只取小数8位。
小数0.78从上到下取整数为:11000111,
小数0.78转换结果为11000111,
所以456.78最后的转换结果为:111001000.11000111
一个八进制对应三位二进制,将111001000.11000111按三位补齐位数为111 001 000.110 001 110,对应的八进制为710.616,
一个十六进制对应四位二进制,将111001000.11000111按四位补齐位数为 0001 1100 1000.1100 0111,对应的十六进制为1C8.C7
456÷2=228余0
228÷2=114余0
114÷2=57余0
57÷2=28余1
28÷2=14余0
14÷2=7余0
7÷2=3余1
3÷2=1余1
1÷2=0余1
从下到上取余数为:111001000,
整数456转换结果为111001000,
0.78x2=1.56取整1
0.56x2=1.12取整1
0.12x2=0.24取整0
0.24x2=0.48取整0
0.48x2=0.96取整0
0.96x2=1.92取整1
0.92x2=1.84取整1
0.84x2=1.68取整1
一直乘不尽,只能取大约数,这里只取小数8位。
小数0.78从上到下取整数为:11000111,
小数0.78转换结果为11000111,
所以456.78最后的转换结果为:111001000.11000111
一个八进制对应三位二进制,将111001000.11000111按三位补齐位数为111 001 000.110 001 110,对应的八进制为710.616,
一个十六进制对应四位二进制,将111001000.11000111按四位补齐位数为 0001 1100 1000.1100 0111,对应的十六进制为1C8.C7
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询