计算机基础之进制转化

基础知识

存储单位

单位 简称 计算 说明
bit 比特(bit) 存储最小单位
Byte Byte 字节(B) 1B=8bit
KB K 1KB=1024B
MB MB 1MB=1024KB
GB GB 1GB =1024MB
TB TB 1TB =1024GB 其中1024=2^10 ( 2 的10次方)
PB PB 1PB =1024TB
EB EB 1EB =1024PB
ZB ZB 1ZB = 1024 EB
YB YB 1YB = 1024 ZB
BB BB 1BB = 1024 YB

各种数制中不同位的权为“基的n-1次方(n为所在的位数)”。

标识符

  • 十进制:D
  • 二进制:B
  • 八进制:Q(Octal,但是为了和0区分,使用Q代表)
  • 十六进制:H

转换关系

数值对照

十进制

转十进制

原理

就是将权的值相加,结果就是十进制的值

示例

(10011)B转化成十进制

1 * 2^4 + 0 * 2^3 + 0 * 2^2 + 1 * 2^1 + 1 * 2^0 = 19

(114)Q转化为十进制

1 * 8^2 + 1 * 8^1 + 4 * 8^0 = 76

(2AF5)换算成10进制

2 * 16^3 + 10 * 16^2 + 15 * 16^1 + 5 * 16^0 = 10997

十进制转其余进制

原理

整数部分,对X短除取余倒序;小数部分,与X相乘取整正序。

示例

(42.125)D转化为二进制

  • 整数部分:
  • 小数部分
1
2
3
4
5
6
7
0.125  *  2  =  0.25 ------0

0.25 * 2 = 0.5 ------0

0.5 * 2 = 1.0 ------1

当小数部分为0就可以停止乘2了,然后正序排序就构成了二进制的小数部分:0.001

1.用2乘十进制小数,可以得到积,将积的整数部分取出
2.再用2乘余下的小数部分,又得到一个积,再将积的整数部分取出
3.重复操作,直到积中的小数部分为零,此时0或1为二进制的最后一位,或者达到所要求的精度为止

八进制

八进制转二进制

把每一个八进制数转换成3位的二进制数,就得到一个二进制数。

二进制转八进制

从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足3位的要用“0”补足3位,就得到一个八进制数。

十六进制

十六进制转二进制

把每一个八进制数转换成4位的二进制数,就得到一个二进制数。

二进制转十六进制

从小数点开始,整数部分向左、小数部分向右,每3位为一组用一位八进制数的数字表示,不足4位的要用“0”补足3位,就得到一个八进制数。

总结

  • 十进制转其它进制:整数部分,对X短除取余倒序;小数部分,与X相乘取整正序

  • 其它进制转十进制:就是将权的值相加,结果就是十进制的值

  • 二进制转八进制:取三合一法,即从二进制的小数点为分界点,向左(向右)每三位取成一位,接着将这三位二进制按权相加,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的八进制数。如果向左(向右)取三位后,取到最高(最低)位时候,如果无法凑足三位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足三位

  • 二进制转十六进制:取四合一法,即从二进制的小数点为分界点,向左(向右)每四位取成一位,接着将这四位二进制按权相加,然后,按顺序进行排列,小数点的位置不变,得到的数字就是我们所求的十六进制数。如果向左(向右)取四位后,取到最高(最低)位时候,如果无法凑足四位,可以在小数点最左边(最右边),即整数的最高位(最低位)添0,凑足四位。

  • 八进制与十六进的互转:先转化为二进制,再转化为想要的进制

Author: suce
Link: https://haoubox.cn/2021/11/19/计算机基础之进制转化/
Copyright Notice: All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.