先来说说进制是什么,进制,又称数制,是一种表示数字的方法,规定了数字的基数和每一位的位权。举个例子,二进制只有 0 和 1,2 就是它的基数,超过了 2 它就得进一位,如 01 + 1 = 10,01 上的 1 的位权就是 1,10 上的1的位权就是2了。从右往左就是第 n 位的位权为2^(n-1)( ^ 这个符号表示次方),假如是十进制第 n 位的位权就为10^(n-1)。

接下来讲讲它们是如何转化的
一、其他进制转十进制
例如:二进制 1101 = 1 × 2^3 + 1 × 2^2 + 0 × 2^1 + 1 × 2^0 = 13
八进制 32 = 3 × 8^1 + 2 × 8^0 = 26
由此可见其他进制转十进制的方法为:
每位数字 × 基数的(位次-1)幂,再求和
公式是
d(n) × B^(n-1) + d(n−1) × B^(n−2) + ⋯ + d1 × B^(0) = 十进制值

二、十进制转其他进制
方法:
短除法,反复除以目标进制基数,记录余数,最后倒序排列。
例:十进制 25 转二进制
25 ÷ 2 = 12 余 1
12 ÷ 2 = 6 余 0
6 ÷ 2 = 3 余 0
3 ÷ 2 = 1 余 1
1 ÷ 2 = 0 余 1
二进制为倒序排列余数:11001

三、二进制 <=> 八进制/十六进制(分组法)
二进制转八进制方法:
每 3位 一组,转换为1位八进制(不足补零)。
例:
11010110₂ => 011 010 110 => 3 2 6 => 326₈(注:角标代表多少进制)
二进制转十六进制方法:每 4位 一组,转换为1位十六进制。
例:
11010110₂ => 1101 0110 => D 6 => D6₁₆(注:超过10使用英文字母表示,10为A,11为B,依此类推)
反向转换:每位八进制/十六进制展开为3/4位二进制。
示例:
5A₁₆ => 0101 1010 => 01011010₂

四、八进制 <=> 十六进制
方法:
先转二进制,再分组转换。
示例:
八进制 345₈ => 二进制:
3 4 5 → 011 100 101 => 011100101₂
二进制 => 十六进制:
0001 1100 1010(补零)=> 1 C A => 1CA₁₆
看完之后你是否学会了呢?
如果还没理解请在评论区留言哦。
版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除
