整数十进制转二进制:迭代除2,直至商为0,所有的余数即是此二进制(有后向前排列)。
例如:101
101/2 = 50 余 1
50/2 = 25 余 0
25/2 = 12 余 1
12/2 = 6 余 0
6/2 = 3 余 0
3/2 = 1 余 1
1/2 = 0 余 1
二进制为:1100101 整数二进制转十进制
例子:1100101
1*2E6 + 1*2E7 + 1*2E2 + 1*2E0 = 101
小数十进制转二进制:迭代取小数部分乘2,直到得到的结果小数位为0。每次相乘的整数位为1时记此二进制为1;
例子1: 0.325 *2 = 0.65 (取0)
(0.65 - 0) x 2 = 1.3 (取1)
(1.3 – 1) x 2 = 0.6(取0)
(0.6 – 0) x 2 = 1.2 (取1)
(1.2 – 1) x 2 = 0.4(取0)
(0.4 – 0) x 2 = 0.8(取0)
(0.8 – 0) x 2 = 1.6 (取1)
(1.6 – 1) x 2 = 1.2 (取1)
最终结果是0.0010011….(10011循环)
例子2: 0.5 * 2 = 1.0 (取1) 结果为0.1(二进制)
小数二进制转十进制
例子:二进制0.1101
1*2E-1 + 1*2E-2; + 1*2E-4 = 0.8125