一、計算機存儲中符號占用字節空間大小的依據
計算機存儲中符號占用字節空間大小的依據是二進制。計算機中不管存儲什么信息,都是二進制的,也就是0,1而已。信息量越大所需的數位越多。但是漢字動輒上萬,如此大的信息量想用數位映射就必須擴大位數。一個字符的ASCII碼占用存儲空間為1個字節。在ASCII碼表中,根據碼值由小到大的排列順序是:控制符、數字符、大寫英文字母、小寫英文字母。ASCII碼是西文編碼,主要用于顯示現代英語和其他西歐語言,一個碼占一個字節。
ASCII 碼使用指定的7 位或8 位二進制數組合來表示128 或256 種可能的字符。標準ASCII 碼也叫基礎ASCII碼,使用7 位二進制數(剩下的1位二進制為0)來表示所有的大寫和小寫字母,數字0 到9、標點符號,以及在美式英語中使用的特殊控制字符。其中:
0~31及127(共33個)是控制字符或通信專用字符(其余為可顯示字符)如控制符:LF(換行)、CR(回車)、FF(換頁)、DEL(刪除)、BS(退格)、BEL(響鈴)等;通信專用字符:SOH(文頭)、EOT(文尾)、ACK(確認)等;ASCII值為8、9、10 和13 分別轉換為退格、制表、換行和回車字符。它們并沒有特定的圖形顯示,但會依不同的應用程序,而對文本顯示有不同的影響 。32~126(共95個)是字符(32是空格),其中48~57為0到9十個阿拉伯數字。65~90為26個大寫英文字母,97~122號為26個小寫英文字母,其余為一些標點符號、運算符號等。同時還要注意,在標準ASCII中,其較高位(b7)用作奇偶校驗位。所謂奇偶校驗,是指在代碼傳送過程中用來檢驗是否出現錯誤的一種方法,一般分奇校驗和偶校驗兩種。奇校驗規定:正確的代碼一個字節中1的個數必須是奇數,若非奇數,則在較高位b7添1;偶校驗規定:正確的代碼一個字節中1的個數必須是偶數,若非偶數,則在較高位b7添1 。
后128個稱為擴展ASCII碼。許多基于x86的系統都支持使用擴展(或“高”)ASCII。擴展ASCII 碼允許將每個字符的第8 位用于確定附加的128 個特殊符號字符、外來語字母和圖形符號。
延伸閱讀:
二、“字節”與“字符”
它們完全不是一個位面的概念,所以兩者之間沒有“區別”這個說法。不同編碼里,字符和字節的對應關系不同:
①ASCII碼中,一個英文字母(不分大小寫)占一個字節的空間,一個中文漢字占兩個字節的空間。一個二進制數字序列,在計算機中作為一個數字單元,一般為8位二進制數,換算為十進制。最小值0,最大值255。
②UTF-8編碼中,一個英文字符等于一個字節,一個中文(含繁體)等于三個字節。
③Unicode編碼中,一個英文等于兩個字節,一個中文(含繁體)等于兩個字節。
符號:英文標點占一個字節,中文標點占兩個字節。舉例:英文句號“.”占1個字節的大小,中文句號“。”占2個字節的大小。
④UTF-16編碼中,一個英文字母字符或一個漢字字符存儲都需要2個字節(Unicode擴展區的一些漢字存儲需要4個字節)。
⑤UTF-32編碼中,世界上任何字符的存儲都需要4個字節。