1. 程式人生 > >字元與位元組區別,編碼格式的字元長度

字元與位元組區別,編碼格式的字元長度

(一)“位元組”的定義

位元組(Byte)是一種計量單位,表示資料量多少,它是計算機資訊科技用於計量儲存容量的一種計量單位。

(二)“字元”的定義

字元是指計算機中使用的文字和符號,比如1、2、3、A、B、C、~!·#¥%……—*()——+、等等。

(三)“位元組”與“字元”

它們完全不是一個位面的概念,所以兩者之間沒有“區別”這個說法。不同編碼裡,字元和位元組的對應關係不同:

ASCII碼中,一個英文字母(不分大小寫)佔一個位元組的空間,一箇中文漢字佔兩個位元組的空間。一個二進位制數字序列,在計算機中作為一個數字單元,一般為8位二進位制數,換算為十進位制。最小值0,最大值255。

UTF-8編碼中,一個英文字元等於一個位元組,一箇中文(含繁體)等於三個位元組。

Unicode編碼中,一個英文等於兩個位元組,一箇中文(含繁體)等於兩個位元組。

符號:英文標點佔一個位元組,中文標點佔兩個位元組。舉例:英文句號“.”佔1個位元組的大小,中文句號“。”佔2個位元組的大小。

UTF-16編碼中,一個英文字母字元或一個漢字字元儲存都需要2個位元組(Unicode擴充套件區的一些漢字儲存需要4個位元組)。

UTF-32編碼中,世界上任何字元的儲存都需要4個位元組。