ASCII碼對照表【2024年匯總】

🍺ASCII相關文章匯總如下🍺:

  • 🎈ASCII碼對照表(255個ascii字符匯總)🎈
  • 🎈ASCII碼對照表(Unicode 字符集列表)🎈
  • 🎈ASCII碼對照表(emoji表情符號)🎈
  • 🎈ASCII碼對照表(Python代碼實現打印)🎈
  • 🎈ASCII碼對照表(C++17 實現ANSI、UTF8、Unicode編碼互轉)🎈
  • 🎈ASCII碼對照表(HTML顏色代碼表)🎈
  • 🎈ASCII碼對照表(Matplotlib顏色對照表)🎈
  • 🎈ASCII碼對照表【2024年匯總】🎈

文章目錄

  • 1、簡介
  • 2、表格形式
  • 3、圖片形式
  • 4、常用轉義字符
  • 5、ASCII、Unicode 和 UTF-8 之間的關系
    • 5.1 ASCII 編碼
    • 5.2 非 ASCII 編碼
    • 5.3 Unicode
    • 5.4 UTF-8
    • 5.5 Little endian 和 Big endian
  • 結語

1、簡介

ASCII(發音:,American Standard Code for Information Interchange,美國信息交換標準代碼)是基于拉丁字母的一套電腦編碼系統。它主要用于顯示現代英語,而其擴展版本延伸美國標準信息交換碼則可以部分支持其他西歐語言,并等同于國際標準ISO/IEC 646。

ASCII 由電報碼發展而來。第一版標準發布于1963年 ,1967年經歷了一次主要修訂[5][6],最后一次更新則是在1986年,至今為止共定義了128個字符;其中33個字符無法顯示(一些終端提供了擴展,使得這些字符可顯示為諸如笑臉、撲克牌花式等8-bit符號),且這33個字符多數都已是陳廢的控制字符。控制字符的用途主要是用來操控已經處理過的文字。在33個字符之外的是95個可顯示的字符。用鍵盤敲下空白鍵所產生的空白字符也算1個可顯示字符(顯示為空白)。

  • 1、ASCII碼 是現今最通用的單字節編碼系統,并等同于國際標準ISO/IEC 646 。在這個頁面,你可以找到8位的256個字符、ASCII碼表和Windows-1252 (code page 1252,它是國際標準ISO 8859-1的一個擴展字符集) 標準保持一致;
  • 2、ASCII碼 是 American Standard Code for Information Interchange 的縮寫,而不是ASCⅡ(羅馬數字2),有很多人在這個地方產生誤解;
  • 3、ASCII碼 規范于1967年第一次發布,最后一次更新是在1986年,它包含了33個控制字符(具有某些特殊功能但是無法顯示的字符)和95個可顯示字符;

ASCII ,它的全稱是"美國信息交換標準代碼"。它設計于60年代早期,是計算機和諸如打印機、磁帶驅動器之類的硬件設備的標準字符集。
ASCII 是 7 比特字符集,包含了 128 個不同的字符值。
ASCII 支持 0-9 的數字,A-Z大寫和小寫英文字母,以及一些特殊字符。
被廣泛使用于現代計算機、HTML和因特網上的字符集都是基于 ASCII 。

ASCII英文全稱:American Standard Code for Information Interchange,即:美國信息交換標準代碼,是基于拉丁字母的一套電腦編碼系統,主要用于顯示現代英語和其他西歐語言。它是最通用的信息交換標準,并等同于國際標準ISO/IEC 646。ASCII第一次以規范標準的類型發表是在1967年,1986年定義了常用的128個字符。
ASCII碼對照表中文發音為阿斯克碼表,標準ASCII碼表通常作為各種符號的16進制對照表使用,但通常講的ASCII碼其實是指ASCII碼的十進制值。比如:字母a的ascii碼值為97,空格的ascii碼值為32。

這里匯集了最完整的ASCII碼對照表,包含32個字符的ASCII控制字符對照表(即非打印字符對照表)、96個字符的ASCII打印字符對照表、128個字符的ASCII擴展字符對照表。覆蓋了常用的128個字符和128個擴展字符。常用的128個字符,對應ASCII十六進制編碼范圍為0x00-0x7F,即十進制的0-127,包含32個非打印控制字符和96個打印字符,打印字符包括可顯示字符(數字、字母、符號)和空格及刪除命令。

2、表格形式

0~31 之間的ASCII碼常用于控制像打印機一樣的外圍設備。

