🔧Toolify

ASCII字元表 — 十進位·十六進位·二進位·八進位

瀏覽全部128個ASCII碼(0–127)的十進位、十六進位、八進位和二進位表示。控制字元(0–31、127)高亮顯示,並標註標準縮寫和全稱。可篩選僅顯示可列印字元或控制碼,支援按十進位數、hex值或字元搜尋。

十進位Hex字元說明
00x00NULNUL — Null
10x01SOHSOH — Start of Heading
20x02STXSTX — Start of Text
30x03ETXETX — End of Text
40x04EOTEOT — End of Transmission
50x05ENQENQ — Enquiry
60x06ACKACK — Acknowledge
70x07BELBEL — Bell
80x08BSBS — Backspace
90x09HTHT — Horizontal Tab
100x0ALFLF — Line Feed
110x0BVTVT — Vertical Tab
120x0CFFFF — Form Feed
130x0DCRCR — Carriage Return
140x0ESOSO — Shift Out
150x0FSISI — Shift In
160x10DLEDLE — Data Link Escape
170x11DC1DC1 — Device Control 1 (XON)
180x12DC2DC2 — Device Control 2
190x13DC3DC3 — Device Control 3 (XOFF)
200x14DC4DC4 — Device Control 4
210x15NAKNAK — Negative Acknowledge
220x16SYNSYN — Synchronous Idle
230x17ETBETB — End of Transmission Block
240x18CANCAN — Cancel
250x19EMEM — End of Medium
260x1ASUBSUB — Substitute
270x1BESCESC — Escape
280x1CFSFS — File Separator
290x1DGSGS — Group Separator
300x1ERSRS — Record Separator
310x1FUSUS — Unit Separator
320x20 SP — Space
330x21!
340x22"
350x23#
360x24$
370x25%
380x26&
390x27'
400x28(
410x29)
420x2A*
430x2B+
440x2C,
450x2D-
460x2E.
470x2F/
480x300
490x311
500x322
510x333
520x344
530x355
540x366
550x377
560x388
570x399
580x3A:
590x3B;
600x3C<
610x3D=
620x3E>
630x3F?
640x40@
650x41A
660x42B
670x43C
680x44D
690x45E
700x46F
710x47G
720x48H
730x49I
740x4AJ
750x4BK
760x4CL
770x4DM
780x4EN
790x4FO
800x50P
810x51Q
820x52R
830x53S
840x54T
850x55U
860x56V
870x57W
880x58X
890x59Y
900x5AZ
910x5B[
920x5C\
930x5D]
940x5E^
950x5F_
960x60`
970x61a
980x62b
990x63c
1000x64d
1010x65e
1020x66f
1030x67g
1040x68h
1050x69i
1060x6Aj
1070x6Bk
1080x6Cl
1090x6Dm
1100x6En
1110x6Fo
1120x70p
1130x71q
1140x72r
1150x73s
1160x74t
1170x75u
1180x76v
1190x77w
1200x78x
1210x79y
1220x7Az
1230x7B{
1240x7C|
1250x7D}
1260x7E~
1270x7FDELDEL — Delete

正在顯示128個ASCII碼中的 128 個

運作原理

什麼是ASCII?

ASCII(American Standard Code for Information Interchange,美國資訊交換標準碼)是一種於1963年首次發布的字元編碼標準。它定義了128個字元:33個不可列印控制字元(編碼0–31和127)和95個可列印字元(編碼32–126),包括英文大小寫字母、數字0–9以及常用標點符號。ASCII成為幾乎所有現代文字編碼的基礎,包括UTF-8——後者與ASCII在前128個碼位上保持向下相容。

每個ASCII字元被賦予一個7位元整數值,這也是該表止於127(2⁷ − 1)的原因。在8位元位元組中儲存時,標準ASCII的最高位通常為0。擴充ASCII範圍(128–255)並未由原始規格標準化,因代碼頁而異——ISO 8859-1、Windows-1252等編碼分別為位元組的高位半段定義了不同的字元集。

控制字元(0–31和127)

前32個ASCII碼和第127號碼是繼承自電傳打字機慣例的不可列印控制字元。大多數在現代運算中已經過時,但仍有幾個保持重要地位:第9號(HT,水平定位字元)、第10號(LF,換行符,即Unix/Linux的換行)、第13號(CR,歸位符,在Windows行尾中以CR+LF形式使用)、第27號(ESC,逃逸符,用於終端機逸出序列)以及第127號(DEL)。這些字元不以可見字形呈現。

在類Unix系統中,可在終端機透過按住Ctrl並按下對應字母來產生控制字元:Ctrl+A = SOH (1)、Ctrl+C = ETX (3,發送中斷訊號)、Ctrl+D = EOT (4,表示輸入結束)、Ctrl+J = LF (10)、Ctrl+M = CR (13)、Ctrl+Z = SUB (26,在Unix中暫停處理程序)。理解這些碼對於底層I/O、終端機控制序列及網路協定實作至關重要。

ASCII在程式設計和Web開發中的應用

在JavaScript中,可使用charCodeAt(0)取得字元的ASCII碼:'A'.charCodeAt(0)回傳65。反向轉換使用String.fromCharCode(65)可得到'A'。在Python中,ord('A')回傳65,chr(65)回傳'A'。在C語言中,char值為整數,可直接用於算術運算:'A' + 1等於'B'。

ASCII值是許多常見程式設計模式的基礎。大寫字母與小寫字母之間的差值始終為32:'a'(97)= 'A'(65)+ 32。數字0–9對應編碼48–57,因此將數字字元的ASCII值減去48即可得到其數值。URL編碼將不安全字元表示為%XX(XX為十六進位ASCII碼),因此本表對除錯URL編碼字串和HTTP標頭不可或缺。

常見問題

Enter鍵/換行的ASCII碼是多少?

換行符(LF)的ASCII碼為10(0x0A)。在Unix/Linux/macOS中,換行僅用LF表示。在Windows中,換行用CR+LF(第13和10號碼,即0x0D 0x0A)表示。歸位符的編碼為13(0x0D,CR)。撰寫跨平台文字處理程式碼時,請務必同時處理LF和CR+LF兩種行尾格式。

空格字元的ASCII碼是多少?

空格字元的ASCII碼為32(0x20,SP),是ASCII中第一個可列印字元。不換行空格(HTML中用&nbsp;表示)不屬於標準7位元ASCII——其編碼在ISO 8859-1中為160(0xA0),在UTF-8中編碼為0xC2 0xA0(兩個位元組)。

ASCII、UTF-8和Unicode有什麼區別?

ASCII用7位元碼定義了128個字元。Unicode是定義了14萬餘個字元的通用標準,碼位最高至U+10FFFF。UTF-8是Unicode的可變長編碼:將ASCII字元(0–127)編碼為單一位元組,從而與ASCII向下相容。127以上的字元在UTF-8中需要2至4個位元組。現代文字系統使用UTF-8或UTF-16,但ASCII在協定標頭、檔案格式和舊有系統中仍至關重要。

在JavaScript中如何取得字元的ASCII碼?

使用charCodeAt(0):'A'.charCodeAt(0)回傳65。對於超過65535的Unicode碼位,請使用codePointAt(0)。將碼值轉回字元:String.fromCharCode(65)回傳'A'。完整Unicode支援:String.fromCodePoint(128512)回傳😀表情符號。

ASCII碼0(NUL)有什麼作用?

NUL(編碼0)是空字元。在C語言及許多其他語言中用作字串終止符——字串'Hello'在記憶體中儲存為位元組序列72、101、108、108、111、0。在資料庫和檔案格式中,NUL可作為欄位分隔符或填補位元組出現。大多數文字編輯器和終端機中,NUL不可見且被忽略,但將二進位檔案作為文字讀取時可能引發問題。

Escape字元(ASCII 27)是什麼?

ESC(編碼27,0x1B)是逸出字元。它是ANSI/VT100逸出序列的起始符,用於控制終端機顏色和游標移動。例如,序列ESC[31m將終端機文字顏色改為紅色。在許多應用程式中,按下Escape鍵會發送此字元。它也用於各種資料格式和通訊協定中。

為什麼大寫字母A的ASCII碼是65,小寫a是97?

ASCII表的設計使大寫字母(A=65、B=66、…、Z=90)與小寫字母(a=97、b=98、…、z=122)恰好相差32。這樣只需一次加減運算即可在大小寫之間轉換。ASCII中大寫轉小寫:加32(或將第5位置1);小寫轉大寫:減32(或將第5位清0)。這就是C語言中位元運算大小寫轉換有效的原因:char lower = upper | 0x20。

CR、LF和CRLF有什麼區別?

CR(Carriage Return,編碼13)和LF(Line Feed,編碼10)源自打字機和電傳打字機的慣例。CR將列印頭移至行首,LF前進至下一行。Unix/Linux僅使用LF作為換行符。Windows使用CR+LF(兩者組合)。經典Mac OS(OS X之前)僅使用CR。大多數現代解析器均能處理這三種格式,但在原始碼檔案中混用行尾格式會導致版本控制diff和某些文字處理器出現問題。

相關工具

最後更新:

看看 AI 提示詞 →