一,通用的ASCII碼對照表
圖解ASCII碼對照表圖,以字元A為例
Dec表示十進位,如65
Hx表示十六進位,如41
Oct表示八進位,如101
Char表示顯示字元,如A
ASCII碼對照表圖分為兩個單元
1,控制字元 0-31和127
2,可顯示字元 32-126
(1)48~57為0到9十個阿拉伯數字;
(2)65~90為26個大寫英文字母;
(3)97~122號為26個小寫英文字母;
(4)其它標點符號、運算子號等;
二,ASCII擴充碼對照表
三,PHP字元轉換函式說明
具體字元轉換函式說明請參考[PHP函數篇詳解十進位、二進位、八進位和十六進位轉換函式說明]
十進位轉二進位 decbin() 函數
十進位轉八進位 decoct() 函數
十進位轉十六進位 dechex() 函數
二進位轉十六制進 bin2hex() 函數
二進位轉十制進 bindec() 函數
八進位轉十進位 octdec() 函數
十六進位轉十進位 hexdec()函數
任意進位轉換 base_convert() 函數
字元轉換執行個體
執行個體一,如何把一個字元轉換為二進位、八進位或十六進位,可以使用ord()函數先把字元轉換為ASCII值,然後使用相應的進位轉換函式進行轉換,如下
a 這個字元轉換為其二進位/八進位/十六進位,如下
a字元的十進位:ord('a'); //輸出97
二進位:decbin(ord('a')); //輸出1100001
八進位:decoct(ord('a')); //輸出141
十六進位:dechex(ord('a')); //輸出61
然後可以通過把各進位輸出的結果對應上面ASCII碼對照表圖進行核對。
執行個體二,如何把一個二進位轉換為十六進位或十進位,如a的二進位,如下
採用執行個體一的方法擷取a字元的二進位
decbin(ord('a'));
然後把二進位轉換為十六進位或十進位
十六進位:bin2hex(decbin(ord('a')));//輸出31313030303031
二進位J:bindec(decbin(ord('a'))); //輸出97
上面討論的ord()函數,將在下一期中文字元編碼研究系列中詳細討論。
四,參考資料
PHP函數篇詳解十進位、二進位、八進位和十六進位轉換函式說明
asciitable對照表圖
維基百科ASCII
百度百科ASCII