十进制转二进制快捷转换(255以下)
- 二进制各个位置对应的十进制数值表
二进制位 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
---|---|---|---|---|---|---|---|---|
十进制数字 | 128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
举例: 十进制数字为45
- 大于45的位数(第7位和第8位)为0;
- 小于45的第一位(第6位)为1;
- 32 + 16 > 45,16所在的位(第5位)为0;
- 32 + 8 = 40 < 45,8所在的位(第4位)为1;
- 32 + 8 + 4 = 44 < 45,4所在的位(第2位)为1;
- 32 + 8 + 4 + 2 = 46 > 45, 2 所在的位(第2位)为0;
- 32 + 8 + 4 + 1 = 45 = 45,1所在的位(第1位)为1;
十进制45转化成二进制为 00101101
额外补充
二进制转十进制
和整数转换一样,采用各位数值和位权相乘。比如:
(0.101)₂ = 1×2⁻¹ + 0×2⁻² + 0×2⁻³ = (0.625)₁₀
记住小数点后第一位是从 -1 开始即可。
十进制转二进制
十进制整数转二进制采用“除 2 取余,逆序排列”法。例如十进制数 11 转为二进制:
11/2=5 … 余1
5/2=2 … 余1
2/2=1 … 余0
1/2=0 … 余1
所以 (11)₁₀ 的二进制是 (1011)₂。
但如果十进制是小数,转为二进制小数如何做?采用“乘 2 取整,顺序排列”。例如十进制小数 0.625 转为二进制小数:
0.625*2=1.25 … 取整数部分1
0.25*2=0.5 … 取整数部分0
0.5*2=1 … 取整数部分1
顺序排列,所以 (0.625)₁₀ = (0.101)₂。
为了方便大家快速的做转换,网上有很多这样的工具。推荐一个我觉得最棒的:https://baseconvert.com/,支持各进制的转换,还支持浮点数。