二进制转换可通过以下方法实现,分为进制间转换和与十进制的转换两类:
一、进制间转换
二进制转八进制 - 从右向左每3位二进制数分为一组,不足3位左侧补零。 - 每组二进制数转换为对应的八进制数字(0-7)。 - 示例:`110101` → `110`→6,`101`→5,`011`→3 → `0o653`。
二进制转十六进制
- 从右向左每4位二进制数分为一组,不足4位左侧补零。 - 每组二进制数转换为对应的十六进制字符(10-15对应A-F)。 - 示例:`110101` → `1101`→D,`0101`→5 → `0xD5`。
八进制/十六进制转二进制
- 八进制转二进制:每1位八进制数转换为3位二进制数。 - 十六进制转二进制:每1位十六进制数转换为4位二进制数。 - 示例:`0o653` → `110 101 011`,`0xD5` → `1101 0101`。
二、二进制与十进制转换
二进制转十进制
- 按权展开求和:从右向左每位数字乘以2的幂次方(2⁰、2¹、2²...),然后将结果相加。 - 示例:`1101` → `1×2³ + 0×2² + 1×2¹ + 1×2⁰ = 8 + 0 + 2 + 1 = 11`。
十进制转二进制
- 除2取余法: 将十进制数不断除以2,记录余数,倒序排列。 示例:`13` → `13÷2=6余1` → `6÷2=3余0` → `3÷2=1余1` → `1÷2=0余1` → `1101`。 - 短除法
总结
进制转换:二进制转八进制/十六进制需分组,反之需补零扩展。- 与十进制转换:二进制转十进制用按权展开,十进制转二进制可用除2取余法或短除法。通过掌握这些方法,可高效完成二进制与其他进制之间的转换。