²Ä¤T³¹´¿´£¹L ASCII ½X ( American Standard Code for Information Interchange¡A¬ü°ê¸ê°T¥æ´«¼Ð·Ç½X )¡A¬O¥Î¤@ӼƦr¨Óªí¥Ü^¤å¦r¥À¤Î¤@¨Ç²Å¸¹ªº¼Æ½X¡C¹ï¼Ú¬ü°ê®aªº¤å¦r¨Ó»¡¡A¥u»Ý¬ù¤@¡ã¨â¦ÊÓ´N¤w¨¬°÷¡A³o¬O¦]¬°¥L̪º¤å¦r³£¬O¥H¦r¥À«÷¦¨¡A¦Ó¨CºØ»y¨¥ªº¦r¥ÀӼƤ£¦h¡A¨Ò¦p^¤å¦r¥À¶È 26 Ó¡A¦A¥[¤WªÅ¥Õ¡B¼ÐÂI²Å¸¹¡Bªü©Ô§B¼Æ¦rµ¥µ¥¡A¤£¶W¹L¤@¦ÊÓ¡C¤@Ӧ줸²Õ ( byte ) ¦³ 8 Ӧ줸¡A¥i¥Hªí¥Ü 0¡ã255 ¤§¶¡ªº¼ÆÈ¡A¤]´N¬O»¡¥i¥Hªí¥Ü 256 ºØ ( 28=256 ) ¤£¦Pªº¼Æ¦r¡AY¤@Ӽƪí¥Ü¤@Ó¦r¥À©Î²Å¸¹¡A¨º»ò ASCII ½X¥Î¤@Ӧ줸²Õªºªø«×´N¤w¸g°÷¤F¡C«á¨Ó¦b¨î©w ASCII ®É¡AªG¯u¥H 7 Ӧ줸ªí¥Ü¡A³Ì°ª¦ì¤¸¥²¬° 0¡C
«á¨Ó¦³³\¦h¤H«K·Q¡A°²¦p³Ì°ª¦ì¤¸¤]¯à¨Ï¥Î¡A¤£¬O¤S¦h¥X¤F 128 Ó¦r¤¸©Î²Å¸¹¤F¡H©Ò¥H IBM ±À¥X PC/XT ®É¡A§â ASCII ÂX¥R¬° 8 Ӧ줸¼e¡A§Y¬°¤@Ӧ줸²Õªº¤j¤p¡A±q 80H¡ã0FFH ªº ASCII ½X¬O¤@¨Ç²Å¸¹¡Bµ¼Ð¡B®Ø½u¡C¦Ó¨ä¥L¦a°Ï¨Ï¥Îªº»y¨¥¤£¦P¡A©Ò¥H¦U¦a°Ï ASCII ½X©w¸q 7FH¡ã0FFH ªº²Å¸¹¤]¤£¦P¡A¬Æ¦Ü¦P¤@¦a°Ï¡A¦U¤j¤½¥q¤]¥i¨î©w¤£¦Pªº½s½X¡C©ó¬O³y¦¨ ASCII ½X¥Ñ 0¡ã7FH ªº 128 Ó¦r¤¸¬O¼Ð·Çªº¡A³q¥Î©ó¥þ²y¡F80H¡ã0FFH «o«Ü²V¶Ã¡A§Y¨Ï¦P¤@¦a°Ï¡A¤]¥¼¥²¬Û¦P¡C«á¨Ó¥Ñ¬ü°ê°ê®a¼Ð·Ç¾Ç·| ( American National Standards Institute¡A²ºÙ ANSI ) ¥X±¡A§â¦U¦a°Ï¨î©w²Î¤@ªº²Å¸¹¡AºÙ¤§¬°¡u¶½X¡v( code page )¡C©³¤U¬OµØ¤H¦a°Ï±`¥Îªº¶½X¡G
°ê®a | »y¤å | ¶½X |
¤¤µØ¥Á°ê | ¥¿Å餤¤å | 950 |
¤¤µØ¤H¥Á¦@©M°ê | ²Å餤¤å | 936 |
¤é¥» | ¤é¤å | 932 |
¦P¤@¶½Xªº ASCII ½X¡A¤£ºÞ¬O 0¡ã7FH¡AÁÙ¬O 80H¡ã0FFH¡A³£¬O¬Û¦Pªº¡C¦pªG»Ýn®É¡A¤]¥i¥H¤Á´«¶½X¡A´N¥i¥H¨Ï¥Î§OºØ»y¨¥¤å¦r¡C¹³ ASCII ³oºØ¨t²Î¡A§Ú̺٤§¬°¡y³æ¦ì¤¸²Õ½s½X¨t²Î¡z( SBCS¡ASingle Byte Code System¡C¤]¦³¤HºÙ¬°¡y³æ¦ì¤¸²Õ¦r¶°¡z¡ASingle Byte Character Set )¡C¦ý¹ï©ó¤¤¤å¡A´N¶û¤£°÷¤F¡C§Y¨Ï¬O±`¥Îªº¤¤¤å¦r¡A«O¦u¦ôp¤]¦³¼Æ¤dÓ¡A¦]¦¹±o¥Î¨â Ӧ줸²Õ¨Óªí¥Ü¤å¦r¡A2 Ӧ줸²Õ¦@¦³ 16 Ӧ줸¡A³Ì¦h¥i¥Hªí¥Ü 216¡A¥ç§Y 65536 ӼơA¤]´N¬O»¡³Ì¦h¯àªí¥Ü 65536 Ó¤¤¤å¦r¡C¹³³oºØ¥H 2 Ӧ줸²Õ½s½Xªº¤è¦¡ºÙ¬°¡yÂù¦ì¤¸²Õ½s½X¨t²Î¡z( DBCS¡ADouble Byte Code System¡A¤]¦³¤HºÙ¬°¡yÂù¦ì¤¸²Õ¦r¶°¡z¡ADouble Byte Character Set )¡C
¤¤µØ¥Á°ê¦´Á¤¤¤å¹q¸£µo®i®É¡A¨Ã¨S¦³±j¦Ó¦³¤Oªº°ê®a¼Ð·Ç½s½X¡A©Ò¥H³y¦¨¨C¤@®a¤½¥q©Î¾÷ºc©Òµo®iªº½s½X¤£¦P¦Ó¤£¬Û®e¡C¨ì¤F¥Á°ê 73 ¦~¡A¤¤µØ¥Á°ê°]¹Îªk¤H¸ê°T¤u·~µ¦¶i·|©M 13 ¶¡¹q¸£¤½¥q¡A§»ùÖ¡B¯«³q¡B¨Î¨Î¡B¹s³ü¤Î¤j²³¡A©Ò¦@¦Pµo®i¤@®M¤¤¤åªº½s½X¨t²Î¡A³o¤®a¹q¸£¤½¥q¦b·í®É¬O¼Æ¤@¼Æ¤Gªº¤j¤½¥q¡A¨ä¼vÅT¤O¥i¿×Á|¨¬»´«¡A¦Ó¥LÌ©Òµo®iªº½s½X¨t²Î´NºÙ¬°¤j¤½X ( Big5¡C¥t¤@»¡¬Oµo®i¤ºØ«nªº³nÅé¡A¸Ô±¡¨£ºû°ò¦Ê¬ì¦³Ãö Big5 ªº»¡©ú¡C)
¥Ñ©ó¤j¤½Xªº½Ï¥Í¡A¨Ï±o¤¤¤å½s½X¦³¨Ì´`ªº¼Ð·Ç¡A«á¨Ó¦b DOS ¨t²Î¤¤ªºÊ¤Ñ¤¤¤å¡AWindows 3.1 ¥H¤Î Windows 95/98/Me ³£±Ä¥Î³o¥ý«á±Ä¥Î³o®M½s½X¨Ó³B²z¥¿Å餤¤å¡C¦ý¬O Big5 ½X©Ò¦¬¿ýªº¦r¤Ó¤Ö¡A³\¦h¤H¦W¡B¦a¦W¨Ã¨S¦³¥]¬A¦b¤º¡C¦]¦¹«á¨Ó¦³³\¦h¾÷ºc¦b Big5 ªº°ò¦¤W¥[¥HÂX¥R¡C²{¤µ ( ¥Á°ê 80¡ã95 ¦~ )¡A¨Ï¥Î¥¿Å餤¤åªº°ê®a©Î¦a°Ï¡A¹³¤¤µØ¥Á°ê¡B»´ä¡B·s¥[©Y¥H¤Î®ü¥~µØ¤Hªº¤¤¤å¹q¸£¡A¤j¦h¨Ï¥Î Big5 ½X¡C
¦b DOS ¨t²Î¤U°õ¦æªºÊ¤Ñ¤¤¤å¡A±Ä¥Îªº´N¬O Big5 ½X¡CʤѤ¤¤å¨t²Î°õ¦æ«á¡A·|±`¾n©ó°O¾ÐÅéùØ¡CʤѤ¤¤åÅã¥Ü¤å¦rªºì²z»P^¤åÃþ¦ü¡A½Ð°Ñ¦Ò²Ä¤T¤Q³¹Åã¥Ü°O¾ÐÅ骺»¡©ú¡CʤѤ¤¤å¤]¬O§â B800:0000 ¶}©lªº°O¾ÐÅé·í¦¨Åã¥Ü°O¾ÐÅé¡A°¸¼Æ¦ì§}¬O¦s©ñ Big5 ½X¡A©_¼Æ¦ì§}¬O¦s©ñÃC¦â¡A¨Ò¦p°²³]¦b¿Ã¹õ¤W¥ª¤W¨¤Åã¥Üºñ¦âªº¡y§Ú¾Ç ASSEMBLY¡C¡z³o¥y¸Ü¡A¨º»ò¥Î DEBUG.EXE Æ[¹î¦ì§} B800:0000¡A±z·|¬Ý¨£¡G
B800:0000 A7 02 DA 02 BE 02 C7 02 20 02 41 02 53 02 53 02 ........ .A.S.S. B800:0010 45 02 4D 02 42 02 4C 02 59 02 A1 02 43 02 20 00 E.M.B.L.Y...C. .
ªº°O¾ÐÅ餺®e¡A¨ä¤¤¥H¥Õ¦â¼Ð°_¨Óªº A7DA¡BBEC7 ©M A143 ¤À§O¬O¡y§Ú¡z¡B¡y¾Ç¡z©M¡y¡C¡zªº Big5 ½X¡A¦Ó¦ì§} B800:0001¡BB800:0003¡BB800:0005¡BB800:0007 µ¥¤º®e¬° 02 ªº¦ì¤¸²Õ¬Oºñ¦r¶Â©³ªºÃC¦â¸¹½X ( °Ñ¦Òªþ¿ý¤Cªºªí¤@ )¡C©Î³\±z·|°Ý¡A¦pªG§ïÅÜ B800:0001 ©Î B800:0003 ªº¤º®e¡A¨Ï¥¦Ì¤£¤@¼Ë¡A³o¼Ë¬O¤£¬O·|Åܦ¨¦P¤@Ó¦r¡A¦ý¥ª¥b³¡©M¥k¥b³¡ÃC¦â¤£¦P¡Hªº½T¦p¦¹¡A±z¥i¥H¸Õ¸Õ¬Ý¡C©³¤U¥H¦Cªí¤è¦¡»¡©ú¡G
ÀHµÛºô»Úºô¸ôªºµo¹F¡A¹q¸£¤w¤£¬O¤@®y®yªº©t®q¡A±`±`»ÝnÂǥѺô¸ô»P¥~¬É¬Û³s¡AŪ¨ú°ê¥~ªº¸ê®Æ¡A¦Ó³o¨Ç¸ê®Æ¤£¤@©w¬O¥»°ê»y¨¥©Î^¤å¡A¹³¬O¤é¤å¡B®õ¤å¡Bªü©Ô§B¤å¡B«X¤å¡K¡Kµ¥µ¥¡C¬Æ¦Ü¦³®É§Æ±æ¯à¦b¦P¤@¥÷¤å¥ó¤¤¡A¯à¥]§t¼ÆºØ¤å¦r¡Cn¹F¨ì³o¥Ø¼Ð¡A´N¤£¯à¾a¤@ºØ»y¤å¤@ºØ½s½Xªº¤è¦¡¤F¡C
¬°¤F¸Ñ¨M³oÓÃøÃD¡A¦Û¥Á°ê 73 ¦~¶}©l¡A¦³¨âÓ²Õ´µÛ¤â¬ã¨s³oÓ°ÝÃD¡C¨ä¤¤¤@Ó¬O°ê»Ú¼Ð·Ç²Õ´ ( ISO¡AInternational Organization for Standardization ) »PÁp¦X°ê¤UÄݪº°ê»Ú¹q®ð§Þ³N©eû·| ( IEC¡AInternational Electro-technical Commission ) ¦X²Õªº¤u§@¤p²Õ¡A¸Ó¤p²Õ¯óÀÀ´£¥Xªº ISO 10646 ¼Ð·Ç¯ó®×¡C¥t¤@Ó²Õ´¬O¥Ñ IBM¡BDEC¡BSun¡BXerox¡BApple¡BMicroSoft¡BNovell ¤½¥q¡A¦@¦P¥X¸ê¦¨¥ßªº Unicode ¨ó·|¡A¸Ó¨ó·|³]¥ß«DÀç§Qªº Unicode ¤½¥q¡A¨Ã¥Ñ¸Ó¤½¥q³]p¥X¾A¥Î¥þ²yªº¸U°ê½X ( Universal Code¡F²ºÙ Unicode¡A¥ç¦³¤HºÙ²Î¤@½X¡B³æ¤@½X©Î¸U°ê½X )¡CÁöµM¤@¶}©l¡A³o¨âÓ²Õ´ªº¤u§@¬O¦U¦Ûµo®iªº¡A¦ý¬O³Ì«á¥LÌÅé»{¨ì¥@¬É¤£»Ýn¦³¨â®M½s½X¡A§_«h°Z¤£¬O³´©ó·íªìªº§x¹Ò¡H©ó¬O¦b¥Á°ê 80 ¦~¥ª¥k¡A¥L̦X¨Ö¤FÂù¤èªº¦¨ªGÅܦ¨ ISO 10646/Unicode ¼Ð·Ç¡A´£¨Ñ¥þ¥@¬É»y¨¥¤å¦r»P²Å¸¹ªºÅã¥Ü¡BÀx¦s¡B¶Ç°eµ¥¡A¤£¦ýÁקK¤F¸ê·½ªº®ö¶O¡A¤]¯à¸¨¹ê²Î¤@¥þ²y¤å¦r¥æ´«¼Ð·Çªº²z·Q¡C
n§â¥þ²y©Ò¦³¤å¦r½s½X¡A¤£¬O¤@¥ó²³æªº¨Æ±¡¡C¾Ú¦ôp¥þ¥@¬É¬ù¦³¤£¨ì¤C¤dºØ»y¨¥¡A¦ý¬O¦³¨Ç»y¨¥¥u¦³Ánµ¨S¦³¤å¦r¡A¦©°£³o¨Ç»y¨¥¡A¥uºâ¦³¤å¦rªº»y¨¥¬ù¦³¨â¤d¦hºØ¡Cn§â³o¨Ç»y¨¥ªº¨CÓ¦r³£½s¦¨½X¤]¤£¬O²³æªº¤u§@¡A¦]¬°¨ì©³¦³¦h¤ÖÓ¤å¦r©Î¦r¥À¡A½Ö¤]»¡¤£·Ç¡C¦ý½s½X¤u§@Á`¬OnÄ~Äòªº¡A¸g¹L¼Æ¤Q¦~ªº§V¤O¡A¨¯¶Ôªº¤u§@Á`ºâ¦³ªºµ²ªG¡A¦b¥Á°ê 82 ¦~µoªíªº ISO 10646¡C
¦b ISO 10646 ùإΥ|Ӧ줸²Õ¨Ó½s½X¡A¦]¦¹ºÙ¬° UCS-4¡AUCS ¬O Universal Multiple-Octet Coded Character Set ªºÁY¼g¡A·N¸q¬°¦hÓ¤K¦ì¤¸½s½Xªº¼s¥Î¤å¦r¶°¡A4 ¥Nªí 4 Ӧ줸²Õ¡CISO 10646 ¨Ì¦ì¤¸²Õ°ª§C¦¸§Ç§â¨C¤@¦ì¤¸²ÕºÙ¬°¸s²Õ ( group )¡B¦r± ( plane )¡B¦C ( row )¡B®æ ( cell )¡C¸s²Õªº³Ì°ª¦ì¤¸¤£¨Ï¥Î¡A¶È³Ñ¤CӦ줸¡A¥Ñ 00H¡ã07FH ¦@ 128 Ó¡A¥i¤À¦¨ 128 ¸s²Õ¡F¦¸°ª¦ì¤¸²Õ¥Nªí¦r±¡A©Ò¥H¨C¤@¸s³£¦³ 256 Ó¦r± ( 00¡ã0FFH )¡A¨CÓ¦r±¥»À³¦³ 216¡A§Y 65536 ӪŶ¡¥i®e¯Ç¤å¦r ( ¨CÓ¤å¦r±o¦û¥Î¤@ӪŶ¡¡A©ÎºÙ¤@Ó½X¦ì )¡A¦ý ISO 10646 ùسW©w³Ì«á¨â®æ¤£¥Î¡A©Ò¥H¨CÓ¦r±Åܦ¨ 65534 Ó¦r¡C¨Ì¾Ú³oÓ³W«h¡A³Ì¦h¥i¥H§â 65534¡Ñ128¡Ñ256 ¡×2,147,418,112¡A¬ù¤G¤Q¤@»õÓ¤å¦r½s¦¨½X¡C¥i¥H»¡±q¥j¦Ü¤µªº©Ò¦³¤å¦r³£¥i¥H®e¯Ç¨ä¤¤¡A¥]§t¥j®J¤Î¸t®ÑÅé ( Hieroglyph¡A§Y¥¿³WÅé¡B¸O»ÊÅé¡A¤]ºÙ¬°®J¤Î¶H§Î¤å¦r ) µ¥µ¥¡C¦³Ãö¸s²Õ¡B¦r±ªº»¡©ú¡A½Ð°Ñ¦Ò¤U¹Ï©Ò¥Ü ( ¤U¹Ï°Ñ¦Ò CNS11643 ¤¤¤å¥þ¦r®wø»s¦Ó¦¨ )¡G
ÁöµM ISO 10646 ùإΥ|Ӧ줸²Õ¨Ó½s½X¡A¦ý¬O¹ê»Ú¤W¡A¥þ²y«nªº»y¨¥¤w¸g¦³¤E¦¨¤¥H¤W³£¥]§t¦b²Ä 00 ¸s²Õªº²Ä 00 ¦r±¡C©Ò¥H¬°¤F¦Ò¼{®Ä²v¡A¦b ISO 10646 ¤]¯S§O³W©w²Ä 00 ¸s²Õªº²Ä 00 ¦r±ºÙ¬°¡y°ò¥»¦h»y¤å¦r±¡z( Basic Multilingual Plane¡A²ºÙ BMP )¡A¦pªG©Ò¨Ï¥Îªº¤å¦r³£¦b BMP ¤º¡A¨º»ò´N¥i¥H¥Î¨âӦ줸²Õ¨Óªí¥Ü¡A¥H¸`¬ÙªÅ¶¡¼W¶i®Ä²v¡A¹³³oºØ¦r¶°ºÙ¬° UCS-2¡A¤]¦]¬°®Ä²v¡A¥@¬É¦U°ê²ö¤£·QÅý¥»°ê¤å¦rÀ½¶i BMP ùØ¡C»¡¤F³o»ò¦h¡A¤p¤ì°¸¾ã²z¤@¤U¡G¦b¹ê»Ú¨Ï¥Î¤W¡A¸U°ê½X¥i¤À¬° UCS-2 »P UCS-4 ¨âºØ½s½X¤è¦¡¡A¦pªG©Ò¨Ï¥Îªº¤å¦r³£¦b BMP ¤W¡A¨º»ò¨Ï¥Î UCS-2 ´N¥i¥H¤F¡A§_«h´N¥²¶·¨Ï¥Î UCS-4¡C¦P¤@¥÷¤å¥ó©ÎÀÉ®×ùØ¥u¯à¿ï¾Ü¨ä¤¤¤@ºØ¡A¤£¬O UCS-2 ´N¬O UCS-4¡A¤£¯à²V¥Î¡A¥H§K³y¦¨¤@Ó¦r¤£©wªø«×ªº¯ÊÂI¡C
¥@¬É³Ì«nªº´XºØ»y¨¥¡A¦p¥_¨Ê¸Ü ( ¬ù ¤K»õ¤»¤d¸U¤H¨Ï¥Î )¡B^»y ( ¬ù¥|»õ¤T¤d¸U¤H¨Ï¥Î )¡B¦L¦a»y ( ¦L«×©Ò¨Ï¥Îªº»y¨¥¡A¬ù¤T»õ¨â¤d¸U¤H¨Ï¥Î ) µ¥»y¨¥³£¤w³Q½s¤J BMP ¤¤¡C¦U»y¤å©Ò¦û½s½X½d³ò¥i¥H°Ñ¦Òºû°ò¦Ê¬ì¦³Ãö°ò¥»¦h»y¤å¦r±»P´¿¤hºµ¥ý¥Í©ÒµÛ Unicode »P ISO10646 ªº´yz¡A¦Ó¦U¦rªº½s½X¥i¨ì www.unicode.org À˾\¡C©³¤U¬O¨Ìºµ¥ý¥Íªº¤å³¹©Ò§@ªº¤¶²Ð¡G
0000¡ã007Fh¡G | C0 ±±¨î½X»P°ò¥»©Ô¤B¦r¥À°Ï¡A¦p¤W¹Ï¤¤①³B¡C¨ä¤¤ 0000¡ã001Fh ¬° C0 ±±¨î½X¡A0020h ¬°ªÅ®æ ( space )¡A0021¡ã007Eh ¬° ASCII ¹Ï§Î¦r¤¸¡K¡K¨Æ¹ê¤W¡A³o 128 Ó¦r¤¸½X¥un§â«e 8 Ӧ줸¥h±¼´N¬O ASCII ½X¡C |
0080¡ã00A0h¡G | ±±¨î½X°Ï¡C0080¡ã009Fh ¬° C1 ±±¨î½X¡A00A0h ¬°¤£¤¤Â_ªÅ®æ ( no-break space ) |
00A1¡ã1FFFh¡G | «÷µ¤å¦r°Ï¡C¦¬®e°£°ò¥»©Ô¤B¦r¥À¥H¥~ªº¦UºØ«÷µ¤å¦r¦r¤¸¡A¥]¬A¼Ú¬w¦U°ê»y¨¥¡B§Æþ¤å¡B´µ©Ô¤Ò»y¤å¡B§Æ§B¨Ó¤å¡Bªü©Ô§B¤å¡B¨È¬ü¥§¨È¤å¡B¦L«×¦U¦a¤è¨¥¡B°¨¨Ó¤å¡B®õ¤å¡B¼d¤å¡B¬Z´¶¹ë¤å¡Bº¡¤å¡B»X¤å¡BÂäå¡B¦L¦a¦w»y¤åµ¥¡C |
2000¡ã2BFFh¡G | ²Å¸¹°Ï¡C¦¬®e¦UºØ²Å¸¹¡A¥]¬A¼ÐÂI²Å¸¹¡B¤W¤U¼Ð¡B¿ú¹ô²Å¸¹¡B¼Æ¦r¡B½bÀY¡B¼Æ¾Ç²Å¸¹¡B¤uµ{²Å¸¹¡B¥ú¾Ç¿ëÃѲŸ¹¡B±a°é©Î±a¬A²Åªº¤å¼Æ¦r¡Bªí®æø»s²Å¸¹¡B¦a²z¹Ï¥Ü¡Bª¼¥ÎÂI¦r¡B¸Ë¹¢¹Ï§Îµ¥¡C |
2C00¡ã2E7Fh¡G | «÷µ¤å¦r°Ï¡A¥]§t®æ©Ôô¨½¦r¥À¡B¥j®J¤Î¤å¡B¦ç¯Á¤Ç¨È»yµ¥¡K |
2E80¡ã33FFh¡G | ¤¤¤éÁú²Å¸¹°Ï¡A¤W¹Ï¤¤②³B¡C¦¬®e±dº³¦r¨å³¡º¡B¤¤¤éÁú»²§U³¡º¡Bª`µ²Å¸¹¡B¤é¥»°²¦W¡BÁú¤åµ²Å¡A¤¤¤éÁúªº²Å¸¹¡B¼ÐÂI¡B±a°é©Î±a¬A²Å¤å¼Æ¦r¡B¤ë¥÷¡A¥H¤Î¤é¥»ªº°²¦W²Õ¦X¡B³æ¦ì¡B¦~¸¹¡B¤ë¥÷¡B¤é´Á¡B®É¶¡µ¥¡C |
3400¡ã4DFFh¡G | ¤¤¤éÁú»{¦Pªí·N¤å¦rÂX¥R A °Ï¡AÁ`p¦¬®e 6582 Ó¤¤¤éÁúº~¦r¡A¤W¹Ï¤¤③³B¡Cªí¸q¤å¦r¬O«ü¤å¦r¹³¬O¤@ºØ¹Ï§Î²Å¸¹¡A¥u¥Nªí»y¯À¡A¦Ó¤£¥Nªíµ¸`¡A¨Ò¦p¤¤¡B¤é¡BÁú¡B¶Vµ¥¤å¦r§YÄݪí¸q¤å¦r¡C»Pªí¸q¤å¦r¬Û¹ïªº¬O«÷µ¤å¦r¡A¦p^»y§Y¬O«÷µ¤å¦r¡C |
4E00¡ã9FFFh¡G | ¤¤¤éÁú»{¦Pªí·N¤å¦r°Ï¡AÁ`p¦¬®e 20902 Ó¤¤¤éÁúº~¦r¡A¤W¹Ï¤¤④³B¡C¥i¨ì www.unicode.org ¤U¸ü¦U¦rªº½s½X¡C |
A000¡ãA4FFh¡G | ÂU±Ú¤å¦r°Ï¡A¦¬®e¤¤°ê«n¤èÂU±Ú¤å¦r©M¦r®Ú¡A¤W¹Ï¤¤⑤³B¡C |
A500¡ãABFFh¡G | ¥]§t¥[®³¤j¤gµÛ»y¡BÁn½Õ×¹¢¦r¥À¡B¤K«ä¤Ú¦r¡B¤ö«z»y¡B¶V«nØV»yµ¥¡C |
AC00¡ãD7FFh¡G | Áú¤å«÷µ²Õ¦X¦r°Ï¡A¦¬®e¥HÁú¤åµ²Å«÷¦¨ªº¤å¦r¡C |
D800¡ãDFFFh¡G | S °Ï¡A±M¥Î©ó UTF-16¡C¨£¤W¹Ï⑥³B¡C |
E000¡ãF8FFh¡G | ±M¥Î¦r°Ï¡A¨ä¤º®e¨S¦³³W©w¡A«O¯d¨Ñ¨Ï¥ÎªÌ¦Û¦æ²K¥[ ISO 10646 ¥¼¦¬®eªº¦r¤¸¡C |
F900¡ãFAFFh¡G | ¤¤¤éÁú¬Û®eªí·N¤å¦r°Ï¡AÁ`p¦¬®e 302 Ó¤¤¤éÁúº~¦r¡C |
FB00¡ãFFFDh¡G | ¤å¦rªí²{§Î¦¡°Ï¡A¦¬®e²Õ¦X©Ô¤B¤å¦r¡B§Æ§B¨Ó¤å¡Bªü©Ô§B¤å¡B¤¤¤éÁúª½¦¡¼ÐÂI¡B¤p²Å¸¹¡B¥b§Î²Å¸¹¡B¥þ§Î²Å¸¹µ¥¡C |
°£¤F°ò¥»¦h»y¤å¦r±¥H¥~ªº¦r±³£ºÙ¬°¡y»²§U¦r±¡z¡A»²§U¦r±¦h¦s©ñ¨u¥Îªº¤å¦r¡C·í¨Ï¥Î»²§U¦r±ªº¤å¦r®É¡A´N±o¥Î 4 Ӧ줸²Õ¨Óªí¥Ü¤@Ó¦r¤F¡C²Ä¤@»²§U¦r± ( Supplementary Multilingual Plane¡A²ºÙ SMP )¡AÂ\©ñ«÷µ¤å¦r¡A¥Dn¬°²{®É¤w¤£¦A¨Ï¥Îªº¤å¦r¤Î²Å¸¹¡C½d³ò¦b 00010000h¡ã0001FFDh¡C¨Ò¦p¥j®J¤Îªº¸t®ÑÅé¦b 13000h¡ã1342Fh¡C
²Ä¤G»²§U¦r±¡A¤SºÙ¬°ªí·N¤å¦r¸É¥R¦r± ( Supplementary Ideographic Plane¡A²ºÙ SIP )¡A¾ãÓ½d³ò¦b 00020000¡ã0002FFFDh¡CÂ\©ñ¡u¤¤¤éÁú²Î¤@ªí·N¤å¦rÂX®i B °Ï¡v¡A¦@ 43253 Óº~¦r¡A¥H¤Î¤¤¤éÁú¬Û®eªí·N¤å¦r¼W¸É ( CJK Compatibility Ideographs Supplement )¡C³o¨Ç¤å¦r¥Dn±dº³¦r¨å¡Bº~»y¤j¦r¨å¬°°ò¦¡A¦©°£¤w½s¤J BMP ªº¤å¦r¡A¦A¥[¤W¦U°ê©Ò´£¦r¶°¡A¶i¦æ¾ã²z¡C¨ä¥L¦r±¦³¨Ç¬O©|¥¼½s¤J¤å¦r¡A¦³¨Ç¹ï§Ú̦Ө¥¬O´X¥G¤£·|¥Î¨ì¡A©Ò¥H´N¤£¤¶²Ð¤F¡C¤£¹L±zÀ³·í¥i¥H°Ñ¦Ò¤W±ªº UCS-4 ¥þ³¡½s½XªÅ¶¡ª¾¹D©|¦³³\¦hªÅ¶¡©|¥¼½s½X¡C
¦b³o¤@³¹ªº¨Ò¤lùØ¡A¤p¤ì°¸¥´ºâ»s§@¤@Óµ{¦¡¡A¨Ï¨ä¯à§â Unicode Âà´«¦¨ Big5 ½X¡CÁÙ°O±o FAT32 ùتº FDB ¤¤¡AªøÀɦW®æ¦¡ªºÀɦW¬O¥H Unicode °O¿ý¶Ü¡H¦¹³¹¤p¤ì°¸¥´ºâ©µÄò²Ä¤T¤Q¥|³¹ªº¤º®e¡A°w¹ï DFC.EXE ªº¯ÊÂI§ï¶i¨Ï¨ä¯àÅã¥ÜªøÀɦW¡C¦b Win 9x/Me ªº¡yDOS µøµ¡¡zùتº¤¤¤å¬O¥H Big5 ½XÅã¥Ü¤¤¤å¡A¦]¦¹ªøÀɦW¥²¶·Âà´«¦¨ Big5 ½X¤~¯à¥¿½TÅã¥Ü¡A§_«h¬O¤@°ï¶Ã½X¡C
n¼¶¼g¤@Ó¥i¥H§â Unicode Âà´«¦¨ Big5 ªºµ{¦¡¡A³Ì¤jªº§xÃø¦b©ó»s§@¤@±i¤W¸UÓ¦rªº¸U°ê½XÂà´«¦¨¤j¤½X¹ï·Óªí¡A©¯¦n¦bºô»Úºô¸ô¤W¤w¸g¦³¤H»s§@¦n¤F³o±iªí¡A¦b Mozilla Taiwan¡GMozilla ¨t¦C»P Big5 ¤¤¤å¦r½X¦³³o¼Ëªº¤@±iªí¡C¦b²³¦h Big5 ª©¥»ùØ¡A¤p¤ì°¸¿ï¾Ü¤F·L³nªº CP950 ª©¥»¡Aì¦]¦³¨âÓ¡A¤@¬O¬°¤F°t¦X©³¤Uªº¨Ò¤l¡ADFC3.EXE¡ADFC3.EXE ¬OŪ¨ú Win 9x/Me ¨t²ÎªøÀɦW¡A²³©Ò¬Òª¾¡AWin 9x/Me ¬O·L³nªº²£«~¡A¦Û¤v©Ò§ï¶iªº Big5 ½XÀ³¸Ó·|¤ä´©§a¡H¡F¤G¬O¸Óºô¶¤]«Øij¥Î³o¤@±iªí¡C
¦b¸Óºô¶¤¤¤U¸ü cp950-u2b.txt ÀɮסA¥¦´N¬O§â¸U°ê½XÂà´«¦¨ Big5 ªºªí®æ¡Ccp950-u2b.txt ¬O¯Â¤å¦rÀÉ¡A©³¤U¬O«e±´X¦æªº¤º®e¡J
# big5 unicode 0x0021 0x00A1 0xA246 0x00A2 0xA247 0x00A3 0xA244 0x00A5 0x007C 0x00A6 0xA1B1 0x00A7 0xA14C 0x00A8 0x0063 0x00A9 0x0061 0x00AA 0x002D 0x00AD 0x0052 0x00AE 0xA1C2 0x00AF ¡K¡K
¥Ñ¤W±¥i¥H¬Ý¥X¡Acp950-u2b.txt ¬O«ö·Ó²Ä¤G¦Cªº Unicode ¥Ñ¤p¦Ü¤j±Æ¦C¡A¦Ó Unicode «eªº¤Q¤»¶i¦ì¼ÆÈ´N¬O¬Û¹ïÀ³ªº Big5 ½X¡A¨Ò¦p²Ä¤@¦æªº Unicode ªº 0x00A1 ´«¦¨ Big5 ½X´N¬O 0x0021¡C¦]¦¹¦³¤F³o±iªí¡An§â Unicode Âà´«¦¨ Big5 ´N«D±`®e©ö¤F¡A¦b¦¹¯S§O·PÁ³o±iªí®æªº§@ªÌ¡C¾¨ºÞ¦p¦¹¡Acp950-u2b.txt ¹ï²Õ¦X»y¨¥ªº³]pªÌ¨Ó»¡¡AÁÙ¬O¦³¨âÂI¤£¤Ó¤è«K¡G
¬°¤F¸Ñ¨M³oÓ°ÝÃD¡A¤p¤ì°¸¥ý¼¶¼g¤@µ{¦¡¡AU2B_2ASM.ASM¡A³oÓµ{¦¡·|»s³y¥X¤@Ó CP950-U2B_ASM.INC ÀɮסA³oÓÀɮ׬O¤@Ó²Õ¦X»y¨¥¥]§tÀÉ¡A¥L§â cp950-u2b.txt ªº¸ê®Æ¤À¦¨¨âӰϬq¡Abig5 »P ucode¡Abig5 °Ï¬q¥u¦s©ñ Big5 ½X¸ê®Æ¦Ó ucode °Ï¬q¥u¦s©ñ Unicode °Ï¬q¡C³o¨âӰϬq¬Û¦P°¾²¾¦ì§}ªº¸ê®Æ¬O¹ïÀ³ªº¡A¤]´N¬O»¡ big5:0000 ¦ì§}¬O 00021h¡A¦Ó ucode:0000 «h¬O 000a1h¡C¦]¦¹ CP950-U2B_ASM.INC ªº¤º®e¬O¹³³o¼Ëªº¡G
big5 segment dw 00021h,0a246h,0a247h,0a244h,0007ch,0a1b1h,0a14ch,00063h dw 00061h,0002dh,00052h,0a1c2h,0a258h,0a1d3h,00032h,00033h ¡K¡K¡K¡K dw 0a155h,0a162h,0a1e3h,0a14eh,0a246h,0a247h,0a1c3h,0a244h big5 ends ucode segment dw 000a1h,000a2h,000a3h,000a5h,000a6h,000a7h,000a8h,000a9h dw 000aah,000adh,000aeh,000afh,000b0h,000b1h,000b2h,000b3h ¡K¡K¡K¡K dw 0ff5ch,0ff5dh,0ff5eh,0ff64h,0ffe0h,0ffe1h,0ffe3h,0ffe5h ucode ends
·ín§â Unicode Âà´«¦¨Big5 ½X®É¡A¥un§ä¥X Unicode ªº°¾²¾¦ì§}¡A¦A¤Á´«¦¨ Big5 ½Xªº°Ï¬q¦ì§}¡A´N¥i¨ú±o¬Û¹ïÀ³ªº Big5 ½X¡C¨Ò¦p¡G
;§â AX ¤ºªº UNICDODE Âà´«¦¨ BIG-5 ;¿é¤J¡GAX¡ÐUNICDODE ;¿é¥X¡GNC¡GÂà´«¦¨¥\¡A¦¹®É AX=BIG-5 ; CY¡GÂà´«¥¢±Ñ¡A¦¹®É AX=¡y¡H¡z convert_u2big5 proc near uses bx mov bx,ucode mov gs,bx sub bx,bx ;¥Ñ ucode:0000 ¶}©l·j´M¦s©ó AX ¤¤ªº Unicode ¦ì§} next_code: cmp ax,gs:[bx] je find_out add bx,2 or bx,bx ;¦pªG¨ì BX=0 ( ·j´M§¹¾ãÓ ucode °Ï¬q ) ³£ÁÙ¨S§ä¨ì¡A jnz next_code ;¡Aªí¥Ü¨S¦³¬Û¹ïÀ³ªº Big5 ½X¡AÂà´«¥¢±Ñ stc ;³]©w¶i¦ìºX¼Ð mov ax,35a1h ;Big5 ªº 0a135h=¡y¡H¡z jmp short u2b_exit find_out: mov ax,big5 mov gs,ax mov ax,gs:[bx] ;¨ú±o Big5 xchg al,ah ;´«¦¨ Big-Endian clc ;²M°£¶i¦ìºX¼Ð u2b_exit: ret ;ªð¦^¥Dµ{¦¡ convert_u2big5 endp
²Ä¤T¤Q¤T³¹ùØ´£¹L¡AFAT32 ¤À³Î¬O§Q¥Î VFAT ¹ê²{ªøÀɦW¡A¤£ºÞ¬O¤¤¤å©Î^¤åÀɦW¥þ³£±Ä¥Î¸U°ê½Xªº¤è¦¡Àx¦s¡A¦Ó«D Big5 ½X¡C¨Ò¦p¡A¤W±¨Ò¤l¤¤¦³¤@ÓÀɮצW¬°¡y¶O¥É²M¡ÐĪªá¦{.TXT¡z¦b¥Ø¿ýºÏ°ÏùتºÀx¦s¤è¦¡¦p¤U¡J
0000 41 BB 8C 89 73 05 6E 0D-FF 06 86 0F 00 0C B1 82 A;..s.n.......1. 0010 1F 82 4C 6B 5E 8A 2E 00-54 00 00 00 58 00 54 00 ..Lk^...T...X.T. 0020 B6 4F A5 C9 B2 4D 7E 31-54 58 54 20 00 0D 38 77 6O%I2M~1TXT ..8w 0030 68 35 68 35 00 00 AB 1B-4A 33 E1 50 1B 03 00 00 h5h5..+.J3aP....
nª`·Nªº¬O¥Î¯»¬õ¦â¼Ð¥X¨Óªº¬O¸U°ê½Xªº¡y¶O¡z¦r¡A¥Lªº¥N½X¬O 8CBBH¡A¦Ó¨ä¤j¤½X¬O 0B64FH¡A¨Ã«D 4FB6H¡C³o¤@ÂI«Ü©_©Ç¡A¤p¤ì°¸¤]¤£ª¾¬°¤°»òn³o¼Ë±Æ¡C¤@¯ë¦b PC ¤Î¨ä¬Û®e¾÷ºØªº¸ê®Æ´X¥G¥H Little-Endian ªº¤è¦¡±Æ¦C¡A¦ý¦b FDB ¤¤ªº Big5 «o¬O¥H Big-Endian ªº¤è¦¡±Æ¦C¡C
©Ò¿× Little-Endian ©Î Big-Endian ªº±Æ¦C¬O«ü¼ÆȦs©ñ¦b°O¾ÐÅ骺±Æ¦C¤è¦¡¡C·í°O¾ÐÅé¦ì§}¥Ñ§C¦ì§}¶}©l¦V°ª¦ì§}±Æ¦n®É¡A¥ý§â¸û¤pªº¦ì¼Æ¦s¤Jªº³oºØ¤è¦¡ºÙ¬° Little-Endian¡A¨Ò¦p¤W±ªº Unicode ªº¡y¶O¡z¦r¡A¨ä¤Q¤»¶i¦ì¬°¡y8CBBH¡z¡A¡yBB¡z¤À§O¬OÓ¦ì¡B¤Q¦ì¼Æ¡A¡y8C¡z¤À§O¬O¤d¦ì¡B¦Ê¦ì¼Æ¡A©Ò¥H¡yBB¡z¶ñ¤J¸û§C¦ì§}¦Ó¡y8C¡z¶ñ¤J¸û°ª¦ì§}¡C¦]¦¹¦b¶É¦L®É¡A±`±`¬O§C¦ì§}¥ý¦L¥X¨Ó¡A©ó¬OÅܱoÄAˤF¡A¦ý¬O¦b°O¾ÐÅéùتº±Æ¦C«o¬O¥¿±`¡C¦³Ãö Little-Endian ©Î Big-Endian ¥i¥H°Ñ¦Ò¥Î C »y¨¥¿s±´°O¾ÐÅé¡C
DFC3.EXE ¥Îªk»P DFC.EXE ¬Û¦P¡A¥¦¤]¥u¯à¥Î¦b Win 9x/Me ¨t¦C¡AµLªk¦b Windows NT/2k/XP ùØ¡C¨ä°õ¦æµ²ªG¦p¤U¹Ï¡J
¬°¤FÅý DFC3.EXE ¯à°÷Åã¥Ü¤¤¤åªøÀɦW¡Aקï¤F DFC.ASM ùتº get_filename °Æµ{¦¡¡A¨Ï¨ã¦³ªøÀɦWªºÀɮׯà°÷©I¥s convert_u2big5 °Æµ{¦¡¡Aconvert_u2big5 °Æµ{¦¡ªº¥\¥Î´N¬O§â Unicode ½XÂàÅܦ¨ Big5 ½X¡C
¦]¬° DFC3.ASM ì©l½X´X¥G»P DFC.ASM ¤@¼Ë¡A¥B¥[¤W¤@ÓÂà´« cp950-u2b.txt Åܦ¨²Å¦X²Õ¦X»y¨¥®æ¦¡¤Î°Ï¬qªºµ{¦¡¡AU2B_2ASM.ASM¡A©Ò¥H¦¹³B¤£¦C¥X¾ãÓ¤º®e¡A½Ð¤U¸ü AP10.RAR «á¸ÑÀ£ÁY¡C
¸ÑÀ£ÁY«á¡A¦b XP ªº©R¥O´£¥Ü¦r¤¸©Î Win 9x/Me ªº MS-DOS ¼Ò¦¡¤¤²ÕĶ³£¥i¦¨¥\¡C²ÕĶ®É¥ý§â AP10.RAR ùØ©Ò¦³Àɮשñ©ó¦P¤@¤l¥Ø¿ý¡A¨Ò¦p D:\AP10¡A¦A§â cp950-u2b.txt Àɮ׫þ¨©¨ì³oÓ¤l¥Ø¿ý¡AµM«á¤Á´«¨ì¦¹¤l¥Ø¿ý¡A¨Ã³]©w ML.EXE ªº¸ô®|¡A©³¤U¬O¦b Win XP ¨t²Î¤§¤U¥H©R¥O´£¥Ü¦r¤¸¬°¨Ò¤l»¡©ú¡G
D:\AP10>dir [Enter] Volume in drive D is FAT32DATA Volume Serial Number is DC74-CCE3 Directory of D:\AP10 2006/11/21 ?? 10:49 6,499 U2B_2ASM.ASM ¡÷ AP10.RAR ¤ºªºÀÉ®× 2006/10/22 ?? 05:37 282,703 CP950-U2B.TXT ¡÷ ¦Û Mozilla Taiwan ¤U¸ü 2006/11/17 ?? 09:44 29,551 DFC3.ASM ¡÷ AP10.RAR ¤ºªºÀÉ®× 2006/04/05 ?? 04:49 4,881 MYASMINC.INC ¡÷ AP10.RAR ¤ºªºÀÉ®× 4 File(s) 323,634 bytes 2 Dir(s) 1,489,784,832 bytes free D:\AP10>path D:\HomePage\MASM611\BIN;%path% [Enter] D:\AP10>ml /AT U2B_2ASM.ASM [Enter] Microsoft (R) Macro Assembler Version 6.11 Copyright (C) Microsoft Corp 1981-1993. All rights reserved. Assembling: U2B_2ASM.ASM Microsoft (R) Segmented Executable Linker Version 5.31.009 Jul 13 1992 Copyright (C) Microsoft Corp 1984-1992. All rights reserved. Object Modules [.obj]: U2B_2ASM.obj/t Run File [U2B_2ASM.com]: "U2B_2ASM.com" List File [nul.map]: NUL Libraries [.lib]: Definitions File [nul.def]:
¦b²ÕĶ®É¡A¶·¤U¿ï¶µ¡y/AT¡z¡A³o¬O¬°¤F²ÕĶ¦¨ U2B_2ASM.COM ÀÉ¡A¦Ó¤£¬O U2B_2ASM.EXE ÀÉ¡C±µ¤U¨Ó´N¥i¥H§Q¥Î U2B_2ASM.COM §â cp950-u2b.txt Âà´«¦¨²Å¦X²Õ¦X»y¨¥®æ¦¡¤Î°Ï¬qªº¥]§tÀÉ¡ACP950-U2B_ASM.INC ¤F¡C
D:\AP10>U2B_2ASM [Enter] D:\AP10>dir [Enter] Volume in drive D is FAT32DATA Volume Serial Number is DC74-CCE3 Directory of D:\AP10 2006/11/21 ?? 10:05 <DIR> . 2006/11/21 ?? 10:05 <DIR> .. 2006/11/21 ?? 10:49 6,499 U2B_2ASM.ASM 2006/10/22 ?? 05:37 282,703 CP950-U2B.TXT 2006/11/17 ?? 09:44 29,551 DFC3.ASM 2006/04/05 ?? 04:49 4,881 MYASMINC.INC 2006/11/21 ?? 10:21 775 u2b_2asm.obj 2006/11/21 ?? 10:21 445 U2B_2ASM.COM 2006/11/21 ?? 10:21 368,566 CP950-U2B_ASM.INC 7 File(s) 693,420 bytes 2 Dir(s) 1,489,408,000 bytes free
±µ¤U¨Ó²ÕĶ DFC3.ASM¡G
D:\AP10>>ml dfc3.asm [Enter]
Microsoft (R) Macro Assembler Version 6.11
Copyright (C) Microsoft Corp 1981-1993. All rights reserved.
Assembling: dfc3.asm
Microsoft (R) Segmented Executable Linker Version 5.31.009 Jul 13 1992
Copyright (C) Microsoft Corp 1984-1992. All rights reserved.
Object Modules [.obj]: dfc3.obj
Run File [dfc3.exe]: "dfc3.exe"
List File [nul.map]: NUL
Libraries [.lib]:
Definitions File [nul.def]:
¦p¦¹´N±o¨ì DFC3.EXE¡AÀÉ®×¶È 84368 Ӧ줸²Õ¡C¤£¹L DFC3.EXE ¥u¯à¦b Win 9x/Me ¨t²Î¤¤°õ¦æ¡A¦b Win NT/2k/XP ¤¤µLªk°õ¦æ¡C
µù¤@¡G¦b DOS ¨t²ÎùØ¡A¨CÓ¦r¦b¿Ã¹õ¤WÅã¥Üªº¼e«×³£¬O¬Û¦Pªº¡A¦ý¸ü¤JʤѤ¤¤å«á¡A¤¤¤å¦r¤£¶È¦û¥Î¨âӦ줸²Õ¡A¦b¿Ã¹õÅã¥Ü®Éªº¼e«×¤]¬O^¤å¦rªº¨â¿¡A¬GºÙ¥þ§Î¦r¡A¦Óì¨Óªº^¤å¦ÛºÙ¬°¥b§Î¦rÅé¡C¤£¹L¡A¦b Big5 ½XùØ¡A¤]¦³¥þ§Î¦rÅ骺^¤å¦r¥À¡A¦b A2CF¡ãA343¡A¦P¼Ëªº¡Aªü©Ô§B¼Æ¦r¡B§Æþ¦r¥À¤]³£¦³¥þ§Î¦rÅé¡C
UCS-4 ¦r¶°ÁöµM¯à®e¯Ç¥j¤µ¤¤¥~¥þ²y¤HÃþ©Ò®Ñ¼g¹Lªº¤å¦r¤Î²Å¸¹¡A¦ý¬O¨ä¹ê¦³¤E¦¨¤¥H¤Wªº¤å¦r¤Î²Å¸¹³£½s¤J UCS-2 ¦r¶° ( §Y BMP )¡C«Ü©úÅ㪺 UCS-2 n¤ñ UCS-4 ¦³®Ä²v±o¦h¡A¤£»¡§Oªº¡A³æ¥u¤ñ¸ûÀx¦sªÅ¶¡¡AUCS-2 ´N¥u¦³ UCS-4 ªº¤@¥b¡C³]·Q¦pªG¤@½g¼Æ¤d¦r©Î¼Æ¸U¦rªº¤å¥óùØ¡A´N¥u¦³¤Q´XÓ¦r¦b BMP ¥H¥~ªº¦r±¡AY¥u¬°¤F³o´XÓ¦r´N±o±Ä¥Î UCS-4 ¦r¶°¡AÅãµM¬O«Ü¤£²Å¦X¸gÀٮIJv¡C¦]¦¹ ISO 10646 ¯S§O³W©w¦b BMP ¥H¥~ªº¦r¥i¥HÂà´«¦¨¨âөΦhÓ 16 ¦ì¤¸ªº¼ÆȪí¥Ü¡A³oºØªí¥Ü©ÎÂà´«¤è¦¡ºÙ¬° UTF-16¡A§Y UCS Transformation Format ¤§ÁY¼g¡C
²{¦b¤w¸g³Q½s½X¨Ï¥Îªº¦r±¡A¥u¦³²Ä 00 ¸s²Õ«e¤Q¤CÓ¦r±¡A¥]§t°ò¥»¦h»y¤å¦r±»P 16 Ó»²§U¦r±¡A¦]¦¹¥u»Ý¦Ò¼{²Ä 00 ¸s²Õªº²Ä 00 ¦r±¨ì²Ä 10 ¦r±§Y¥i¡C¤]´N¬O»¡¡A¨ì²{¦b ( ¤¤µØ¥Á°ê 104 ¦~ ) ¬°¤î¡A¸U°ê½X½s½X³Ì¦h¶È¨Ï¥Î¨ì 21 ¦ì¤¸¡A¥ç§Y±q 0 ¨ì 10FFFFH Ó¡CUTF-16 ªºÂà´«¤è¦¡«K±Ä¥Î¤F¤@ºØ«ÜÁo©úªº°µªk¡A¥ý©w¸q¦b BMP ¤º¡A±q 0D800H¡ã0DFFFH ³o¬q½d³ò¦@ 2048 Ó¦r²Õ¤£©w¸q¦r¤¸¡A´£¨Ñµ¹ UTF-16 ¤§¥Î¡C±µµÛ¥¦§â¸U°ê½X¦¨¨â³¡¥÷¡G
ì¨Óªº UCS-4 ¦r¤¸½d³ò | ¦ì¤¸µ²ºc | ¸g UTF-16 Âà´««á |
00000000 ¨ì 0000FFFF |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ó¦r²Õ¡G |
00010000 ¨ì 0010FFFF |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
¤Wªíªº¹Ï¤¤¡A¨CÓ²HÂŦâ®Ø®Ø¥Nªí¤@Ӧ줸 ( bit )¡A^¤å¦r¥À¤Î§Æþ¦r¥À¥Nªí¡u0¡v©Î¡u1¡v¡A¥Õ¦âªº¤p¼Æ¦r¥Nªí²Ä´XӦ줸¡A¥Ñ¹s¶}©lºâ°_¡C¡uwxyz¡v¥|Ӧ줸©Ò²Õ¦¨ªº¤G¶i¦ì¼Æ¬O¡uabcde¡v´î¤@«áªºµ²ªG¡C¥t¥~¡AUTF-16 Âà´««á¡AÁÙ¦³¡uBig-Endian¡v©Î¡uLittle-Endian¡vªº°ÝÃD¡C¦b¤@¯ë IBM ¬Û®e PC ¤W ( ¤@¯ë¨Ï¥Î Windows §@·~¨t²Î )¡A¤j³¡¤À¥H¡uLittle-Endian¡v±Æ¦C¡A¤]´N¬O¸û¤pªº¦ì¼Æ©ñ¦b§C¦ì§}¤º¡C¤]´N¬O»¡¡A¦b BMP ¦r±Âà´«¦¨ UTF-16 ®É¡A©ñ¦b§C¦ì§}¡F¦Ó«h©ñ¦b°ª¦ì§}¤º¡C¦b²Ä 01 ¦r±¨ì²Ä 10H ¦r±°µ UTF-16 Âà´«®É¡AÂà´«µ²ªG·|±o¨ì¥|Ӧ줸²Õ¡A¨ä¤¤©ñ¦b³Ì§C¦ì§}¡A©ñ¦b³Ì°ª¦ì§}¡C
²{¦bºô¸ô¶Ç¿éªº¸ê®Æ¤´¤j¦h¥H ASCII ½s½Xªº¤è¦¡¶Ç¿é¡C¤]´N¬O»¡¡A¦bºô¸ô³]³Æ¦p¸ô¥Ñ¾¹µ¥·|¥hÀˬd¶Ç¿éªº¸ê®Æ¬O§_¥]§t C0 µ¥ ASCII ±±¨î¦r¤¸¡A¦pªG¦³ªº¸Ü¡A·|¨Ìª¬ªp³B²z¡C¦]¦¹¤£ºÞ¬O UCS-2 ©Î UTF-16 ¦r¤¸¦bºô¸ô¶Ç¿é®É¡A§¡·|³Q©î¦¨¼ÆӦ줸²Õ¶Ç°e¡A¥un§t¦³ C0 ±±¨î¦r¤¸³£·|³Q»~»{¡C¬°¤FÅý UCS-2 ©Î UTF-16 ¦r¤¸¯à¦wµM³q¹Lºô¸ô³]³ÆªºÀˬd¡A©ó¬O ISO 10646 ¤]³W©w¤F UTF-8 Âà´«¤è¦¡¡C
UTF-8 Âà´«³W«h«Ü²³æ¡A¦pªG USC-4 ¦r¤¸¬Oµ¥©ó 7F ©Î¤p©ó 7F ¥H¤U¡A«h¤£Âà´«ª½±µ¨ú³Ì§C¤K¦ì¤¸¶Ç°e¡C¦pªG¶W¹L 7F ®É¡A«hÂà´«¦¨¼ÆӦ줸²Õ¡A²Ä¤@Ӧ줸²Õ«e±¦³´XÓ 1¡A´N¥NªíÂà´«¦¨´XӦ줸²Õ¡A¤§«á±µ¤W¤@Ó 0¡AµM«á±qì¨Óªº UCS-4 ¶}©l³v¤@§â¦ì¤¸¥Ñ°ª¦Ó§C¶ñ¤W¡Aª½¨ìº¡¤F 8 Ӧ줸¡AÂà´««áªº²Ä¤GӦ줸²Õ¥H«á«e¨âӦ줸¥²¬O 10¡AµM«á¨ä¾lªº 6 Ӧ줸´N¬O³Ñ¾lªº UCS-4 ¦ì¤¸¨Ì¦¸¶ñ¤W¡C¤èªk¦p¤U¡G
ì¨Óªº UCS-4 ¦r¤¸½d³ò |
¦ì¤¸µ²ºc | ¸g UTF-8 Âà´««á |
00000000 ¨ì 0000007F |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ӧ줸²Õ¡G |
00000080 ¨ì 000007FF |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ӧ줸²Õ¡G ²Ä¤GӦ줸²Õ¡G |
00000800 ¨ì 0000FFFF |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ӧ줸²Õ¡G ²Ä¤GӦ줸²Õ¡G ²Ä¤TӦ줸²Õ¡G |
00010000 ¨ì 001FFFFF |
²Ä¤@Ó¦r²Õ¡G ²Ä¤GÓ¦r²Õ¡G |
²Ä¤@Ӧ줸²Õ¡G ²Ä¤GӦ줸²Õ¡G ²Ä¤TӦ줸²Õ¡G ²Ä¥|Ӧ줸²Õ¡G |
¸U°ê½X¸g¹L UTF-8 Âà´««á¡AÅܦ¨ 1 ¨ì 4 Ӧ줸²Õ¡A³o¨Ç¦ì¤¸²Õ¦s©ñ¦b°O¾ÐÅ骺¤è¦¡§¡¬°²Ä¤@Ӧ줸²Õ©ñ¦b³Ì§C¦ì§}¡A²Ä¤GӦ줸²Õ©ñ¦b¦¸°ª¦ì§}¡K¡K³Ì«á¤@Ӧ줸²Õ©ñ¦b³Ì°ª¦ì§}¡A¦]¦¹ UTF-8 Âà´«¨Ã¨S¦³¡uBig-Endian¡v©Î¡uLittle-Endian¡vªº°ÝÃD¡C³Ì«áÁ|Ó¨Ò¤l¡A¨Ò¦p¡y¤¤¡zªº¸U°ê½X¬O 4E2D¡AÂà´«¦¨¤G¶i¦ì¬O¡G
0100 1110 0010 1101
4E2D ¦b 0800 »P FFFF ¤§¶¡¡A¦]¦¹·|Âà´«¦¨ 3 Ӧ줸²Õ¡AÂà´«¦p¤U¡G
²Ä¤@Ӧ줸²Õ¡G1110 0100 ¡÷E4 ²Ä¤GӦ줸²Õ¡G1011 1000 ¡÷B8 ²Ä¤TӦ줸²Õ¡G1010 1101 ¡÷AD
²Ä¤@Ӧ줸²Õªº¶À¦â³¡¥÷¦³ 3 Ó¤@¡Aªí¥Ü UTF-8 Âà´««á¦³¤TӦ줸²Õ¡A¨ä«á©Ò±µ¶À¦âªº¹sªí¥Ü¤À¹j°O¸¹¡F²Ä¤G¡B¤T³Ì«e±¶À¦âªº¡y10¡z¤]ªí¥Ü UTF-8 Âà´««áªº°O¸¹¡C¦Ó¤¤ªº¸U°ê½Xªº«e¥|Ӧ줸¬O¬õ¦âªº¡y0100¡z´N±µ¦b UTF-8 Âà´««áªº²Ä¤@Ӧ줸²Õ«á¥|Ӧ줸¡F¦ÓÂŦ⪺¡y1110 00¡z¤]´N±µ¦b²Ä¤GӦ줸²Õ¤§«áªº 6 Ӧ줸¡FUCS-2 ³Ì«áªº 6 Ӧ줸²Õ¡A´N±µ¦b²Ä¤TӦ줸²Õªº³Ì«á 6 Ӧ줸¡C
¦b Win XP ªº°O¨Æ¥»ùØ¡AnÀx¦sÀɮ׮ɡA·|¥X²{¤@Ó¡y¥t¦s·sÀÉ¡zªº¹ï¸Ü²°¡A¨ä¤¤¡y½s½X¡G¡z½Æ¦X®Ø´N¬O¥i¥H¿ï¾Ü¥H¤£¦Pªº¥|ºØ½s½X¤è¦¡¦s¤JÀɮסC¦p¤U¹Ï¡G
¨ä¤¤¡AANSI ½s½X«üªº´N¬O¥H ASCII ©Î Big5 ½X¤è¦¡¦s¤J¡C¨Ò¦p¦b°O¨Æ¥»¤¤¦³¤@¥y¡y§Ú¾ÇAssembly¡C¡z¦r¡A¦sÀɮɡA¦s¤Jªº¬O ASCII »P Big5 ½X ( ^¤å¥b§Î¦r¥Î ASCII ½X¡A¤¤¤å©Î¥þ§Î¦r¥Î Big5 ½X )¡A¤º®e¦p¤U¡G
A7 DA BE C7 41 73 73 65 6D 62 6c 79 A1 43
±z¥i¥H¦Û¦æ¨ì«e±´£¨ìªº¦a¤è¬d¡y§Ú¡z¡B¡y¾Ç¡z³o¨â¦rªº Big5 ½X©M¨ìªþ¿ý¥|¬d³o¨Ç^¤å¦rªº ASCII ½X¬O§_²Å¦X¤W±ªº¤Q¤»¶i¦ì¼Æ¡C¦pªG¥Î Unicode ¤è¦¡¦s¡A«h·|¥H UCS-2 Little-Endian ¤è¦¡¦s¤J¡A©Ò¦s¤J¤º®e¬°
FF FE 11 62 78 5B 41 00 73 00 73 00 65 00 6D 00 62 00 6C 00 79 00 02 30
³Ì«e±¨âӦ줸²Õ¬O¡uFF FE¡v¡A³o¨â¦ì¤¸²Õ¬O¥Î¨Óªí¥Ü¦¹¦r¦ê¬O¥H Little-Endian ªº¤è¦¡±Æ¦C¡F¦pªG³Ì«e±ªº¨âӦ줸²Õ¬O¡uFE FF¡v¡A«h¬O¥H Big-Endian ªº¤è¦¡±Æ¦C¡C³o¨â²Õ¼ÆÈ¡AºÙ¬°¦ì¤¸²Õ¶¶§Ç°O¸¹ ( byte-order mark¡A²ºÙ¬° BOM )¡A¦b¸U°ê½XùØ¡A¡uFE FF¡v ¬OµL¼e«×¤£¤¤Â_ªÅ®æ ( zero width no-break space )¡A¦Ó¦b¸U°ê½X¨S¦³¡uFF FE¡v³o¼Ëªº½s½X¡A¦]¦¹¸U°ê½X¬O¤£·|¥X²{¡uFE FF¡v©M¡uFF FE¡v³o¨âºØ½s½X¡A©Ò¥H UCS ¤¤«Øij§Ú̦b¶Ç°e©ÎÀx¦s¸U°ê½X®É¡A³Ì¥ý¶Ç°e¡BÀx¦s¡uFE FF¡v¦r¤¸¡Aªí¥Ü Big-Endian¡A©ÎªÌ¶Ç°e¡BÀx¦s¡uFF FE¡vªí¥Ü Little-Endian¡C¦Ó¡uFE FF¡v¦r¤¸¸g UTF-8 Âà´««áÅܦ¨¡uEF BB BF¡v¡A©Ò¥H«e¤TӦ줸²Õ¬O¡uEF BB BF¡vªº´N¬O UTF-8 ½s½X¡C( ³o¤@¬q¸¨©Ò»¡ªº¬O¥HÀx¦s¦bºÏºÐ¤W©Î¶Ç°e®É¥ý«á¦¸§Ç¡A¨Ò¦p»¡¨ì¡uFF FE¡v·N«ä¬O¦bºô¸ô¤W¥ý¶Ç°e FF¡A«á¶Ç°e FE¡C )
±µ¤U¨Óªº¤Q¤»¶i¦ì¼Æ¡A6211¡B5B78¡B0041¡Kµ¥¤À§O¬O¡y§Ú¾ÇA¡K¡zªº¸U°ê½X¡A¥H UCS-2 Little-Endian ½s½X¡C
¦pªG¥H Big-Endian ¤è¦¡¦s¤J®É¡A¤]¬O¥H UCS-2 ½s½X¤è¦¡½s½X¡A¦ý¬O¥H¤j¼Æ¦b«e¤è¦¡±Æ¦C¡A¦]¦¹±z·|¬Ý¨£»P Unicode ¤è¦¡¦sÀɮɨâ¨â¤@²Õ¥B«e«á¤¬´«¡A©Ò¦s¤º®e¬°
FE FF 62 11 5B 78 00 41 00 73 00 73 00 65 00 6D 00 62 00 6C 00 79 30 02
¦pªG¥H UTF-8 ¤è¦¡¦sÀɮɡA¤º®e´NÅܦ¨¡G
EF BB BF E6 88 91 E5 AD B8 41 73 73 65 6D 62 6C 79 E3 80 82
±z¥i¦Û¦æÅçÃÒ¡C
¦³¤@¤Ñ¡A¤£°O±o¦bºô»Úºô¸ô¤W¬d¤°»ò¸ê®Æ¡A¬Ý¨ì¤F¤@Ó°ÝÃD¡G¡uUnicode ¬O¥Î´XӦ줸¨Ó¶i¦æ½s½X¡H¡v¡C«á¨Ó·j´M¤F¤@·|¨à¡Aµo²{¦b³\¦h¦Ò¸Õ³£´¿¥X²{³o¤@ÃD¡A¥]§t¥Á°ê 96 ¾Ç¦~«×¥|§Þ¤G±M²Î¤@¤J¾Ç´úÅç¤u·~³]pÃþª«²zpºâ¾÷·§½×¸ÕÃD¡B¥Á°ê 103 ¾Ç¦~«×«Ø°ê¤¤¾Ç¸ê°T¬ì®Õ¶¤¿ï©ÞÁɵ§¸Õ³£¦³³o¤@ÃD¡C¦ý¬Oµª®×³ºµM¥O¤p¤ì°¸¶Ì²´¡A¤£¬ù¦Ó¦P³£¬O¡u16 ¦ì¤¸¡v¡C°²¦p±z¥J²Ó¬Ý§¹¤W±ªº»¡©ú¡A´N·|ª¾¹D¡Aµª®×¿ùªºÂ÷ÃСC§Ú°ê±Ð¨|¬°¤F¤è«K¡A±`¥H¿ï¾ÜÃD¥XÃD¡A¦ý¬O³o«o©Ï®`¤F¾Ç¥Íªº«ä¦Ò¡C
¥H³o¤@ÃD¬°¨Ò¡A¸U°ê½X¦³³\¦hºØ½s½X¤è¦¡¡A±`¥Îªº¬O UTF-8 ©M UTF-16¡C¦pªG¬O UTF-8 ¤è¦¡½s½X¡A¦³¥i¯à¬O¤@Ӧ줸²Õ¡A¤]¦³¥i¯à¬O¨âӦ줸²Õ¡B¤TӦ줸²Õ¡A¬Æ¦Ü¬O¥|Ӧ줸²Õ¡C¦pªG¬O UTF-16 ½s½X¡A¥i¯à´N¬O¨âӦ줸²Õ©Î¥|Ӧ줸²Õ¡C¦]¦¹³o¤@ÃD¡AÀ³¸Ón°e¤À¤~¬O¡A§_«hÃD¥Ø´N¸Ó«ü¥X¥H¦óºØ½s½X¡C