我們在編程過程中,大部分時間是在與CPU和內存打交道,數據是保存在內存中的,CPU會直接讀取內存中的數據進行處理,並將結果保存到內存。如果需要保存到硬盤,纔會將內存中的數據複製到硬盤。
如果我們通過電路來控制這些元器件的通斷電,那麼就可以得到很多0、1狀態的組合。例如,8個元器件有 2^8=256 種不同的組合,16個元器件有 2^16=65536 種不同的狀態。雖然一個元器件只能表示2種狀態,但是多個組合起來就可以表示很多狀態了,所以,我們通常將8個、16個元器件組合起來表示一個字符,8個元器件可以表示256個字符,16個可以表示65536個字符。
我們將1個元器件稱爲1Bit(比特),8個元器件稱爲1Byte(字節),那麼16個元器件就是2Byte,32個就是4Byte,以此類推,8×1024個元器件就是1024Byte,簡寫爲1KB,8×1024×1024個元器件就是1024KB,簡寫爲1MB,8×1024×1024×1024個元器件就是1024MB,簡寫爲1GB。
單位換算:
1Byte = 8 Bit
1KB = 1024Byte
1MB = 1024KB
1GB = 1024MB
1TB = 1024GB
在內存中是沒有abcdef這樣的字符,只有0和1兩個數字,計算機只認識0和1。所以,計算機使用二進制,而不是我們熟悉的十進制,寫入內存中的數據,都會被轉換成0和1的組合。
二進制只有0和1兩個數字,基數爲2,逢二進一,借一當二。例如:
十進制 4321 = 4×103 + 3×102 + 2×101 + 1×100
二進制 1101 = 1×23 + 1×22 + 0×21 + 1×20 = 8 + 4 + 0 + 1 = 13
二進制 110.11 = 1×22 + 1×21 + 0×20 + 1×2-1 + 1×2-2 = 4 + 2 + 0 + 0.5 + 0.25 = 6.75
二進制數據的算術運算的基本規律和十進制數的運算十分相似。最常用的是加法運算和乘法運算。
二進制加法:
0+0=0
0+1=1
1+0=1
1+1=10
二進制乘法:
0×0=0
1×0=0
0×1=0
1×1=1
二進制減法:
0-0=0
1-0=1
1-1=0
10-1=1
二進制除法:
0÷1=0
1÷1=1