ã»ãšãã©ã®èªè ã¯ããUnicodeããšãUTF-8ããšããçšèªã«å°ãªããšãå°ãã¯ç²ŸéããŠãããšæããŸãããããã誰ãã圌ãã®èåŸã«ãããã®ãæ£ç¢ºã«ç¥ã£ãŠããŸããïŒæ¬è³ªçã«ããããã¯æåã»ãããšããŠãç¥ãããæåãšã³ã³ãŒãæšæºãæããŸãããã®æŠå¿µã¯ã人ãèãããããããªãããã«ãã³ã³ãã¥ãŒã¿æä»£ã§ã¯ãªããè æšéä¿¡ã®æä»£ã«çŸããŸããã 18äžçŽã«ã¯ãé·è·é¢ã®æ å ±ãé«éã§éä¿¡ããå¿ èŠããããããããé»ä¿¡ã³ãŒãã䜿çšãããŠããŸãããæ å ±ã¯ãå åŠçãé»åçããã³ãã®ä»ã®ææ®µã䜿çšããŠãšã³ã³ãŒããããŸããã
æåã®é»ä¿¡ã³ãŒãã®çºæããæ°çŸå¹Žãçµéãããããã®ãããªã³ãŒãã£ã³ã°ã¹ããŒã ã®åœéæšæºåã®å®éã®è©Šã¿ã¯ãªãã£ãããã¬ã¿ã€ããšå®¶åºçšã³ã³ãã¥ãŒã¿ã®æä»£ã®åæã®æ°å幎ã§ãããã»ãšãã©å€ãããŸããã§ããã EBCDICïŒIBMã®8ãããæåãšã³ã³ãŒããããããŒã®å³ã®ãã³ãã«ãŒãã«ç€ºãããŠããŸãïŒãšASCIIã¯ç¶æ³ãå°ãæ¹åããŸããããã¡ã¢ãªãå€§å¹ ã«äœ¿çšããã«ãå¢ãç¶ããæåã®ã³ã¬ã¯ã·ã§ã³ããšã³ã³ãŒãããæ¹æ³ã¯ãããŸããã§ããã
Unicodeã®éçºã¯ã1980幎代åŸåã«å§ãŸããŸããããã®ãšããäžçäžã§ããžã¿ã«æ å ±ã®äº€æãå¢å ããåäžã®ã³ãŒãã£ã³ã°ã·ã¹ãã ã®å¿ èŠæ§ãããç·æ¥ã«ãªããŸãããæè¿ã®Unicodeã§ã¯ãåºæ¬çãªè±èªã®ããã¹ãããç¹äœåäžåœèªããããã èªãããã«ã¯ãã€èªãçµµæåãšåŒã°ãããã¯ãã°ã©ã ãŸã§ããã¹ãŠã«åäžã®ãšã³ã³ãŒãã¹ããŒã ã䜿çšã§ããŸãã
ã³ãŒãããã°ã©ããž
ããŒãåžåœã®æä»£ã«ã¯ãæ å ±ã®è¿ éãªäŒéãéèŠã§ããããšã¯ããç¥ãããŠããŸãããé·ãéãããã¯é·è·é¢ãŸãã¯ããã«çžåœãããã®ãä»ããŠã¡ãã»ãŒãžãéã¶éЬã«ä¹ã£ãã¡ãã»ã³ãžã£ãŒã®ååšãæå³ããŸãããæ å ±é ä¿¡ã·ã¹ãã ãæ¹åããæ¹æ³ã¯ãçŽå å4äžçŽã«çºæãããŸãããããããæ°Žé»ä¿¡ãšä¿¡å·ç¯ã®ã·ã¹ãã ãç»å Žããæ¹æ³ã§ããããããé·è·é¢ããŒã¿äŒéãæ¬åœã«å¹æçã«ãªã£ãã®ã¯18äžçŽã«ãªã£ãŠããã§ããã
å éä¿¡ã®æŽå²ã«é¢ããèšäºã§ããã»ããã©ããšãåŒã°ããè æšéä¿¡ã«ã€ããŠãã§ã«æžããŠããŸããããã¯ãé»ä¿¡ã³ãŒãèšå·ã衚瀺ããããã«äœ¿çšãããæ¹åæç€ºåšã·ã¹ãã ãåãã倿°ã®äžç¶å±ã§æ§æãããŠããŸããã 1795幎ãã1850幎ã®éã«ãã©ã³ã¹è»ã«ãã£ãŠäœ¿çšããããã£ããå åŒã®ã·ã¹ãã ã¯ãããããã7ã€ã®äœçœ®ã®ããããã«ç§»åã§ãã2ã€ã®å¯å端ïŒã¬ããŒïŒãåããæšè£œã®ããŒã«åºã¥ããŠããŸãããã¯ãã¹ããŒã®4ã€ã®äœçœ®ãšãšãã«ãçè«äžã®ã»ããã©ã¯196æåïŒ4x7x7ïŒã瀺ãå¯èœæ§ããããŸããå®éã«ã¯ããã®æ°ã¯92-94ã®äœçœ®ã«æžããããŸããã
ã®è æšéä¿¡ã³ãŒãã1809幎ã»ããã©ã·ã¹ãã ã¯ãã³ãŒãããã¯å ã®ç¹å®ã®æååã瀺ãã»ã©æåãçŽæ¥ãšã³ã³ãŒãããããã«äœ¿çšãããŠããŸããã§ããããã®æ¹æ³ã¯ãããã€ãã®ã³ãŒãä¿¡å·ã䜿çšããŠã¡ãã»ãŒãžå šäœãè§£èªã§ããããšãæå³ããŠããŸãããããã«ãããéä¿¡ãé«éã«ãªããã¡ãã»ãŒãžãååããŠãæå³ããªããªããŸããã
ããã©ãŒãã³ã¹ã®åäž
ãã®åŸãè æšéä¿¡ã¯é»æ°é»ä¿¡ã«çœ®ãæããããŸãããããã¯ãæãè¿ãäžç¶å¡ãèŠãŠãã人ã ã«ãã£ãŠã³ãŒãã£ã³ã°ããã£ããã£ãããæä»£ãçµãã£ãããšãæå³ããŸãããéå±ç·ã§æ¥ç¶ããã2ã€ã®é»ä¿¡è£ 眮ã§ã黿µã¯æ å ±ãäŒéããããã®éå ·ã«ãªããŸããããã®å€æŽã«ããæ°ããé»ä¿¡ã³ãŒããçãŸãã1848幎ã«ãã€ãã§çºæãããŠä»¥æ¥ãã¢ãŒã«ã¹ä¿¡å·ã¯æçµçã«åœéæšæºã«ãªããŸããïŒç±³åœã¯ãç¡ç·é»ä¿¡ä»¥å€ã§ã¢ã¡ãªã«ã®ã¢ãŒã«ã¹ä¿¡å·ã䜿çšãç¶ããŸããïŒã
åœéã¢ãŒã«ã¹ä¿¡å·ã«ã¯ãã¢ã¡ãªã«ã®ã³ãŒããããå©ç¹ããããŸããããããããããã·ã¥ãå€ã䜿çšããŸãããã®ã¢ãããŒãã¯äŒéé床ãé ãããŸãããåç·ã®ããäžæ¹ã®ç«¯ã§ã®ã¡ãã»ãŒãžåä¿¡ãæ¹åããŸããããã¯ãé·ãã¡ãã»ãŒãžãããŸããŸãªã¹ãã«ã¬ãã«ã®ãªãã¬ãŒã¿ãŒã«ãã£ãŠäœãã€ã«ãã®ã¯ã€ã€ãŒãä»ããŠéä¿¡ãããå Žåã«å¿ èŠã§ããã
æè¡ã®çºå±ã«äŒŽãã西åŽã§ã¯æåé»ä¿¡ãèªåé»ä¿¡ã«çœ®ãæããããŸããã 5ãããã®Baudotã³ãŒããšãããããæŽŸçããMurrayã³ãŒãã䜿çšããŸããïŒåŸè ã¯ã穎ãéããããçŽããŒãã®äœ¿çšã«åºã¥ããŠããŸããïŒããã¬ãŒã®ã·ã¹ãã ã¯ãã¡ãã»ãŒãžã®ããŒããäºåã«æºåããããããªãŒããŒã«ããŒãããŠã¡ãã»ãŒãžãèªåçã«éä¿¡ããããšãå¯èœã«ããŸããã Baudotã³ãŒãã¯InternationalTelegraphic Alphabet Version 1ïŒITA 1ïŒã®åºç€ã圢æããä¿®æ£ãããBaudot-Murrayã³ãŒãã¯1960幎代ãŸã§äœ¿çšãããŠããITA2ã®åºç€ã圢æããŸããã
1960幎代ãŸã§ã«ã1æåããã5ãããã®å¶éãäžèŠã«ãªããç±³åœã§ã¯7ãããASCIIãéçºãããã¢ãžã¢ã§ã¯JIS X 0201ïŒæ¥æ¬èªã®ã«ã¿ã«ãæåçšïŒãªã©ã®æšæºãéçºãããŸãããåœæåºã䜿çšãããŠãããã¬ã¿ã€ãã©ã€ã¿ãŒãšçµã¿åãããããšã§ã倧æåãšå°æåãå«ãããªãè€éãªã¡ãã»ãŒãžã®éä¿¡ãå¯èœã«ãªããŸããã
1970幎代ãã1980幎代åé ã«ãããŠãæ¡åŒµASCIIïŒISO8859-1ãLatin1ãªã©ïŒãªã©ã®7ãããããã³8ããããšã³ã³ãŒãã£ã³ã°ã®å¶éã¯ãäž»æµã®å®¶åºçšã³ã³ãã¥ãŒã¿ããªãã£ã¹ã®ããŒãºã«ååã§ãããããã«ãããããããããžã¿ã«ããã¥ã¡ã³ããããã¹ãã®äº€æãªã©ã®äžè¬çãªã¿ã¹ã¯ã¯ãå€ãã®ISO 8859ãšã³ã³ãŒãã£ã³ã°ã§å€§æ··ä¹±ãåŒãèµ·ããããšãå€ããããæ¹åã®å¿ èŠæ§ã¯æããã§ãããæåã®ã¹ãããã¯ã1991幎ã«16ãããUnicode1.0ã§è¡ãããŸããã
16ããããšã³ã³ãŒãã£ã³ã°ã®éçº
é©ããããšã«ãUnicodeã¯ããã16ãããã§ããã¹ãŠã®è¥¿æŽã®æžèšäœç³»ã ãã§ãªããããšãã°æ°åŠã§äœ¿çšãããå€ãã®æŒ¢åãå€ãã®ç¹æ®æåãã«ããŒããããšãã§ããŸãããæå€§65,536ã®ã³ãŒããã€ã³ããèš±å¯ãã16ãããã§ãUnicode1.0ã¯7,129æåã«ç°¡åã«å¯Ÿå¿ããŸããããããã2001幎ã«Unicode 3.1ãç»å ŽãããŸã§ã«ãå°ãªããšã94,140æåãå«ãŸããŠããŸããã
çŸåšããã®13çªç®ã®ããŒãžã§ã³ã§ã¯ãUnicodeã«ã¯å¶åŸ¡æåãé€ãåèš143,859æåãå«ãŸããŠããŸããåœåãUnicodeã¯ãçŸåšäœ¿çšãããŠããèšèã·ã¹ãã ããšã³ã³ãŒãããããã«ã®ã¿äœ¿çšããããšãç®çãšããŠããŸããããããã1996幎ã®Unicode 2.0ã®ãªãªãŒã¹ãŸã§ã«ããã®ç®æšã¯ããŸãã§æŽå²çãªæåã§ããããšã³ã³ãŒãããããã«åèããå¿ èŠãããããšãæããã«ãªããŸãããåæåã®å¿ é ã®32ããããšã³ã³ãŒããªãã§ãããå®çŸããããã«ãUnicodeã倿ŽãããŸãããæåãçŽæ¥ãšã³ã³ãŒãããã ãã§ãªãããã®ã³ã³ããŒãã³ããŸãã¯æžèšçŽ ã䜿çšããããšãã§ããŸãã
æŠå¿µã¯ããã¹ãŠã®ãã¯ã»ã«ãæå®ãããŠããªããã¯ãã«ç»åã«ããã¶ã䌌ãŠããŸããã代ããã«ç»åãæ§æããèŠçŽ ã説æãããŠããŸããçµæãšããŠããŠãã³ãŒã倿ãã©ãŒããã8ïŒUTF-8ïŒãã³ãŒãããæ¯æäœ2 31 ã³ãŒããã€ã³ããçŸåšã®Unicodeæåã»ããã®ã»ãšãã©ã®æåã¯éåžž1ãã€ããŸãã¯2ãã€ããå¿ èŠãšããŸãã
ãã¹ãŠã®å³ãšè²ã®Unicode
ãã®æç¹ã§ãããªãã®æ°ã®äººã ããUnicodeã«é¢ããŠäœ¿çšãããããŸããŸãªçšèªã«ããããæ··ä¹±ããŠããŸãããããã£ãŠãããã§éèŠãªã®ã¯ãUnicodeãæšæºãæããããŸããŸãªUnicodeå€æåœ¢åŒããã®å®è£ ã§ãããšããããšã§ãã UCS-2ããã³USC-4ã¯Unicodeã®å€ã2ãã€ãããã³4ãã€ãã®å®è£ ã§ãããUCS-4ã¯UTF-32ãšåäžã§ãããUCS-2ã¯UTF-16ã«åã£ãŠä»£ãããŸãã
Unicodeã®æãåæã®åœ¢åŒã§ããUCS-2ã¯ã1990幎代ã«å€ãã®ãªãã¬ãŒãã£ã³ã°ã·ã¹ãã ã«æ¡çšãããUTF-16ãžã®ç§»è¡ãæãå±éºæ§ã®äœããªãã·ã§ã³ã«ãªããŸãããããããWindowsãšMacOSãKDEãªã©ã®ãŠã£ã³ããŠãããŒãžã£ãŒãããã³Javaãš.NETã©ã³ã¿ã€ã ãå éšã§UTF-16ã䜿çšããçç±ã§ãã
ãã®ååã瀺ãããã«ãäºå®äžãã¹ãŠã®çŸä»£èšèªUTF-32ãåããæåã®Unicodeãã¬ãŒã³ã§ãããåæåã4ãã€ãã§ãšã³ã³ãŒãããŸããããã¯å°ãç¡é§ã§ãããå®å šã«äºæž¬å¯èœã§ããåãUTF-8æåã§ã1ã4ãã€ãã®ç¯å²ã®æåããšã³ã³ãŒãã§ããŸãã UTF-32ã®å Žåãæååå ã®æåæ°ã®æ±ºå®ã¯åçŽãªèšç®ã§ãããã€ãæ°å šäœãååŸãã4ã§é€ç®ããŸããããã«ãããUTF-32ã§Unicodeæååã衚çŸã§ããã³ã³ãã€ã©ãPythonãªã©ã®äžéšã®èšèªãçãŸããŸããã
ãã ãããã¹ãŠã®Unicode圢åŒã®äžã§ãUTF-8ã矀ãæããŠæã人æ°ããããŸããããã¯ãã»ãšãã©ã®Webãµã€ããUTF-8ãšã³ã³ãŒãã£ã³ã°ã§HTMLããã¥ã¡ã³ããæäŸããWorld WideWebã«ãã£ãŠå€§å¹ ã«ä¿é²ãããŠããŸããUTF-8ã®ã³ãŒããã€ã³ãã®ç°ãªãå¹³é¢ã®ã¬ã€ã¢ãŠãã®ãããWesternããã³ä»ã®å€ãã®äžè¬çãªæžèšäœç³»ã¯2ãã€ã以å ã«åãŸããŸããå€ãISO8859ããã³ShiftJISãšã³ã³ãŒãã£ã³ã°ãšæ¯èŒãããšãå®éãUTF-8ã®åãããã¹ãã¯ä»¥åãããå€ãã®ã¹ããŒã¹ãå æããŸããã
å åŠã¿ã¯ãŒããã€ã³ã¿ãŒããããž
銬ã®ã¡ãã»ã³ãžã£ãŒãäžç¶å¡ãå°ããªé»ä¿¡å±ã®æä»£ã¯çµãããŸãããéä¿¡æè¡ã¯å€§ããé²åããŸããããã¬ã¿ã€ãããªãã£ã¹ã§äžè¬çã ã£ãæä»£ã§ãããèŠããã®ã¯é£ããã§ããããããæŽå²ã®çºå±ã®ããããæ®µéã§ã人é¡ã¯æ å ±ããšã³ã³ãŒããä¿åãéä¿¡ããå¿ èŠããããŸããããããŠãããã«ãããã©ãã«ããŠããã³ãŒãã§ããã·ã³ãã«ã®ã·ã¹ãã ã§ãäžçäžã«ã¡ãã»ãŒãžãå³åº§ã«éä¿¡ã§ããããã«ãªããŸããã
é»åã¡ãŒã«ã¯ã©ã€ã¢ã³ããšWebãã©ãŠã¶ã§ISO8859ãšã³ã³ãŒãã£ã³ã°ãåãæ¿ããŠãå ã®ããã¹ãã¡ãã»ãŒãžã®ããã«èŠãããã®ãååŸããããšããã人ã«ãšã£ãŠãUnicodeã®ãµããŒãã¯ç¥çŠãããŠããŸãããç§ã¯ãããã®äººã ãçè§£ããããšãã§ããŸãã7ãããASCIIïŒãŸãã¯EBCDICïŒãç«¶åã®ãªããã¯ãããžã§ãã£ãå ŽåããšãŒããããŸãã¯ã¢ã¡ãªã«ã®ãªãã£ã¹ããåãåã£ãããžã¿ã«ããã¥ã¡ã³ãã®è±¡åŸŽçãªæ··ä¹±ãæŽçããããã«äœæéãè²»ããå¿ èŠãããå ŽåããããŸããã
Unicodeã«åé¡ããªãããã§ã¯ãããŸãããã以åã®Unicodeãšæ¯èŒããŠæè¬ã®æ°æã¡ãå¿ããããšã¯ã§ããŸãããããã30幎ã®Unicodeã§ãã