(4)二八十六进制转换
计算机硬件基本认知
cpu: 中央处理器. 相当于人的大脑.运算中心,控制中心.
内存: 临时存储数据. 优点:读取速度快,缺点:容量小,造价高,断电即消失.
硬盘: 长期存储数据. 优点:容量大,造价相对低,断电不消失,缺点:读取速度慢.
操作系统:统一管理计算机软硬件资源的程序windows,Linux,Unix,IOS 这是四大常见的操作系统
计算机文件大小单位
b = bit 位(比特)
B = Byte 字节
1Byte = 8 bit #一个字节等于8位 可以简写成 1B = 8b
1KB = 1024B
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
1PB = 1024TB
1EB = 1024PB
计算机中使用二进制数,用0和1表示和识别电流的通和断、电压的高和低、电荷的有和无等两种状态(通俗地说,电流只有有电与没电之分,有电用1表示,无电用0表示)简单的0和1两个数码承担着大量信息的输入和输出,完成了复杂多变的演算和逻辑思维过程,也就是说电脑本身只认识0和1,计算机的底层都是通过0和1来实现的,也就是二进制计数.
进制表示方法
二进制:由2个数字组成,有0 和 1 例: 0b101
八进制:由8个数字组成,有0,1,2,3,4,5,6,7 例: 0o127
十进制:有10个数字组成,有0,1,2,3,4,5,6,7,8,9 例: 250
十六进制:有16个数字组成,有0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f(字母大小写都可以,分别代表10,11,12,13,14,15) 例:0xff 0Xff 0XFF
<一>:其他进制转十进制
(1)二进制转化成十进制:
例: 0b10100101
运算:1* 2^0 + 0* 2^1 + 1* 2^2 + 0* 2^3 + 0* 2^4 + 1* 2^5 + 0* 2^6 + 1* 2^7=
1 + 0 + 4 + 0 + 0 + 32 + 0 + 128 = 165
(2)八进制转化成十进制:
例: 0o127
运算:7*8^0 + 2*8^1 + 1*8^2 = 7+16+64 = 87
(3)十六进制转化成十进制:
例: 0xff
运算:15*16^0 + 15*16^1 = 255
小练习: 转化成十进制
0b11010110 # 1*2^1+1*2^2+1*2^4+1*2^6+1*2^7=2+4+16+64+128=214
0b01110101 # 同理 117
0o234 # 4*8^0+3*8^1+2*8^2=156
0o171 # 同理 121
0x123 # 3*16^0+2*16^1+1*16^2 = 291
0x1c2 # 同理 450
<二>十进制转其他进制
(1)十进制转化成二进制:
426 => 0b110101010
运算过程: 用426除以2,得出的结果再去不停地除以2,
直到除完最后的结果小于2停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可
(2)十进制转化成八进制:
426 => 0o652
运算过程: 用426除以8,得出的结果再去不停地除以8,
直到除完最后的结果小于8停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可
(3)十进制转化成十六进制:
运算过程: 用426除以16,得出的结果再去不停地除以16,
直到除完最后的结果小于16停止,
在把每个阶段求得的余数从下到上依次拼接完毕即可
小练习: 转化成对应进制
723 => 2===>0b1011010011
654 => 2===>0b1010001110
723 => 8===>0o1323
654 => 8===>0o1216
723 => 16===>2D3
654 => 16===>28E
<三> 二八十六进制互转
(1)二进制与八进制转换
二进制与八进制对应关系:
八进制 二进制
0===> 000
1===> 001
2===> 010
3 ===>011
4 ===>100
5===> 101
6===> 110
7===> 111
例:以下2转8
例:0b1010100101 # 从右向左 3位一隔开
001 010 100 101 # 不够三位用0补位
0o 1 2 4 5 # 每三位二进制计算出十进制 结果:0o1245
注意:八进制数最大表示位数只有7,而每三位二进制恰好可以表示一个八进制
(2)二进制与十六进制转换
十六进制 二进制
0====>0000
1====> 0001
2====> 0010
3====> 0011
4====>0100
5====> 0101
6====> 0110
7====> 0111
8====> 1000
9====> 1001
a====> 1010
b====> 1011
c====> 1100
d====> 1101
e====> 1110
f ====>1111
例:0b1010100101
十六进制:从右向左 4位一隔开 不够四位用0补位 变成:
0010 1010 0101
0x2a5
(3)八进制与十六进制的转换
先转换成二进制 再去对应转换
比如:0x2a5 转换成 1010100101 再转8进制 0o1245
小练习: 转化成对应进制
0x1DD ==2==>0b000111011101==8==>0o735
0x29a ==2==>0b01010011010==8==>0o1232
0o573 ==2==>0b101111011==16==>0x17B
0o336 => 16==2==>0b011011110==16==>0xDE