American Standard Code for Information Interconnection--美國信息交換标準代碼
因為計算機隻識别0和1,ASCII碼是為了建立英文字符與二進制的映射關系,而制定的編碼規範.
●它用一個字節(8位寬度)來表示一個英文字符,字節的最高位統一規定為0,剩餘7位用來存儲數據,表示字符. 所以ASCII碼能表示128個字符(2的7次方=128,)也就是0-127字段.其中包括英文字符,阿拉伯數字,西文字符以及32個控制字符.
ASCII碼編碼的字符太少,後來為了加入其它西文字符的編碼,又有了擴展的ASCII編碼
●擴展的ASCII編碼,實在原來ASCII碼的基礎上,把字節的最高位原本統一設置為0的,也用來存儲字符數據,所以就能表示256個英文字符(0-255).很多國家擴展的ASCII碼不統一,導緻無法通用.0-127字段對應的字符和ASCII碼一樣,各個國家都是統一的.但是擴展的部分156-255字段映射的字符就不相同了.
下面給出了部分ASCII表.
ascii
ascii
由于ASCII編碼方式包含的字符太少,基本隻對英文字符進行了編碼.
中國用GB2312等對簡體漢字進行了編碼.别的國家也有自己的編碼方式.
為了方便交流,防止亂碼,Unicode編碼方式應運而生.
Unicode編碼被稱為萬國碼,單一碼,統一碼.它是為每種語言的每個字符都設定了統一的,唯一的二進制編碼,以滿足跨語言,跨平台進行文本交換和處理的需求,是計算機科學領域的一項業界标準.
Unicode編碼用兩個字節來存儲一個字符,所以它最大可以對65536個字符(2的16次方)進行編碼.它包含了世界上所有的字符,每個字符都是用獨一無二的二進制表示.
●用Unicode對英文進行編碼,相對于ASCII編碼來說,會更占用空間.Unicode使用兩個字節存儲,英文存儲隻需要占用一個字節,用Unicode編碼,就會在多出的一個字節上全部置零.這就造成了空間浪費.于是就有了UTF-8編碼
(8-bit Unicode Transformation format)它是Unicode的實現方式,是一種可變字節的編碼方式,用1-4個字節來表示一個字符.對英文就使用一個字節來表示.對漢字就使用兩個字節來表示.有更複雜的字符就用3-4個字節來表示.
●半角逗号與全角逗号有什麼卻别呢??
半角逗号用在英文環境中,和英文字符一樣占用一個字節.全角逗号用在漢語環境中,和漢字字符一樣占用兩個字符.
●在windows環境中,編程中的
'\r':(Carriage Return回車)表示回到當前行的行首,而不是換到下一行.
'\n':(換行 Line Feed)表示換到當前位置的下一行,而不是回到行首.
有話要說...