计算机存储单位、二进制与八进制及十六进制互相转换的梳理

作者: 乘风御上者 分类: 综合 发布时间: 2021-04-28 11:31

1b: bit (比特:) = 1个二进制位
1B: byte (字节) = 8b (小写b与大写B区别)
1KB: (大写K为计算机计数单位) = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB …

注: 小写k代表日常中的 1000


任意进制转10进制:

8 进制1023 = 1 * 8^3 + 0 * 8^2 + 2 * 8^1 + 3 * 8^0
16进制1023 = 1 * 16^3 + 0 * 16^2 + 2 * 16^1 + 3 * 16^0
n 进制1023 = 1 * n^3 + 0 * n^2 + 2 * n^1 + 3 * n^0

在 8进制1023中,从右到左,第一位从0开始则:
    1: 对应3,则 1 * 进制数8的3次方
    0: 对应2,则 0 * 进制数8的2次方
    2: 对应1,则 2 * 进制数8的1次方
    3: 对应0,则 3 * 进制数8的0次方

八进制转二进制: 每一位八进制转成三位二进制,不够的左边补零

例 8进制1023:
    1:001
    0:000
    2:010
    3:011
则 1023 = 001000010011 (拼接之后最左侧0可去掉)

十进制转二进制:依次除以2,余数作为二进制数右边一位数字,商继续除2,直到商为0

例 10进制102:
    102/2 = 51 余 0
     51/2 = 25 余 1
     25/2 = 12 余 1
     12/2 =  6 余 0
      6/2 =  3 余 0
      3/2 =  1 余 1
      1/2 =  0 余 1
则 102 = 1100110 (从最下面的余数开始往上连起来)

十六进制转二进制:每一位十六进制转成四位二进制,不够的左边补零

例 16进制1023:
    1:0001
    0:0000
    2:0010
    3:0011
则 1023 = 0001000000100011 (拼接之后最左侧0可去掉)

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表回复