bit,bytes

spectre2發表於2011-04-20

1 byte = 8 bit
1 KB = 1024 bytes =2^10 bytes
1 MB = 1024 KB = 2^20 bytes
1 GB = 1024 MB = 2^30 bytes

bit只有0和1兩個狀態。一bit就是一個二進位制位,兩bit就是兩個二進位制位……道理同十進位制一樣,有個位有十位、百位、千位等等。但二進位制逢2就進1,等於十進位制每位最大是9,一旦到10就要進位。bit就是一樣東西,最大是1,2就要進位,所以十進位制的“2”就是二進位制的“10”,“5”就是“101”。二進位制的“個位”是2的0次方2^0,“十位”是2的1次方2^1,“百位”是2的2次方2^2……等於十進位制“百位”是10^3。

1byte=8bit就是說一個位元組有八個二進位制位,就是2的8次方,應該表示為2^8。所以1位元組能夠表示2^8=-256種狀態。電腦把256種狀態表示不同的字母符號(其實字母和常用符號只用前128種),所以每個字母都由一個數值代表,記錄一堆字母的資料,就需要一堆位元組了。
同理,我們漢字儲存,一般的GB2312或者GBK編碼方式,用兩個位元組表示一個漢字,就是16bit種狀態(實際不足2^16)。現在非英文字元都流行unicode編碼,用3或4個位元組,變化更大,例如CJK編碼可表示7萬多漢字。
“2^10 bytes”,2的10次方就等於1024。
而bit不止是記憶體的單位,基本是現代計算機所有關於容量的單位。例如硬碟、光碟,都基於2進位制。甚至顯示的顏色數目,例如某些彩屏手機(例如iphone)說是16M色真彩,就是16777216種狀態,2的24次方。一個位元組8bit,8個二進位制,需要表示24bit狀態,就需要3個位元組存放。這也是我們以前顯示卡視訊記憶體拮据時,計算不同顏色解析度需要多大視訊記憶體的方法。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/14184018/viewspace-692940/,如需轉載,請註明出處,否則將追究法律責任。

相關文章