在计算机编程中,可以通过十进制、二进制、八进制和十六进制来表示
一. 十进制
a. 基数:0,1,2,3,4,5,6,7,8,9
b. 进位:逢10进1
c. 位权:123 = 100 + 20 +3 = 1102 + 2101 + 2100
二. 二进制
a. 基数:0,1
0111,1100,101010101,1111100011
b. 进位:逢2进1
100(2) == 4(10) 101(2) == 5(10)
c. 位权:101 = 122 + 021 + 12*0 = 5
三. 八进制
a. 基数:0,1,2,3,4,5,6,7
b. 进位:逢8进1
c. 位权:123(8) = 382 + 282 + 38*0 = 83
四. 十六进制
a. 基数: 0-9,a/A~ f/F -- a/A(10), b/B(11)... f/F(15)
1f,ff,abc,a00bf
b. 进位:逢16进1
c. 权位:123(16)= 3160 + 2161 + 116*2 = 291
1. 程序中怎么表示不同进制的数
a. 十进制
在程序中直接写的数字都是10进制
num = 110
print(num) # 直接打印其他进制的数就会显示它的十进制
b. 二进制
0b/B+二进制数
num = 0b1110
# num2 = 0b123 错误,超出范围
bin() 其他进制转二进制,返回的是字符串,不是数字
c.八进制
0o/O+八进制
num = 0o176
print(num)
# num2 = 0o178 错误,超出范围
oct() 其他进制转八进制,返回的是字符串,不是数字
d.十六进制
0x/X+十进制
num = 0xaf2
print(num)
# num2 = 0xah #错误
hex() 其他进制转十六进制,返回的是字符串,不是数字
num1 = 17
num2 = 0b10001
num3 = 0o21
num4 = 0x11
print(num1, num2, num3, num4) # 值都一样,只是表示方式不同
网友评论