二進制,是計算技術中普遍採用的一種數制,由德國數理哲學大師萊布尼茨於1679年發明。二進制數據是用0和1兩個數碼來表示的數。它的基數爲2,進位規則是「逢二進一」,借位規則是「借一當二」。當前的計算機系統使用的基本上是二進制系統,數據在計算機中主要是以補碼的形式存儲的。計算機中的二進制則是一個很是微小的開關,用「開」來表示1,「關」來表示0。
二進制的特性其實跟咱們日常使用的十進制同樣是一種數制。十進制是逢十進一,二進制是逢二進一。二進制比計算機出現得還早,二進制的只有0和1的特性恰好與電子的開關對應,因而二進制這種數制,就成爲了計算機的根基。
參考資料:
https://baike.baidu.com/item/二進制/361457?fr=aladdinpython
每一個0或1就是一個位(bit)。
字節是計算機信息技術用於計量儲存容量的一種計量方式(和長度單位同樣),做爲一個單位來處理的一個二進制數字串,是構成信息的一個小單位。最經常使用的字節是八位的字節,即它包含八位的二進制數。
編碼
由使用的字節數,限定的。
python2 32位 python3 超過32位後自動擴展(理論上無限)設計
由於計算機只能處理數字,若是要處理文本,就必須先把文本轉換爲數字才能處理。最先的計算機在設計時採用8個比特(bit)做爲一個字節(byte),因此,一個字節能表示的最大的整數就是255(二進制11111111=十進制255),若是要表示更大的整數,就必須用更多的字節。好比兩個字節能夠表示的最大整數是65535
,4個字節能夠表示的最大整數是4294967295
。(43億)
因爲計算機是美國人發明的,所以,最先只有127個字符被編碼到計算機裏,也就是大小寫英文字母、數字和一些符號,這個編碼表被稱爲ASCII
編碼,好比大寫字母A
的編碼是65
,小寫字母z
的編碼是122
。
可是要處理中文顯然一個字節是不夠的,至少須要兩個字節,並且還不能和ASCII編碼衝突,因此,中國製定了GB2312
編碼,用來把中文編進去。
你能夠想獲得的是,全世界有上百種語言,日本把日文編到Shift_JIS
裏,韓國把韓文編到Euc-kr
裏,各國有各國的標準,就會不可避免地出現衝突,結果就是,在多語言混合的文本中,顯示出來會有亂碼。
所以,Unicode應運而生。Unicode把全部語言都統一到一套編碼裏,這樣就不會再有亂碼問題了。
gbk
和 utf-8
是常常使用的編碼。code