计算机中十进制转换成二进制的算法:
正整数的十进制转换成位进制:
注意:计算机中十进制与二进制的相关写法 例:
X 的十进制表示为 :(X)10 Y 的二进制表示为 : (Y)2
例如:(54)10 -> (54)2意思是十进制数字54,转换成二进制
54 / 2 = 27 ... 0
27 / 2 = 13 ... 1
13 / 2 = 6 ... 1
6 / 2 = 3 ... 0
3 / 2 = 1 ... 1
1 / 2 = 0 ... 1
就一直这样计算,知道商为 0 时,将所有的余数按照从下到上排序为 : 110110
由于计算机中的二进制是按照 8位,16位,32位的,如果位数不够,则上位补 0 ,所以(54)2 = 00110110
负整数转换成二进制就是将其正数先转换成二进制,然后全都取反,最后加1
例:(54)2 = 00110110
全部取反后: 11001001
最后再加1 : 11001010
则 (-54)2 = 11001010
小数转换成二进制:
将小数部分乘2,取结果的整数部分(不是1,就是0),直到小数部分为0或者位数够了停止。
例如:求:(0.125)2
0.125 * 2 = 0.25 -> 0
0.25 * 2 = 0.5 -> 0
0.5 * 2 = 1 -> 1
则(0.125)2 = 0.001
如果整数部分有值,则将整数部分转换成二进制,然后和小数部分拼接起来
如:(54.125) = 00110110.001
(54)2 = 00110110
(-54)2 = 11001010
在二进制数字中,如果第一位是0,表示其十进制数字是正整数,第一位是1,表示其十进制数字是负整数
二进制转换成十进制:
00110110 -> 从有到左分别是 0-7次幂,分别用那一位置上的数乘以对应的2的次幂就可以,如果首位是1,则表示负整数,将所有的位置都取反,然后再计算。
二进制与十进制的相互转换
最新推荐文章于 2022-01-13 22:30:55 发布
![](https://img-home.csdnimg.cn/images/20240711042549.png)