十进制转二进制
这方法叫 除2取余,逆序排列 法;
例如,现在要将20转为二进制,那么我们的运算逻辑是:
20 % 2 = 10 余 0
10 % 2 = 5 余 0
5 % 2 = 2 余 1
2 % 2 = 1 余 0
1 % 2 = 0 余 1
然后我们需要将计算出来的数进行逆序排列,得到:10100,这就是20的二进制。
负的十进制转为二进制
那么怎么将负的十进制转为二进制呢?
我们以-20为例,经过除2取余,逆序排列法可以得到20的二进制是10100,那么20的8位的二进制就是0001 0100;
我们称,0001 0100为原码
那么要转为-20,我们先要求出20的二进制的反码(0变1,1变0)
得到反码 :
1110 1011
然后则要求出20二进制的补码(反码+1,则是补码,补码也是负数的表示)
最后的到的补码是:1110 1100
小数十进制转为二进制
小数转二进制我们采用,乘2取整,顺序排列法
以0.8125为例:
当小数部分为0就可以停止乘2了,然后正序排序就构成了二进制的小数部分:0.1101
如果小数的整数部分有大于0的整数时,将整数部分和小数部分先单独转为二进制,再合在一起就可以了,例如:
假设要将20.8125 转换为二进制
现将20转为二进制:得到10100
再将0.8125转为二进制:得到0.1101
合并后为10100.1101