ISO-8859 字元編碼矩陣已就緒

ASCII 字元對照表

完整的 ASCII 字元查詢對照工具。涵蓋 0–255 所有代碼,支援 Decimal、Hex、Binary、Unicode 即時搜尋,內建文字轉換器、收藏與最近查詢功能。

ASCII 轉換器 支援 Decimal / Hex / Binary / Octal 互轉
輸入格式:
輸入內容後點擊轉換...
輸出格式:
常用控制字元
ASCII 字元表 128 筆

ASCII 是什麼?

ASCII(American Standard Code for Information Interchange,美國資訊交換標準代碼)是電腦系統中最基礎的字元編碼標準。它使用 7 位元(bit)表示 128 個字元,包含英文字母(A-Z, a-z)、數字(0-9)、標點符號及控制字元。

ASCII 編碼於 1963 年首次發布,最初是為電報通訊設計的。由於其簡單、通用,至今仍是所有現代文字編碼系統(如 Unicode、UTF-8)的基礎。

重點: ASCII 只用了 7 位元(0–127),因為早期通訊線路一次只能傳送 7 位元資料,第 8 位元通常被用作奇偶校驗。

ASCII 與 Unicode 的差異

比較項目 ASCII Unicode
位元數7 位元可變(UTF-8, UTF-16, UTF-32)
字元數128(基本)超過 149,000 個
語言支援僅英文全球所有語言 + 表情符號
相容性前向相容 ASCII(UTF-8)
發佈年份19631991
應用場景舊系統、嵌入式、純英文網頁、現代應用、多語言

LF、CR、CRLF 差異

這三種都是「換行」符號,但不同作業系統使用不同慣例:

符號 數值 使用系統 說明
LF10 (0x0A)Linux / macOSLine Feed,游標下移一行
CR13 (0x0D)Classic Mac (OS 9)Carriage Return,游標回到行首
CRLF13 10 (0x0D 0x0A)Windows回車 + 換行,兩者組合

Git 可以在 .gitattributes 中設定自動轉換不同平台的換行符號。

為什麼 ASCII 只有 128 個字元?

ASCII 使用 7 位元編碼,2⁷ = 128,因此最多只能表示 128 個字元。原因如下:

  • 歷史限制:1960 年代的通訊設備使用 7 位元傳輸,第 8 位元保留為奇偶校驗位(parity bit),用於基本的錯誤檢測。
  • 成本考量:當時記憶體和儲存空間極其昂貴,7 位元已經足夠涵蓋所有英文字母、數字和基本符號。
  • 設計目標:ASCII 只為英文設計,不需要容納其他語系的字元。

後來為了解決 128 個字元不夠用的問題,出現了延伸 ASCII(Extended ASCII, 128–255),以及最終的 Unicode 標準。

ASCII 常見 FAQ

什麼是 Extended ASCII(延伸 ASCII)?
Extended ASCII 是將標準 ASCII(0–127)擴展到 8 位元(128–255)的編碼方式。但由於沒有統一標準,不同系統(如 IBM PC、Apple Mac)使用不同的 Code Page(代碼頁),導致同一個 128–255 的數值在不同系統上可能顯示不同字元。常見的 Code Page 包含 Windows-1252、ISO-8859-1(Latin-1)等。
ASCII 和 UTF-8 有什麼關係?
UTF-8 是 Unicode 的一種編碼方式,它完全向後相容 ASCII。也就是說,所有 ASCII 字元(0–127)在 UTF-8 中的編碼與 ASCII 完全相同(只需要 1 個位元組)。因此,任何有效的 ASCII 文字同時也是有效的 UTF-8 文字。這就是為什麼 UTF-8 成為網際網路最主流的編碼方式。
如何查詢一個字元的 ASCII 值?
可以使用多種方法:
1. 程式語言:'A'.charCodeAt(0)(JavaScript)或 ord('A')(Python)
2. 在本工具的「ASCII 轉換器」中直接輸入文字即可看到對應的十進位數值
3. 在本工具的搜尋框中輸入字元即可找到對應的所有編碼資訊
ASCII 中的控制字元有什麼用途?
控制字元(0–31)在現代系統中大多已不再直接使用,但它們在歷史上和特定場景中仍然重要:
- NUL (0):C 語言的字串終止符
- BEL (7):終端機發出嗶聲
- BS (8):退格鍵
- TAB (9):製表符(縮排)
- LF (10):Unix/Linux 換行
- CR (13):回車
- ESC (27):Escape 鍵,常用於終端機控制序列
- DEL (127):刪除鍵

這些字元在網路協定、序列通訊、印表機控制等領域仍然活躍。
什麼是 Code Page(代碼頁)?
Code Page 是 IBM 和 Microsoft 定義的字元編碼表,用於指定 128–255 範圍(Extended ASCII)的顯示方式。不同語言使用不同的 Code Page,例如:
- CP437:IBM PC 原始代碼頁(包含框線繪製字元)
- Windows-1252:西歐語系(取代 ISO-8859-1)
- CP850:Latin-1(用於 DOS)
在 Unicode 普及之前,Code Page 是處理多國語言的唯一方式。
什麼是 NUL 字元 (0x00)?
NUL(Null character)是 ASCII 碼 0 的控制字元。它不代表「空白」或「空格」,而是表示「無字元」。在 C 語言中,NUL 被用作字串的結尾標記(null-terminator)。在二進位檔案中,NUL 常被用作填充(padding)或分隔符。注意不要與 C 語言的 NULL(空指標)混淆,兩者完全不同。
為什麼 'A' 是 65?這不是隨便定的嗎?
ASCII 的編碼順序是有邏輯的:
- 數字 (0–9):編碼 48–57(0x30–0x39),方便程式可以透過減去 48 快速轉換為數值
- 大寫字母 (A–Z):編碼 65–90(0x41–0x5A)
- 小寫字母 (a–z):編碼 97–122(0x61–0x7A)

大小寫字母之間固定相差 32(0x20),這讓大小寫轉換只需要 bit 運算:小寫 = 大寫 | 0x20,大寫 = 小寫 & ~0x20。這種設計在早期記憶體和 CPU 資源極度有限的時代非常關鍵。
操作成功