ASCII码对照表【2024年汇总】

您所在的位置:网站首页 一个字符的标准ascii码占一个字节的储存量多少 ASCII码对照表【2024年汇总】

ASCII码对照表【2024年汇总】

2024-07-13 02:21| 来源: 网络整理| 查看: 265

🍺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 Unicode5.4 UTF-85.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英文解释 Description00000000000000NUL�空字符 终止符Null char10010100000001SOH标题开始Start of Heading20020200000010STX正文开始Start of Text30030300000011ETX正文结束End of Text40040400000100EOT传输结束End of Transmission50050500000101ENQ询问Enquiry60060600000110ACK收到通知Acknowledgment70070700000111BEL铃Bell80100800001000 BS退格Back Space90110900001001 HT 水平制表符Horizontal Tab100120A00001010 LF 换行符 \nLine Feed110130B00001011 VT 垂直制表符Vertical Tab120140C00001100 FF 换页符Form Feed130150D00001101 CR 回车符 \rCarriage Return140160E00001110 SO移出Shift Out / X-On150170F00001111 SI移入Shift In / X-Off160201000010000DLE数据链路转义Data Line Escape170211100010001DC1设备控制 1Device Control 1 (oft. XON)180221200010010DC2设备控制 2Device Control 2190231300010011DC3设备控制 3Device Control 3 (oft. XOFF)200241400010100DC4设备控制 4Device Control 4210251500010101NAK拒绝接收Negative Acknowledgement220261600010110SYN同步空闲Synchronous Idle230271700010111ETB传输块结束End of Transmit Block240301800011000CAN取消Cancel250311900011001 EM介质中断End of Medium260321A00011010SUB替换Substitute270331B00011011ESC换码符Escape280341C00011100 FS文件分隔符File Separator290351D00011101 GS组分隔符Group Separator300361E00011110 RS记录分离符Record Separator310371F00011111 US单元分隔符Unit Separator 十进制 32~127 区间一共 127-32+1=96 个ASCII码表示的符号,在我们的键盘上都可以被找到。其中:32表示空格,127表示删除命令。 十进制 DEC八进制 OCT十六进制 HEX二进制 BIN符号 Symbol HTML实体编码中文解释 Description英文解释 Description320402000100000  空格Space330412100100001!!感叹号Exclamation mark340422200100010""双引号Double quotes (or speech marks)350432300100011##井号Number360442400100100$$美元符Dollar370452500100101%%百分号Per cent sign380462600100110&&与Ampersand390472700100111''单引号Single quote400502800101000((左括号Open parenthesis (or open bracket)410512900101001))右括号Close parenthesis (or close bracket)420522A00101010**星号Asterisk430532B00101011++加号Plus440542C00101100,,逗号Comma450552D00101101--连字号或减号Hyphen460562E00101110..句点或小数点Period, dot or full stop470572F00101111//斜杠Slash or divide480603000110000000Zero490613100110001111One500623200110010222Two510633300110011333Three520643400110100444Four530653500110101555Five540663600110110666Six550673700110111777Seven560703800111000888Eight570713900111001999Nine580723A00111010::冒号Colon590733B00111011;;分号Semicolon600743C00111100>大于Greater than (or close angled bracket)630773F00111111??问号Question mark641004001000000@@电子邮件符号At symbol651014101000001AA大写字母 AUppercase A661024201000010BB大写字母 BUppercase B671034301000011CC大写字母 CUppercase C681044401000100DD大写字母 DUppercase D691054501000101EE大写字母 EUppercase E701064601000110FF大写字母 FUppercase F711074701000111GG大写字母 GUppercase G721104801001000HH大写字母 HUppercase H731114901001001II大写字母 IUppercase I741124A01001010JJ大写字母 JUppercase J751134B01001011KK大写字母 KUppercase K761144C01001100LL大写字母 LUppercase L771154D01001101MM大写字母 MUppercase M781164E01001110NN大写字母 NUppercase N791174F01001111OO大写字母 OUppercase O801205001010000PP大写字母 PUppercase P811215101010001QQ大写字母 QUppercase Q821225201010010RR大写字母 RUppercase R831235301010011SS大写字母 SUppercase S841245401010100TT大写字母 TUppercase T851255501010101UU大写字母 UUppercase U861265601010110VV大写字母 VUppercase V871275701010111WW大写字母 WUppercase W881305801011000XX大写字母 XUppercase X891315901011001YY大写字母 YUppercase Y901325A01011010ZZ大写字母 ZUppercase Z911335B01011011[[左中括号Opening bracket921345C01011100\\反斜杠Backslash931355D01011101]]右中括号Closing bracket941365E01011110^^音调符号Caret - circumflex951375F01011111__下划线Underscore961406001100000``重音符Grave accent971416101100001aa小写字母 aLowercase a981426201100010bb小写字母 bLowercase b991436301100011cc小写字母 cLowercase c1001446401100100dd小写字母 dLowercase d1011456501100101ee小写字母 eLowercase e1021466601100110ff小写字母 fLowercase f1031476701100111gg小写字母 gLowercase g1041506801101000hh小写字母 hLowercase h1051516901101001ii小写字母 iLowercase i1061526A01101010jj小写字母 jLowercase j1071536B01101011kk小写字母 kLowercase k1081546C01101100ll小写字母 lLowercase l1091556D01101101mm小写字母 mLowercase m1101566E01101110nn小写字母 nLowercase n1111576F01101111oo小写字母 oLowercase o1121607001110000pp小写字母 pLowercase p1131617101110001qq小写字母 qLowercase q1141627201110010rr小写字母 rLowercase r1151637301110011ss小写字母 sLowercase s1161647401110100tt小写字母 tLowercase t1171657501110101uu小写字母 uLowercase u1181667601110110vv小写字母 vLowercase v1191677701110111ww小写字母 wLowercase w1201707801111000xx小写字母 xLowercase x1211717901111001yy小写字母 yLowercase y1221727A01111010zz小写字母 zLowercase z1231737B01111011{{左大括号Opening brace1241747C01111100||垂直线Vertical bar1251757D01111101}}右大括号Closing brace1261767E01111110~~波浪号Equivalency sign - tilde1271777F01111111删除Delete 后128个称为扩展ASCII码。许多基于x86的系统都支持使用扩展(或“高”)ASCII。扩展ASCII码允许将每个字符的第8 位用于确定附加的128 个特殊符号字符、外来语字母和图形符号。 十进制 DEC八进制 OCT十六进制 HEX二进制 BIN符号 Symbol HTML实体编码中文解释 Description英文解释 Description1282008010000000€€欧盟符号Euro sign1292018110000001   1302028210000010‚‚单低 9 引号Single low-9 quotation mark1312038310000011ƒƒ带钩的拉丁小写字母fLatin small letter f with hook1322048410000100„„双低 9 引号Double low-9 quotation mark1332058510000101……水平省略号Horizontal ellipsis1342068610000110††剑号Dagger1352078710000111‡‡双剑号Double dagger1362108810001000ˆˆ修正字符抑扬音符号Modifier letter circumflex accent1372118910001001‰‰千分号Per mille sign1382128A10001010ŠŠ带弯音号的拉丁大写字母 SLatin capital letter S with caron1392138B10001011‹‹左单书名号Single left-pointing angle quotation1402148C10001100ŒŒ拉丁大写组合 OELatin capital ligature OE1412158D10001101   1422168E10001110ŽŽ带弯音号的拉丁大写字母 zLatin capital letter Z with caron1432178F10001111   1442209010010000   1452219110010001‘‘左单引号Left single quotation mark1462229210010010’’右单引号Right single quotation mark1472239310010011““左双引号Left double quotation mark1482249410010100””右双引号Right double quotation mark1492259510010101•• Bullet1502269610010110––半长破折号En dash1512279710010111——全长破折号Em dash1522309810011000˜˜小波浪线Small tilde1532319910011001™™ Trade mark sign1542329A10011010šš带弯音号的拉丁小写字母 sLatin small letter s with caron1552339B10011011››右单书名号Single right-pointing angle quotation mark1562349C10011100œœ拉丁小写组合 oeLatin small ligature oe1572359D10011101   1582369E10011110žž带弯音号的拉丁小写字母 zLatin small letter z with caron1592379F10011111ŸŸ带弯音号的拉丁大写字母 YLatin capital letter Y with diaeresis160240A010100000   Non-breaking space161241A110100001¡¡反向感叹号Inverted exclamation mark162242A210100010¢¢分币符号Cent sign163243A310100011££英磅符号Pound sign164244A410100100¤¤ Currency sign165245A510100101¥¥人民币符号Yen sign166246A610100110¦¦ Pipe, Broken vertical bar167247A710100111§§章节符号Section sign168250A810101000¨¨通用货币符号Spacing diaeresis - umlaut169251A910101001©©版权符号Copyright sign170252AA10101010ªª阴性顺序指示符号Feminine ordinal indicator171253AB10101011««左角引号Left double angle quotes172254AC10101100¬¬ Not sign173255AD10101101­­ Soft hyphen174256AE10101110®® Registered trade mark sign175257AF10101111¯¯ Spacing macron - overline176260B010110000°°温度符号Degree sign177261B110110001±±加/减号Plus-or-minus sign178262B210110010²²上标 2Superscript two - squared179263B310110011³³上标 3Superscript three - cubed180264B410110100´´ Acute accent - spacing acute181265B510110101µµ微符号Micro sign182266B610110110¶¶段落符号,pilcrowPilcrow sign - paragraph sign183267B710110111··中点Middle dot - Georgian comma184270B810111000¸¸ Spacing cedilla185271B910111001¹¹上标 1Superscript one186272BA10111010ºº阳性顺序指示符Masculine ordinal indicator187273BB10111011»»右角引号Right double angle quotes188274BC10111100¼¼分数四分之一Fraction one quarter189275BD10111101½½分数二分之一Fraction one half190276BE10111110¾¾ Fraction three quarters191277BF10111111¿¿反向问号Inverted question mark192300C011000000ÀÀ带重音符的大写字母 ALatin capital letter A with grave193301C111000001ÁÁ带尖锐重音的大写字母 ALatin capital letter A with acute194302C211000010ÂÂ带音调符号的大写字母 ALatin capital letter A with circumflex195303C311000011ÃÃ带代字号的大写字母 ALatin capital letter A with tilde196304C411000100ÄÄ带元音变音 (分音符号) 的大写字母 ALatin capital letter A with diaeresis197305C511000101ÅÅ带铃声的大写字母 ALatin capital letter A with ring above198306C611000110ÆÆ大写字母 AE 双重元音Latin capital letter AE199307C711000111ÇÇ带变音符号的大写字母 CLatin capital letter C with cedilla200310C811001000ÈÈ带重音符的大写字母 E Latin capital letter E with grave201311C911001001ÉÉ带尖锐重音的大写字母 E Latin capital letter E with acute202312CA11001010ÊÊ带音调符号的大写字母 ELatin capital letter E with circumflex203313CB11001011ËË带元音变音 (分音符号) 的大写字母 ELatin capital letter E with diaeresis204314CC11001100ÌÌ带重音符的大写字母 I Latin capital letter I with grave205315CD11001101ÍÍ带尖锐重音的大写字母 ILatin capital letter I with acute206316CE11001110ÎÎ带音调符号的大写字母 I Latin capital letter I with circumflex207317CF11001111ÏÏ带元音变音 (分音符号) 的大写字母 ILatin capital letter I with diaeresis208320D011010000ÐРLatin capital letter ETH209321D111010001ÑÑ带代字号的大写字母 N Latin capital letter N with tilde210322D211010010ÒÒ带重音符的大写字母 OLatin capital letter O with grave211323D311010011ÓÓ带尖锐重音的大写字母 OLatin capital letter O with acute212324D411010100ÔÔ带音调符号的大写字母 O Latin capital letter O with circumflex213325D511010101ÕÕ带代字号的大写字母 O Latin capital letter O with tilde214326D611010110ÖÖ带元音变音 (分音符号) 的大写字母 OLatin capital letter O with diaeresis215327D711010111××大写字母 OE 连字Multiplication sign216330D811011000ØØ带斜杠的大写字母 OLatin capital letter O with slash217331D911011001ÙÙ带重音符的大写字母 ULatin capital letter U with grave218332DA11011010ÚÚ带尖锐重音的大写字母 ULatin capital letter U with acute219333DB11011011ÛÛ带音调符号的大写字母 ULatin capital letter U with circumflex220334DC11011100ÜÜ带元音变音 (分音符号) 的大写字母 ULatin capital letter U with diaeresis221335DD11011101ÝÝ带元音变音 (分音符号) 的大写字母 YLatin capital letter Y with acute222336DE11011110ÞÞ Latin capital letter THORN223337DF11011111ßß德语高调小写字母 sLatin small letter sharp s - ess-zed224340E011100000àà带重音符的小写字母 aLatin small letter a with grave225341E111100001áá带尖锐重音的小写字母 aLatin small letter a with acute226342E211100010ââ带音调符号的小写字母 a Latin small letter a with circumflex227343E311100011ãã带代字号的小写字母 a Latin small letter a with tilde228344E411100100ää带元音变音 (分音符号) 的小写字母 aLatin small letter a with diaeresis229345E511100101åå带铃声的小写字母 aLatin small letter a with ring above230346E611100110ææ小写字母 ae 双重元音Latin small letter ae231347E711100111çç带变音符号的小写字母 cLatin small letter c with cedilla232350E811101000èè带重音符的小写字母 e Latin small letter e with grave233351E911101001éé带尖锐重音的小写字母 eLatin small letter e with acute234352EA11101010êê带音调符号的小写字母 e Latin small letter e with circumflex235353EB11101011ëë带元音变音 (分音符号) 的小写字母 eLatin small letter e with diaeresis236354EC11101100ìì带重音符的小写字母 i Latin small letter i with grave237355ED11101101íí带尖锐重音的小写字母 i Latin small letter i with acute238356EE11101110îî带音调符号的小写字母 i Latin small letter i with circumflex239357EF11101111ïï带元音变音 (分音符号) 的小写字母 iLatin small letter i with diaeresis240360F011110000ðð Latin small letter eth241361F111110001ññ带代字号的小写字母 n Latin small letter n with tilde242362F211110010òò带重音符的小写字母 o Latin small letter o with grave243363F311110011óó带尖锐重音的小写字母 oLatin small letter o with acute244364F411110100ôô带音调符号的小写字母 oLatin small letter o with circumflex245365F511110101õõ带代字号的小写字母 o Latin small letter o with tilde246366F611110110öö带元音变音 (分音符号) 的小写字母 oLatin small letter o with diaeresis247367F711110111÷÷小写字母 oe 连字Division sign248370F811111000øø带斜杠的小写字母 o Latin small letter o with slash249371F911111001ùù带重音符的小写字母 u Latin small letter u with grave250372FA11111010úú带尖锐重音的小写字母 u Latin small letter u with acute251373FB11111011ûû带音调符号的小写字母 u Latin small letter u with circumflex252374FC11111100üü带元音变音 (分音符号) 的小写字母 uLatin small letter u with diaeresis253375FD11111101ýý带元音变音 (分音符号) 的小写字母 y2Latin small letter y with acute254376FE11111110þþ Latin small letter thorn255377FF11111111ÿÿ 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 007F0xxxxxxx0000 0080-0000 07FF110xxxxx 10xxxxxx0000 0800-0000 FFFF1110xxxx 10xxxxxx 10xxxxxx0001 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??? 如果您需要相关功能的代码定制化开发,可以留言私信作者;(✿◡‿◡) 感谢各位大佬童鞋们的支持!( ´ ▽´ )ノ ( ´ ▽´)っ!!!



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3