十進制
DEC
八進制
OCT
十六進制
HEX
二進制
BIN
符號
Symbol
HTML
實體編碼
中文解釋
Description
英文解釋
Description
00000000000000NUL�空字符 終止符Null char
10010100000001SOH標題開始Start of Heading
20020200000010STX正文開始Start of Text
30030300000011ETX正文結束End of Text
40040400000100EOT傳輸結束End of Transmission
50050500000101ENQ詢問Enquiry
60060600000110ACK收到通知Acknowledgment
70070700000111BELBell
80100800001000 BS退格Back Space
90110900001001 HT	水平制表符Horizontal Tab
100120A00001010 LF
換行符 \nLine Feed
110130B00001011 VT垂直制表符Vertical Tab
120140C00001100 FF換頁符Form Feed
130150D00001101 CR
回車符 \rCarriage Return
140160E00001110 SO移出Shift Out / X-On
150170F00001111 SI移入Shift In / X-Off
160201000010000DLE數據鏈路轉義Data Line Escape
170211100010001DC1設備控制 1Device Control 1 (oft. XON)
180221200010010DC2設備控制 2Device Control 2
190231300010011DC3設備控制 3Device Control 3 (oft. XOFF)
200241400010100DC4設備控制 4Device Control 4
210251500010101NAK拒絕接收Negative Acknowledgement
220261600010110SYN同步空閑Synchronous Idle
230271700010111ETB傳輸塊結束End of Transmit Block
240301800011000CAN取消Cancel
250311900011001 EM介質中斷End of Medium
260321A00011010SUB替換Substitute
270331B00011011ESC換碼符Escape
280341C00011100 FS文件分隔符File Separator
290351D00011101 GS組分隔符Group Separator
300361E00011110 RS記錄分離符Record Separator
310371F00011111 US單元分隔符Unit Separator
十進制 32~127 區間一共 127-32+1=96 個ASCII碼表示的符號,在我們的鍵盤上都可以被找到。其中:32表示空格,127表示刪除命令。
十進制
DEC
八進制
OCT
十六進制
HEX
二進制
BIN
符號
Symbol
HTML
實體編碼
中文解釋
Description
英文解釋
Description
320402000100000? 空格Space
330412100100001!!感嘆號Exclamation mark
340422200100010""雙引號Double quotes (or speech marks)
350432300100011##井號Number
360442400100100$$美元符Dollar
370452500100101%%百分號Per cent sign
380462600100110&&Ampersand
390472700100111''單引號Single quote
400502800101000((左括號Open parenthesis (or open bracket)
410512900101001))右括號Close parenthesis (or close bracket)
420522A00101010**星號Asterisk
430532B00101011++加號Plus
440542C00101100,,逗號Comma
450552D00101101--連字號或減號Hyphen
460562E00101110..句點或小數點Period, dot or full stop
470572F00101111//斜杠Slash or divide
480603000110000000Zero
490613100110001111One
500623200110010222Two
510633300110011333Three
520643400110100444Four
530653500110101555Five
540663600110110666Six
550673700110111777Seven
560703800111000888Eight
570713900111001999Nine
580723A00111010::冒號Colon
590733B00111011;&#059;分號Semicolon
600743C00111100<&#060;小于Less than (or open angled bracket)
610753D00111101=&#061;等號Equals
620763E00111110>&#062;大于Greater than (or close angled bracket)
630773F00111111?&#063;問號Question mark
641004001000000@&#064;電子郵件符號At symbol
651014101000001A&#065;大寫字母 AUppercase A
661024201000010B&#066;大寫字母 BUppercase B
671034301000011C&#067;大寫字母 CUppercase C
681044401000100D&#068;大寫字母 DUppercase D
691054501000101E&#069;大寫字母 EUppercase E
701064601000110F&#070;大寫字母 FUppercase F
711074701000111G&#071;大寫字母 GUppercase G
721104801001000H&#072;大寫字母 HUppercase H
731114901001001I&#073;大寫字母 IUppercase I
741124A01001010J&#074;大寫字母 JUppercase J
751134B01001011K&#075;大寫字母 KUppercase K
761144C01001100L&#076;大寫字母 LUppercase L
771154D01001101M&#077;大寫字母 MUppercase M
781164E01001110N&#078;大寫字母 NUppercase N
791174F01001111O&#079;大寫字母 OUppercase O
801205001010000P&#080;大寫字母 PUppercase P
811215101010001Q&#081;大寫字母 QUppercase Q
821225201010010R&#082;大寫字母 RUppercase R
831235301010011S&#083;大寫字母 SUppercase S
841245401010100T&#084;大寫字母 TUppercase T
851255501010101U&#085;大寫字母 UUppercase U
861265601010110V&#086;大寫字母 VUppercase V
871275701010111W&#087大寫字母 WUppercase W
881305801011000X&#088;大寫字母 XUppercase X
891315901011001Y&#089;大寫字母 YUppercase Y
901325A01011010Z&#090;大寫字母 ZUppercase Z
911335B01011011[&#091;左中括號Opening bracket
921345C01011100\&#092;反斜杠Backslash
931355D01011101]&#093;右中括號Closing bracket
941365E01011110^&#094;音調符號Caret - circumflex
951375F01011111_&#095;下劃線Underscore
961406001100000`&#096;重音符Grave accent
971416101100001a&#097;小寫字母 aLowercase a
981426201100010b&#098;小寫字母 bLowercase b
991436301100011c&#099;小寫字母 cLowercase c
1001446401100100d&#100;小寫字母 dLowercase d
1011456501100101e&#101;小寫字母 eLowercase e
1021466601100110f&#102;小寫字母 fLowercase f
1031476701100111g&#103;小寫字母 gLowercase g
1041506801101000h&#104;小寫字母 hLowercase h
1051516901101001i&#105;小寫字母 iLowercase i
1061526A01101010j&#106;小寫字母 jLowercase j
1071536B01101011k&#107;小寫字母 kLowercase k
1081546C01101100l&#108;小寫字母 lLowercase l
1091556D01101101m&#109;小寫字母 mLowercase m
1101566E01101110n&#110;小寫字母 nLowercase n
1111576F01101111o&#111;小寫字母 oLowercase o
1121607001110000p&#112;小寫字母 pLowercase p
1131617101110001q&#113;小寫字母 qLowercase q
1141627201110010r&#114;小寫字母 rLowercase r
1151637301110011s&#115;小寫字母 sLowercase s
1161647401110100t&#116;小寫字母 tLowercase t
1171657501110101u&#117;小寫字母 uLowercase u
1181667601110110v&#118;小寫字母 vLowercase v
1191677701110111w&#119;小寫字母 wLowercase w
1201707801111000x&#120;小寫字母 xLowercase x
1211717901111001y&#121;小寫字母 yLowercase y
1221727A01111010z&#122;小寫字母 zLowercase z
1231737B01111011{&#123;左大括號Opening brace
1241747C01111100|&#124;垂直線Vertical bar
1251757D01111101}&#125;右大括號Closing brace
1261767E01111110~&#126;波浪號Equivalency sign - tilde
1271777F01111111&#127;刪除Delete
后128個稱為擴展ASCII碼。許多基于x86的系統都支持使用擴展(或“高”)ASCII。擴展ASCII碼允許將每個字符的第8 位用于確定附加的128 個特殊符號字符、外來語字母和圖形符號。
十進制
DEC
八進制
OCT
十六進制
HEX
二進制
BIN
符號
Symbol
HTML
實體編碼
中文解釋
Description
英文解釋
Description
1282008010000000&#128;歐盟符號Euro sign
1292018110000001???
1302028210000010?&#130;單低 9 引號Single low-9 quotation mark
1312038310000011?&#131;帶鉤的
拉丁小寫字母f
Latin small letter f with hook
1322048410000100?&#132;雙低 9 引號Double low-9 quotation mark
1332058510000101&#133;水平省略號Horizontal ellipsis
1342068610000110?&#134;劍號Dagger
1352078710000111?&#135;雙劍號Double dagger
1362108810001000?&#136;修正字符
抑揚音符號
Modifier letter circumflex accent
1372118910001001&#137;千分號Per mille sign
1382128A10001010?&#138;帶彎音號的
拉丁大寫字母 S
Latin capital letter S with caron
1392138B10001011?&#139;左單書名號Single left-pointing angle quotation
1402148C10001100?&#140;拉丁大寫組合 OELatin capital ligature OE
1412158D10001101???
1422168E10001110?&#142;帶彎音號的
拉丁大寫字母 z
Latin capital letter Z with caron
1432178F10001111???
1442209010010000???
1452219110010001&#145;左單引號Left single quotation mark
1462229210010010&#146;右單引號Right single quotation mark
1472239310010011&#147;左雙引號Left double quotation mark
1482249410010100&#148;右雙引號Right double quotation mark
1492259510010101?&#149;?Bullet
1502269610010110&#150;半長破折號En dash
1512279710010111&#151;全長破折號Em dash
1522309810011000?&#152;小波浪線Small tilde
1532319910011001?&#153;?Trade mark sign
1542329A10011010?&#154;帶彎音號的
拉丁小寫字母 s
Latin small letter s with caron
1552339B10011011?&#155;右單書名號Single right-pointing
angle quotation mark
1562349C10011100?&#156;拉丁小寫組合 oeLatin small ligature oe
1572359D10011101???
1582369E10011110?&#158;帶彎音號的
拉丁小寫字母 z
Latin small letter z with caron
1592379F10011111?&#159;帶彎音號的
拉丁大寫字母 Y
Latin capital letter Y with diaeresis
160240A010100000?&#160;?Non-breaking space
161241A110100001?&#161;反向感嘆號Inverted exclamation mark
162242A210100010&#162;分幣符號Cent sign
163243A310100011&#163;英磅符號Pound sign
164244A410100100¤&#164;?Currency sign
165245A510100101&#165;人民幣符號Yen sign
166246A610100110|&#166;?Pipe, Broken vertical bar
167247A710100111§&#167;章節符號Section sign
168250A810101000¨&#168;通用貨幣符號Spacing diaeresis - umlaut
169251A910101001?&#169;版權符號Copyright sign
170252AA10101010a&#170;陰性順序
指示符號
Feminine ordinal indicator
171253AB10101011?&#171;左角引號Left double angle quotes
172254AC10101100?&#172;?Not sign
173255AD10101101-&#173;?Soft hyphen
174256AE10101110?&#174;?Registered trade mark sign
175257AF10101111ˉ&#175;?Spacing macron - overline
176260B010110000°&#176;溫度符號Degree sign
177261B110110001±&#177;加/減號Plus-or-minus sign
178262B2101100102&#178;上標 2Superscript two - squared
179263B3101100113&#179;上標 3Superscript three - cubed
180264B410110100&#180;?Acute accent - spacing acute
181265B510110101μ&#181;微符號Micro sign
182266B610110110?&#182;段落符號,
pilcrow
Pilcrow sign - paragraph sign
183267B710110111·&#183;中點Middle dot - Georgian comma
184270B810111000?&#184;?Spacing cedilla
185271B9101110011&#185;上標 1Superscript one
186272BA10111010o&#186;陽性順序
指示符
Masculine ordinal indicator
187273BB10111011?&#187;右角引號Right double angle quotes
188274BC10111100?&#188;分數四分之一Fraction one quarter
189275BD10111101?&#189;分數二分之一Fraction one half
190276BE10111110?&#190;?Fraction three quarters
191277BF10111111?&#191;反向問號Inverted question mark
192300C011000000à&#192;帶重音符
的大寫字母 A
Latin capital letter A with grave
193301C111000001á&#193;帶尖銳重音
的大寫字母 A
Latin capital letter A with acute
194302C211000010?&#194;帶音調符號
的大寫字母 A
Latin capital letter A with circumflex
195303C311000011?&#195;帶代字號
的大寫字母 A
Latin capital letter A with tilde
196304C411000100?&#196;帶元音變音
(分音符號)
的大寫字母 A
Latin capital letter A with diaeresis
197305C511000101?&#197;帶鈴聲
的大寫字母 A
Latin capital letter A with ring above
198306C611000110?&#198;大寫字母 AE
雙重元音
Latin capital letter AE
199307C711000111?&#199;帶變音符號
的大寫字母 C
Latin capital letter C with cedilla
200310C811001000è&#200;帶重音符
的大寫字母 E
Latin capital letter E with grave
201311C911001001é&#201;帶尖銳重音
的大寫字母 E
Latin capital letter E with acute
202312CA11001010ê&#202;帶音調符號
的大寫字母 E
Latin capital letter E with circumflex
203313CB11001011?&#203;帶元音變音
(分音符號)
的大寫字母 E
Latin capital letter E with diaeresis
204314CC11001100ì&#204;帶重音符
的大寫字母 I
Latin capital letter I with grave
205315CD11001101í&#205;帶尖銳重音
的大寫字母 I
Latin capital letter I with acute
206316CE11001110?&#206;帶音調符號
的大寫字母 I
Latin capital letter I with circumflex
207317CF11001111?&#207;帶元音變音
(分音符號)
的大寫字母 I
Latin capital letter I with diaeresis
208320D011010000D&#208;?Latin capital letter ETH
209321D111010001?&#209;帶代字號
的大寫字母 N
Latin capital letter N with tilde
210322D211010010ò&#210;帶重音符
的大寫字母 O
Latin capital letter O with grave
211323D311010011ó&#211;帶尖銳重音
的大寫字母 O
Latin capital letter O with acute
212324D411010100?&#212;帶音調符號
的大寫字母 O
Latin capital letter O with circumflex
213325D511010101?&#213;帶代字號
的大寫字母 O
Latin capital letter O with tilde
214326D611010110?&#214;帶元音變音
(分音符號)
的大寫字母 O
Latin capital letter O with diaeresis
215327D711010111×&#215;大寫字母
OE 連字
Multiplication sign
216330D811011000?&#216;帶斜杠
的大寫字母 O
Latin capital letter O with slash
217331D911011001ù&#217;帶重音符
的大寫字母 U
Latin capital letter U with grave
218332DA11011010ú&#218;帶尖銳重音
的大寫字母 U
Latin capital letter U with acute
219333DB11011011?&#219;帶音調符號
的大寫字母 U
Latin capital letter U with circumflex
220334DC11011100ü&#220;帶元音變音
(分音符號)
的大寫字母 U
Latin capital letter U with diaeresis
221335DD11011101Y&#221;帶元音變音
(分音符號)
的大寫字母 Y
Latin capital letter Y with acute
222336DE11011110T&#222;?Latin capital letter THORN
223337DF11011111?&#223;德語高調
小寫字母 s
Latin small letter sharp s - ess-zed
224340E011100000à&#224;帶重音符
的小寫字母 a
Latin small letter a with grave
225341E111100001á&#225;帶尖銳重音
的小寫字母 a
Latin small letter a with acute
226342E211100010a&#226;帶音調符號
的小寫字母 a
Latin small letter a with circumflex
227343E311100011?&#227;帶代字號
的小寫字母 a
Latin small letter a with tilde
228344E411100100?&#228;帶元音變音
(分音符號)
的小寫字母 a
Latin small letter a with diaeresis
229345E511100101?&#229;帶鈴聲的
小寫字母 a
Latin small letter a with ring above
230346E611100110?&#230;小寫字母 ae
雙重元音
Latin small letter ae
231347E711100111?&#231;帶變音符號
的小寫字母 c
Latin small letter c with cedilla
232350E811101000è&#232;帶重音符
的小寫字母 e
Latin small letter e with grave
233351E911101001é&#233;帶尖銳重音
的小寫字母 e
Latin small letter e with acute
234352EA11101010ê&#234;帶音調符號
的小寫字母 e
Latin small letter e with circumflex
235353EB11101011?&#235;帶元音變音
(分音符號)
的小寫字母 e
Latin small letter e with diaeresis
236354EC11101100ì&#236;帶重音符
的小寫字母 i
Latin small letter i with grave
237355ED11101101í&#237;帶尖銳重音
的小寫字母 i
Latin small letter i with acute
238356EE11101110?&#238;帶音調符號
的小寫字母 i
Latin small letter i with circumflex
239357EF11101111?&#239;帶元音變音
(分音符號)
的小寫字母 i
Latin small letter i with diaeresis
240360F011110000e&#240;?Latin small letter eth
241361F111110001?&#241;帶代字號
的小寫字母 n
Latin small letter n with tilde
242362F211110010ò&#242;帶重音符
的小寫字母 o
Latin small letter o with grave
243363F311110011ó&#243;帶尖銳重音
的小寫字母 o
Latin small letter o with acute
244364F411110100?&#244;帶音調符號
的小寫字母 o
Latin small letter o with circumflex
245365F511110101?&#245;帶代字號
的小寫字母 o
Latin small letter o with tilde
246366F611110110?&#246;帶元音變音
(分音符號)
的小寫字母 o
Latin small letter o with diaeresis
247367F711110111÷&#247;小寫字母 oe
連字
Division sign
248370F811111000?&#248;帶斜杠
的小寫字母 o
Latin small letter o with slash
249371F911111001ù&#249;帶重音符
的小寫字母 u
Latin small letter u with grave
250372FA11111010ú&#250;帶尖銳重音
的小寫字母 u
Latin small letter u with acute
251373FB11111011?&#251;帶音調符號
的小寫字母 u
Latin small letter u with circumflex
252374FC11111100ü&#252;帶元音變音
(分音符號)
的小寫字母 u
Latin small letter u with diaeresis
253375FD11111101y&#253;帶元音變音
(分音符號)
的小寫字母 y2
Latin small letter y with acute
254376FE11111110t&#254;?Latin small letter thorn
255377FF11111111?&#255;?Latin small letter y with diaeresis

3、圖片形式

  • 可顯示字符
    可顯示字符編號范圍是32-126(0x20-0x7E),共95個字符。
    在這里插入圖片描述
  • 控制字符
    ASCII控制字符的編號范圍是0-31和127(0x00-0x1F和0x7F),共33個字符。
    在這里插入圖片描述
  • 第一部分:ASCII非打印控制字符表
    ASCII表上的數字0–31分配給了控制字符,用于控制像打印機等一些外圍設備。
  • 第二部分:ASCII打印字符
    數字 32–126 分配給了能在鍵盤上找到的字符,當您查看或打印文檔時就會出現。
    在這里插入圖片描述
  • 第三部分:擴展ASCII打印字符
    擴展的ASCII字符滿足了對更多字符的需求。
    擴展的ASCII包含ASCII中已有的128個字符,又增加了128個字符,總共是256個。
    即使有了這些更多的字符,許多語言還是包含無法壓縮到256個字符中的符號。因此,出現了一些ASCII的變體來囊括地區性字符和符號。例如,許多軟件程序把ASCII表(又稱作ISO8859-1)用于北美、西歐、澳大利亞和非洲的語言。

ASCII碼又分為: 標準ASCII碼和擴展ASCII碼。

  • 標準ASCII碼
    標準ASCII 碼也叫基礎ASCII碼,使用7 位二進制數來表示所有的大寫和小寫字母,數字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)用作奇偶校驗位。

  • 擴展ASCII碼

    • 擴展ASCII 字符是從128 到255(0x80-0xff)的字符。許多基于x86的系統都支持使用擴展(或“高”)ASCII。它將每個字符的第8 位用于確定附加的128 個特殊符號字符、外來語字母和圖形符號。針對擴展的ASCII碼,不同的國家有不同的字符集,所以它并不是國際標準。
      在這里插入圖片描述
      在這里插入圖片描述

4、常用轉義字符

轉義字符意義ASCII碼值(十進制)
\a響鈴(BEL)

7

\b退格(BS)

8

\f換頁(FF)

12

\n換行(LF)

10

\r回車(CR)

13

\t水平制表(HT)

9

\v垂直制表(VT)

11

\\反斜杠

92

\?問號字符

63

\'單引號字符

39

\"雙引號字符

34

\0空字符(NULL)

0

\ddd任意字符三位八進制
\xhh任意字符二位十六進制

5、ASCII、Unicode 和 UTF-8 之間的關系

5.1 ASCII 編碼

計算機內部,所有信息最終都是一個二進制值。每一個二進制位(bit)有0和1兩種狀態,因此八個二進制位就可以組合出256種狀態,這被稱為一個字節(byte)。也就是說,一個字節一共可以用來表示256種不同的狀態,每一個狀態對應一個符號,就是256個符號,從00000000到11111111。

上個世紀60年代,美國制定了一套字符編碼,對英語字符與二進制位之間的關系,做了統一規定。這被稱為 ASCII 碼,一直沿用至今。

ASCII 碼一共規定了128個字符的編碼,比如空格SPACE是32(二進制00100000),大寫的字母A是65(二進制01000001)。這128個符號(包括32個不能打印出來的控制符號),只占用了一個字節的后面7位,最前面的一位統一規定為0。

5.2 非 ASCII 編碼

英語用128個符號編碼就夠了,但是用來表示其他語言,128個符號是不夠的。比如,在法語中,字母上方有注音符號,它就無法用 ASCII 碼表示。于是,一些歐洲國家就決定,利用字節中閑置的最高位編入新的符號。比如,法語中的é的編碼為130(二進制10000010)。這樣一來,這些歐洲國家使用的編碼體系,可以表示最多256個符號。

5.3 Unicode

可以想象,如果有一種編碼,將世界上所有的符號都納入其中。每一個符號都給予一個獨一無二的編碼,那么亂碼問題就會消失。這就是 Unicode,就像它的名字都表示的,這是一種所有符號的編碼。

Unicode 當然是一個很大的集合,現在的規模可以容納100多萬個符號。每個符號的編碼都不一樣,比如,U+0639表示阿拉伯字母Ain,U+0041表示英語的大寫字母A,U+4E25表示漢字嚴。具體的符號對應表,可以查詢unicode.org,或者專門的漢字對應表。

需要注意的是,Unicode 只是一個符號集,它只規定了符號的二進制代碼,卻沒有規定這個二進制代碼應該如何存儲。

比如,漢字嚴的 Unicode 是十六進制數4E25,轉換成二進制數足足有15位(100111000100101),也就是說,這個符號的表示至少需要2個字節。表示其他更大的符號,可能需要3個字節或者4個字節,甚至更多。

它們造成的結果是:1)出現了 Unicode 的多種存儲方式,也就是說有許多種不同的二進制格式,可以用來表示 Unicode。2)Unicode 在很長一段時間內無法推廣,直到互聯網的出現。

5.4 UTF-8

互聯網的普及,強烈要求出現一種統一的編碼方式。UTF-8 就是在互聯網上使用最廣的一種 Unicode 的實現方式。其他實現方式還包括 UTF-16(字符用兩個字節或四個字節表示)和 UTF-32(字符用四個字節表示),不過在互聯網上基本不用。重復一遍,這里的關系是,UTF-8 是 Unicode 的實現方式之一。

UTF-8 最大的一個特點,就是它是一種變長的編碼方式。它可以使用1~4個字節表示一個符號,根據不同的符號而變化字節長度。

UTF-8 的編碼規則很簡單,只有二條:

1)對于單字節的符號,字節的第一位設為0,后面7位為這個符號的 Unicode 碼。因此對于英語字母,UTF-8 編碼和 ASCII 碼是相同的。
2)對于n字節的符號(n > 1),第一個字節的前n位都設為1,第n + 1位設為0,后面字節的前兩位一律設為10。剩下的沒有提及的二進制位,全部為這個符號的 Unicode 碼。

下表總結了編碼規則,字母x表示可用編碼的位:

Unicode符號范圍(十六進制)UTF-8編碼方式(二進制)
0000 0000-0000 007F0xxxxxxx
0000 0080-0000 07FF110xxxxx 10xxxxxx
0000 0800-0000 FFFF1110xxxx 10xxxxxx 10xxxxxx
0001 0000-0010 FFFF11110xxx 10xxxxxx 10xxxxxx 10xxxxxx
跟據上表,解讀 UTF-8 編碼非常簡單。如果一個字節的第一位是0,則這個字節單獨就是一個字符;如果第一位是1,則連續有多少個1,就表示當前字符占用多少個字節。
1)ANSI是默認的編碼方式。對于英文文件是ASCII編碼,對于簡體中文文件是GB2312編碼(只針對 Windows 簡體中文版,如果是繁體中文版會采用 Big5 碼)。
2)Unicode編碼這里指的是notepad.exe使用的 UCS-2 編碼方式,即直接用兩個字節存入字符的 Unicode 碼,這個選項用的 little endian 格式。
3)Unicode big endian編碼與上一個選項相對應。我在下一節會解釋 little endian 和 big endian 的涵義。
4)UTF-8編碼,也就是上一節談到的編碼方法。

5.5 Little endian 和 Big endian

UCS-2 格式可以存儲 Unicode 碼(碼點不超過0xFFFF)。以漢字嚴為例,Unicode 碼是4E25,需要用兩個字節存儲,一個字節是4E,另一個字節是25。存儲的時候,4E在前,25在后,這就是 Big endian 方式;25在前,4E在后,這是 Little endian 方式。

第一個字節在前,就是"大頭方式"(Big endian),第二個字節在前就是"小頭方式"(Little endian)。

那么很自然的,就會出現一個問題:計算機怎么知道某一個文件到底采用哪一種方式編碼?

Unicode 規范定義,每一個文件的最前面分別加入一個表示編碼順序的字符,這個字符的名字叫做"零寬度非換行空格"(zero width no-break space),用FEFF表示。這正好是兩個字節,而且FF比FE大1。

如果一個文本文件的頭兩個字節是FE FF,就表示該文件采用大頭方式;如果頭兩個字節是FF FE,就表示該文件采用小頭方式。

結語

如果您覺得該方法或代碼有一點點用處,可以給作者點個贊,或打賞杯咖啡;╮( ̄▽ ̄)╭
如果您感覺方法或代碼不咋地//(ㄒoㄒ)//,就在評論處留言,作者繼續改進;o_O???
如果您需要相關功能的代碼定制化開發,可以留言私信作者;(????)
感謝各位大佬童鞋們的支持!( ′ ▽′ )ノ ( ′ ▽′)っ!!!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/42220.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/42220.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/42220.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Day05-04-持續集成總結

Day05-04-持續集成總結 1. 持續集成2. 代碼上線目標項目 1. 持續集成 git 基本使用, 拉取代碼,上傳代碼,分支操作,tag標簽 gitlab 用戶 用戶組 項目 , 備份,https,優化. jenkins 工具平臺,運維核心, 自由風格工程,maven風格項目,流水線項目, 流水線(pipeline) mavenpom.xmlta…

【瑞數補環境實戰】某網站Cookie補環境與后綴分析還原

文章目錄 1. 寫在前面2. 特征分析3. 接口分析3. 補JS環境4. 補后綴參數 【&#x1f3e0;作者主頁】&#xff1a;吳秋霖 【&#x1f4bc;作者介紹】&#xff1a;擅長爬蟲與JS加密逆向分析&#xff01;Python領域優質創作者、CSDN博客專家、阿里云博客專家、華為云享專家。一路走…

二分查找2

1. 山脈數組的峰頂索引&#xff08;852&#xff09; 題目描述&#xff1a; 算法原理&#xff1a; 根據題意我們可以將數組分為兩個部分&#xff0c;一個部分是arr[mid-1]<arr[mid]&#xff0c;另一個部分為arr[mid-1]>arr[mid]&#xff0c;此時不難發現我們可以將二分…

Flink,spark對比

三&#xff1a;az 如何調度Spark、Flink&#xff0c;MR 任務 首先&#xff0c;使用java編寫一個spark任務&#xff0c;定義一個類&#xff0c;它有main方法&#xff0c;里面寫好邏輯&#xff0c;sparkConf 和JavaSparkContext 獲取上下文&#xff0c;然后打成一個jar包&#xf…

數據結構——二叉樹相關題目

1.尋找二叉樹中數值為x的節點 //尋找二叉樹中數值為x的節點 BTNode* TreeFind(BTNode* root, BTDataType x)//傳過來二叉樹的地址和根的地址&#xff0c;以及需要查找的數據 {if (root Null){return Null;}//首先需要先判斷這個樹是否為空&#xff0c;如果為空直接返回空if (…

【JavaWeb程序設計】JSP實現購物車功能

目錄 一、結合之前所學的相關技術&#xff0c;編寫代碼實現以下購物車功能 1. 我實現的功能運行截圖如下 &#xff08;1&#xff09;商品列表頁面home.jsp &#xff08;2&#xff09;登錄賬號頁面/未登錄點擊結賬頁面 &#xff08;3&#xff09;重新登錄頁面&#xff08;記…

昇思25天學習打卡營第18天|ShuffleNet圖像分類

一、簡介&#xff1a; ShuffleNetV1是曠視科技提出的一種計算高效的CNN模型&#xff0c;和MobileNet, SqueezeNet等一樣主要應用在移動端&#xff0c;所以模型的設計目標就是利用有限的計算資源來達到最好的模型精度。ShuffleNetV1的設計核心是引入了兩種操作&#xff1a;Poin…

如何在centos7安裝Docker

在centOS7中我們可以使用火山引擎鏡像源鏡像安裝Docker,以下是具體的安裝步驟。 step 1: 安裝必要的一些系統工具 sudo yum install -y yum-utils Step 2: 添加軟件源信息 sudo yum-config-manager --add-repo https://mirrors.ivolces.com/docker/linux/centos/docker-ce.r…

力扣雙指針算法題目:二叉樹的層序遍歷(BFS)

目錄 1.題目 2.思路解析 3.代碼 1.題目 . - 力扣&#xff08;LeetCode&#xff09; 2.思路解析 對二叉樹進行層序遍歷&#xff0c;顧名思義&#xff0c;就是按每一層的順序對二叉樹一層一層地進行遍歷 思路如下 從第一層開始&#xff0c;先將二叉樹地頭放入隊列q&#xff0…

獨孤思維:副業被罵煞筆,割韭菜

做副業不要被外界干擾&#xff0c;不要被情緒牽絆。 不要因為別人的無心謾罵&#xff0c;隨口一評&#xff0c;就偃旗息鼓。 不要因為自己的情緒需要&#xff0c;找存在感&#xff0c;尋求人安慰。 他強任他強&#xff0c;清風拂山崗。 他橫由他橫&#xff0c;明月照大江。…

2007-2022年中國各企業數字化轉型與供應鏈效率

企業數字化轉型與供應鏈效率是現代企業管理和發展的兩個關鍵方面。以下是對中國各企業數字化轉型與供應鏈效率數據的介紹&#xff1a; 數據簡介 企業數字化轉型&#xff1a;指企業通過采用數字技術與創新方法&#xff0c;改造業務流程、組織結構和產品服務&#xff0c;以提升…

UCOS-III 系統移植

1. 移植前準備 1.1 源碼下載 UCOS-III Kernel Source&#xff1a; https://github.com/weston-embedded/uC-OS3.git Micriμm CPU Source &#xff1a; https://github.com/weston-embedded/uC-CPU.git Micriμm Lib Source&#xff1a; https://github.com/weston-embedded…

Nginx配置文件全解:從入門到設計

Nginx配置文件全解&#xff1a;從入門到架構設計 1. Nginx配置文件基礎 Nginx的主配置文件通常位于/etc/nginx/nginx.conf?。配置文件使用簡單的文本格式&#xff0c;由指令和指令塊組成。 1.1 基本語法規則 每個指令以分號(;)結束指令塊用大括號({})包圍配置文件支持使用…

多方SQL計算場景下,如何達成雙方共識,確認多方計算作業的安全性

安全多方計算在SQL場景下的限制 隨著MPC、隱私計算等概念的流行&#xff0c; 諸多政府機構、金融企業開始考慮參與到多方計算的場景中&#xff0c; 擴展數據的應用價值。 以下面這個場景為例&#xff0c; 銀行可能希望獲取水電局和稅務局的數據&#xff0c;來綜合計算得到各…

DolphinScheduler-3.1.9 資源中心實踐

前言 目前DolphinScheduler最新的穩定版本是 3.1.9 &#xff0c;基于此做些探索&#xff0c;逐漸深化學習路徑&#xff0c;以便于加深理解。 3.2.1 是最新的版本。目前的穩定版本是 3.1.9 基礎環境&#xff1a;Hadoop3.3, Java 8, Python3, MacOS14.2.1 一、本地偽分布式安裝…

學習筆記——動態路由——IS-IS中間系統到中間系統(開銷)

四、IS-IS開銷 1、IS-IS 開銷簡介 在IS-IS協議剛面世時&#xff0c;互聯網網絡結構還非常簡單&#xff0c;因此IS-IS早期的版本中只使用了6bit來描述鏈路開銷&#xff0c;鏈路開銷的取值范圍是1-63。一條路由的開銷范圍只有10bit&#xff0c;取值范圍是0-1023。 隨著計…

前端實現無縫自動滾動動畫

1. 前言: 前端使用HTMLCSS實現一個無縫滾動的列表效果 示例圖: 2. 源碼 html部分源碼: <!--* Author: wangZhiyu <w3209605851163.com>* Date: 2024-07-05 23:33:20* LastEditTime: 2024-07-05 23:49:09* LastEditors: wangZhiyu <w3209605851163.com>* File…

【ubuntu】安裝(升級)顯卡驅動,黑屏|雙屏無法使用問題解決方法

every blog every motto: You can do more than you think. https://blog.csdn.net/weixin_39190382?typeblog 0. 前言 ubuntu 安裝(升級)顯卡驅動&#xff0c;黑屏|雙屏無法使用問題解決方法 由于項目需要&#xff0c;對顯卡驅動進行升級。升級完就黑屏。。。。&#xff0…

Fast R-CNN(論文閱讀)

論文名&#xff1a;Fast R-CNN 論文作者&#xff1a;Ross Girshick 期刊/會議名&#xff1a;ICCV 2015 發表時間&#xff1a;2015-9 ?論文地址&#xff1a;https://arxiv.org/pdf/1504.08083 源碼&#xff1a;https://github.com/rbgirshick/fast-rcnn 摘要 這篇論文提出了一…

WordPress禁止用戶注冊某些用戶名

不管在任何網站&#xff0c;用戶注冊時都有一個屏蔽非法關鍵詞&#xff0c;就是禁止注冊某些用戶名&#xff0c;原因是因為防止用戶使用一些特定的用戶名&#xff0c;例如管理員、官方等用戶名&#xff0c;還有就是那些攻擊性的詞語了。 加網站添加了屏蔽非法關鍵詞&#xff0…