計算機中,為什麼乙個位元組是8位?

2021-09-13 03:53:45 字數 850 閱讀 4200

說這個問題的時候,首先提一下ascii編碼作為切入比較容易理解一點;

ascii編碼:全稱american standard code for information interchange,翻譯過來就是美國資訊交換標準碼。

ascii編碼作用:就是編碼,那什麼又是編碼?我個人理解編碼就跟江湖中的好漢劫富濟貧時所用的暗語一樣,栗子:風來了(只有好漢知道這個詞的意思),就表示官兵來了。江湖上用「風來了」用來編碼「官兵來了」,這就是江湖上使用的一套編碼體系。而ascii碼就是計算機中的一套編碼體系,用一串二進位制數字(計算機認識)表示我們現實生活中的一些字元啊數字之類的東西。說的不好聽點跟見人說人話,見鬼說鬼話有異曲同工之妙!

標準表很可能大家都注意到了,第一列的二進位制使用了8個二進位制位(8個0、1)。對應的十進位製到了最大的127,那為什麼是8位呢?因為這套編碼系統是美國統一的標準,對美國人來說;所有字元包括單詞,標點符號都全部都囊括進了這128(0~127)個字元,美國人用完全就夠了。是不是比我們8萬+的漢字總量相比遜色多了。簡單yy下。

這就是最初為什麼乙個位元組(1b)用8個二進位制位(8b)來表示的由來了,至於什麼system/360那些東西在這裡不再贅述,實為乙個歷史。

隨著計算機的發展和各國對計算機的使用,這128個字元顯然不能滿足全世界任命的需求了,也就相繼出現了utf-8、gbk等的編碼體系了。這也說明了在很多編碼體系中乙個英文本元為什麼占用了乙個位元組(1b)儲存大小的原因了!

計算機中的換算關係:

1b(byte) = 8b(bit)

1kb = 1024b

1mb = 1024kb

網路網速上的10m又是通訊系統中的概念了;

10mbps / 8(b/位) = 1.25mbps (1.25m/s)

int為什麼佔4個位元組?乙個位元組為什麼是8位?

不知道大家有沒有思考過這樣的問題,乙個位元組為什麼是8位呀,也許還有小夥伴不知道我說的這些是什麼,沒關係往下看。第乙個解釋 歷史 是ibm為system 360設計了一套8位ebcdic編碼,涵蓋了數字 大小寫字母和大部分常用符號,同時又相容廣泛用於打孔卡的6位bcdic編碼。第二個解釋,二進位制我...

乙個字元等於幾個位元組 什麼是utf8?

不同的字元所佔的位元組是不同的。ascii碼 乙個英文本母 不分大小寫 佔乙個位元組的空間,乙個中文漢字佔兩個位元組的空間。乙個二進位制數字序列,在計算機中作為乙個數字單元,一般為8位二進位制數,換算為十進位制。最小值0,最大值255。如乙個ascii碼就是乙個位元組。utf 8編碼 乙個英文本元等...

為什麼乙個位元組的補碼表示範圍是 128 127

我們要先區分一下原碼 反碼和補碼的表示規則 0的表示 原碼 有正零和負零之分,0 補 0000 0000,0 補 1000 0000 反碼 同樣有兩種表示方法,0 反 0000 0000 0 反 1111 1111 補碼 零只有一種表示方法,不分正負,0 補 0000 0000 8為二進位制表示的範...