要在两种非十进制之间换算,就以十进制作中转:先把原数展开成十进制,再把这个十进制数连除,换成新进制。
这一课属于进制单元,要用到十进制换成其他进制的连除法。余数还不熟练的话,先回去看那一课。
两步路线是什么?
第一步,用原进制的位值把每个数码乘上去,加起来得到十进制数。第二步,用目标进制连除,得到新数。
这是一个原创例子:把2413₅ 换成八进制。
**第一步,展开成十进制。**五进制的位值是125、25、5、1。
2 × 125 + 4 × 25 + 1 × 5 + 3 × 1 = 250 + 100 + 5 + 3 = 358
第二步,连除以8。
| 算式 | 商 | 余数 |
|---|---|---|
| 358 ÷ 8 | 44 | 6 |
| 44 ÷ 8 | 5 | 4 |
| 5 ÷ 8 | 0 | 5 |
从下往上读:2413₅ = 546₈。
检查:5 × 64 + 4 × 8 + 6 = 320 + 32 + 6 = 358,与第一步相符。
最常见的错误
最常见的是两步里用错了进制:用8的次方去展开2413₅,或者把358除以5。
另一种是漏掉一个位值,例如写成2 × 25 + 4 × 5 + 1 + 3,丢掉了125,得到的数小得多。
| 步骤 | 错误做法 | 正确做法 |
|---|---|---|
| 展开2413₅ | 2 × 512 + 4 × 64 + 1 × 8 + 3,用了八的次方 | 2 × 125 + 4 × 25 + 1 × 5 + 3 = 358 |
| 目标进制 | 除以5 | 除以8 |
| 答案的数码 | 可能出现8或9 | 只会有0到7 |
二进制与八进制的捷径
因为8 = 2³,一个八进制数码正好对应三位二进制数码。把10111010₂ 从右起每三位分一组:10 | 111 | 010,最左边补成010。
三组分别是010 = 2,111 = 7,010 = 2,所以10111010₂ = 272₈。
用长路线检查:10111010₂ = 128 + 32 + 16 + 8 + 2 = 186,而2 × 64 + 7 × 8 + 2 = 186。这个捷径只适用于两个进制互为次方的情况,五进制和八进制之间就不能用。
自测题
把1302₄ 换成五进制。先展开成十进制,再连除。
答案
四进制的位值是64、16、4、1。
1 × 64 + 3 × 16 + 0 × 4 + 2 × 1 = 64 + 48 + 2 = 114。
114 ÷ 5 = 22余4,22 ÷ 5 = 4余2,4 ÷ 5 = 0余4。
从下往上读是424₅。检查:4 × 25 + 2 × 5 + 4 = 100 + 10 + 4 = 114。
接下来学什么?
两种换算都掌握后,就可以做进制的加减了。接着看不同进制的加法和减法,或者直接用进制练习题检验自己。
想让老师检查你的书写格式和检查习惯,可以看一对一线上数学补习。