數據存儲
思考:爲什麼使用計算機
存儲數據、計算數據(快、海量、可計算)
思考:數據存放在哪裏?
數據存儲在內存中
思考:數據是如何存放在內存中的
10
10.5
“Hello word”
在計算機的組成結構,存儲器,存儲器是用來存儲程序和數據的部件,---》內存
內存:
抽象
兩種狀態開和關(0和1)
字節---8位(8個開關)
數據在內存中存儲的單位
1bit
1字節=8bit
1K=1024字節
1M=1024K
1G=1024M
1T=1024G
1P=1024T
思考:內存以何種形式存儲數據?
內存中以二進制的形式進行存儲,0和1
進制也就是進位計數制
生活中最常見的進制----》十進制
常見的進制:
二進制
八進制
十進制
十六進制
二進制:
任何數據在計算機中都是二進制的形式,二進制早期由電信開關演變而來,
特點:
由0和1組成,0b開頭,逢二進一
例如:
0+0=0
0+1=1
1+1=10
11+1=100
特點:
由數字0-7組成,逢八進一,以0O開頭,0,1,2,3,4,5,6,7
1+7=10
1+2=3
特點:
由0-9組成,逢十進一,整數的默認是十進制
特點:
十六進制的範圍0-9 A-F,0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
以0x開頭
1+F=10
進制的作用:方便計算機內部計算。
十進制轉換爲二進制直到商爲0,餘數反轉(逆序)
規則:
除基取餘
做除法,餘數逆序
10(10)-----》1010(2)
10/2
5/2 0
2/2 1
1/2 0
0 1
則10轉化爲二進制位1010
10(10)---》12(8)
10/8
1/8 2
0 1
直接除以16,餘數在10-15之間用A-F來表示
10(10)---》A(16)
當前的數字乘以2的位數的次方,最後相加
1010
0*20+1*21+0*22+1*23
一轉三位,八進制中的一位相當於二進制中的三位,轉化的時候按照十進制進行轉換
65(8)---》110101(2)
6/2
3/2 0
1/2 1
0 1
6---》110(2)
5/2
2/2 1
1/2 0
0 1
5---》101(2)
三位轉一位,從第一位開始取,高位不夠補0
110101(2)---》65(8)
1111
一位轉四位,十六進制的一位相當於二進制的四位,轉換時按照十進制轉換。
A4---》1010 0100
四轉一,從低位取,高位不夠補0
補充:
如何將十進制轉化爲八進制或十六進制
可以先將10---》2---》8
可以使用python中的函數來實現
下面符號對應進制數
b:二進制
d:十進制
o:八進制
x:十六進制
十進制轉化爲二進制調用函數bin print(bin(10))
十進制轉換爲八進制調用函數oct print(oct(10))
十進制轉換爲十六進制---》hex print(hex(10))
二進制轉化爲十進制eval print(eval("0b1010"))
八進制轉換爲十進制int int(參數1,參數2),參數1需要轉換的數,參數2需要轉換的類型 print(int(“0o12”,8))
十六進制轉十進制int print(int("0xc",16))