字节的概念&十进制与二进制的相互转化


参考链接:
https://baike.baidu.com/item/%E5%AD%97%E8%8A%82/1096318?fr=aladdin https://blog.****.net/weixin_44135991/article/details/88739042?
https://blog.****.net/luzhensmart/article/details/87739917?

· (一). 字节(Byte)的概念和相关换算

  字节是二进制数据的单位。一个字节通常8位长。
  数据存储是以“字节”(Byte)为单位,数据传输大多是以“位”(bit,又名“比特”)为单位,1b就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是最小一级的信息单位。即
1B(1字节)=8b(8位)。相关换算:
        1KB( Kilobyte,千字节)=1024B
        1MB( Megabyte,兆字节)=1024KB
        1GB( Gigabyte,吉字节,千兆)=1024MB
        1TB( Trillionbyte,万亿字节,太字节)=1024GB
        1PB( Petabyte,千万亿字节,拍字节)=1024TB
        1EB( Exabyte,百亿亿字节,艾字节)=1024PB
        1 ZB(Zettabyte,十万亿亿字节,泽字节)=1024EB
        1YB( Yottabyte,一亿亿亿字节,尧字节)=1024ZB
        BB( Brontobyte,千亿亿亿字节)=1024YB

· (二). 十进制与二进制的转化

1.十进制——>二进制

①. 整数 (除2取余)

  十进制转化为二进制的原则就是: 除2取余,倒序排列
字节的概念&十进制与二进制的相互转化

字节的概念&十进制与二进制的相互转化
因此,1B(一个字节)能存储的最大的十进制整数为255.

②.小数 (乘2取整)

  即乘2取整,顺序排列,小数点后面的部分*2,之后取整部分依次写在后面。例:把0.125化为二进制:

0.125 * 2 = 0.25
0.25 * 2 = 0.5
0.5 * 2 = 1
∴ 0.125 = 0.001
若是想把173.125变为二进制,即将整数部分的二进制和小数部分的二进制合并即可:
173.125 = 10101101.001

2.二进制——>十进制 (按权相加

①. 整数

字节的概念&十进制与二进制的相互转化

②.小数

  即乘以2的负次方。例:把0.001(二进制)转为十进制:

0.001 = 0*2^-1^ +0*2^-2^ +1*2^-3^ =0+0+1/8=0.125