(ちょっとメモ)文字コード、文字集合、エンコードについて(2)

最終更新日:2017年12月08日  (初回投稿日:2012年09月11日)

続きです。
前回の(ちょっとメモ)文字コード、文字集合、エンコードについて(1)では、
1978年の「ISO-2022-JP(いわゆる JIS、 JISコード)」誕生まででした。

日本語用パソコンのために「Shift_JIS」が生まれた

1980年代、日本では、16ビットCPU搭載のパソコンが続々発売されたんだそうです。
(16ビット= 2バイトなので、日本語が表示できるパソコンってことでしょうね。日本語は「2バイト言語」って言われてます。詳しくは前回を参照に。)

1982年、「三菱Multi16」というパソコンに日本語対応OSを搭載するために、Microsoft社、アスキー社、三菱電機らが共同開発した文字コードが「Shift_JIS」
「S_JIS(エスジス)」などとも呼ばれます。

半角英数字(1バイト)と漢字などの全角(2バイト)の文字を、エスケープシーケンスなしで混在できるように(容量や処理時間の短縮のため)工夫されたコードです。
( ISO-2022-JP(いわゆる JIS)は、エスケープシーケンスを使ってた。(前回参照)

いわゆるJIS を元に、漢字の符号位置を移動(シフト=Shift)させて、符号空間の隙間に押し込むという方法なので「Shift _ JIS」と呼ばれたんだって。

「Shift_JIS」は、MS-DOS 、Windows 、Mac OS などに採用され、1980年代〜90年代の日本語OSの標準になったのだそうです。

で、日本でパソコン売ってる各社は、
自分トコのパソコンだけで使える文字コード=「Shift JISの亜種」と言えるモノを作りました。(これ、メーカーのさがよね…他社製品との差別化とか言ってユーザー不在)
これが 機種依存文字。NEC機種依存文字、IBM拡張文字、Apple拡張文字などがあり、OS間での互換は当然ありません(文字化けの原因)。

「EUC-JP」というのもありました

「EUC-JP」は「日本語EUC」とも呼ばれ、「EUC」は Extended UNIX Code の頭文字。UNIX 上で日本語を使うために作られた文字コードで、1985年生まれです。

これも、いわゆるJIS を元に ASCII(1バイト)と日本語(2バイト)を共存させるために「AT & T 社」が独自改良したものだそうです。
日本語の UNIX系 OS の標準で広く利用されていましたが、UNIXも「UTF-8」にシフトしました。EUC-KR(韓国語)、EUC-CN(簡体中国語)などもあるそうです。

世界中の文字が扱える「 Unicode 」登場

そして「Unicode(ユニコード)」が登場します。

「Unicode」は文字コードと言うより「符号化文字集合」と言っちゃったほうが良いのかもしれません。
これのエンコーディング(文字符号化方式 character encoding scheme, CES)として、「UTF-8」「UTF-16」「UTF-32」などがあります。

「Unicode」が生まれた理由は、
各国語のOSができ、文字コードもバンバン増えて行って、国どうしの情報交換の際に、トラブルや、コスト面のデメリットが発生してきたから。
これを解消するために、世界中の文字を1セットに収録しようと、1980年代から作られたそうです。立ち上がったのは「ISO(国際標準化機構)」と「ゼロックス&民間企業たち」

その流れは、
★1984年から、ISO(国際標準化機構)が「世界中の文字を1つの字集合として扱える文字コード規格を作る」と決め、「ISO 10646」として、ドラフトを作りはじめました。
★これとは別に、ゼロックス社が1987年頃から同じ主旨で文字コードの開発を開始します。この名称が「Unicode」=「ユニバーサル(universal)な文字コード(code)」ってことでしょうね。
★1991年初期、こっちの(ゼロックスの)方式に賛同する民間企業(ゼロックス、マイクロソフト、アップル、IBM、サン・マイクロシステムズ、ヒューレット・パッカード、ジャストシステムなど)によって「ユニコード・コンソーシアム」が設立されます。
★で、「そんなら ISO 10646 と Unicodeを1本化しよう」というコトになり、1991年10月に、Unicode 1.0ができたそうです。

この「みんなで作る」っていうのがイイね!
その後どんどんバージョンアップしてるそうです。

Unicode 2.0 以降では、21ビットの文字集合になったそうです。
(1バイト=7ビットとして3バイト。容量デカイな)
2 の 21乗ですから、2,097,152種類もあるんです! まあ、そのくらいじゃないと多国語の収容はムリだよね。

収録されている文字は、各国から持ち寄られた、それぞれの言語の文字集合を、ユニコード・コンソーシアムが取捨選択しているんだって。
日本語は、JIS X 0201、JIS X 0208、JIS X 0212、JIS X 0213の内容を収録。

で、「漢字」なんですが。
中国語・日本語・朝鮮語での、同じ意味や起源の漢字は「統合」されたんだって。
これが、微妙にカタチ(点や画の向きとか長さとか)が自国で使ってるのと違ってて、各国とも不満が出とるそうです。そりゃ出るわ。(よ〜く見ると違う漢字に見えるのって、イヤですよね)
まあしかし、ネット上だけのことだし、文字化けしないで使えるほうがプライオリティ高いかなw。
そのうち、各国にマッチしたものに変更されて行くかも。(また容量が増えますね)

インターネットでもっとも一般的なのが「UTF-8」

「Unicode」のエンコーディングのうち「UTF-8」がネット上の標準になっています。
Linuxなど OSの標準文字エンコードとしても使われているそうです。
このエンコード方式は、ケン・トンプソン氏が考案したそうです。(UNIX OSを作った人だって)
1995年ごろ誕生。(…ケンさんじゃなくて、よ)

「UTF-8」は、ASCIIと同じ部分は1バイト、その他の部分を2〜6バイトでエンコードするのだそうです。(6バイトって…こりゃまた容量デカイですね)

で、漢字や仮名などには 3バイト使うんだって。
これまで 2バイトでいけてたのにデータ量が 1.5倍に増えちゃいますね。

で、「UTF-8」で扱える文字の種類が下の表です。めっちゃたくさんの国の文字が表示できますね。
(この↓表は、ウィキペディアから引っ張ってきました。ちょっとタイトルの文言を編集してるけど)

Unicode 文字種 日本語の文字集合(その内容がUnicodeのどこに当てはめられているか)
JIS X 0201 JIS X 0208 JIS X 0212 JIS X 0213
U+0000 - U+007F ASCII Roman(円記号・オーバーライン以外) - - -
U+0080 - U+07FF ラテン、ダイアクリティカル、ギリシャ、 キリール、アルメニア、ヘブライ、アラビア、 シリア、ターナ 円記号 非漢字の一部 非漢字の一部 非漢字の一部
U+0800 - U+7FFF インド系諸文字、
句読点、学術記号、絵文字、東アジアの諸文字、全角半角形
オーバーライン、Kana 残りの全て 残りの全て 大半
U+10000 - U+1FFFFF 上に含まれない漢字、古代文字 - - - 第3・第4水準漢字の一部

この表でグリーンの太字にしたのが、日本語表現で主に使う文字種。
これを見ると、漢字は「東アジアの諸文字」のカテゴリーに入っている事がわかります。

私はMac使いなんですが、OS X にしたとき、システムフォントに中国漢字やハングルや、アラビア文字などが入ってて「何だコレ?」と思いました。
でも、YouTube や Facebook などで、英語以外の言語のコメントを表示している(読めないけどw)のを見て、ある意味感動したんです。
私が日本語でコメントしたのは、今までなら外国語圏の人にとっては「化けて」いたのが、ちゃんと日本語として表示できてるのね。読める人には呼んでもらえる。こりゃスゴいなと思いました。

余談:byteの次は…メートル法だけどやっぱ2進法

1バイトまでは2進数だけどその先はなぜか10進数(メートル法)に準じて行く不思議について、
「[14-3] コンピュータ上の単位について(ビット、バイト、メガ、ギガ)に移動+まとめました。
そちらをご覧ください。
 ブックマークしてたらごめん。

今回参考にさせていただいたサイト

次回予告

「文字コード」関連を、2回にわけてメモりましたが、んーまだ未消化。
ただ、文字をコンピュータで表示するために、先人がこんだけ知恵を絞ってくれたんだと、わかった事が大収穫でした。

次回は<meta>要素に戻って「name属性」を使います。
これはサイトの説明文を書いたり、著者名を書いたり、サイトに関する情報を書いておく属性です。

関連記事
この記事をはてなブックマークに追加

やる気を保つためにランキングに参加しています。
応援してくださると すっごいやる気を出します! (笑)

初心者にも使いやすい(と思う)レンタルサーバー

「レンタルサーバーはどこがいい?」とご質問をよくいただきますが、自分でも使っていてオススメなのは スターサーバー (ミニバードがスターサーバになりました)。管理画面がわかりやすくていい感じす。
仕事で使ってるロリポップ!もわかりやすい管理画面で、初めてでもすんなり使えます。
両方とも、なんといっても料金が安いです。

ちょっと料金は高いけど、高スペックでコスパが良く、信頼性も高いサーバといえば、やはりさくらのレンタルサーバと、エックスサーバー 。この2つは老舗でユーザーも多いので、質問する場がたくさんあり、初心者の方でもイケるだろうと思います。

スポンサーリンク

コメントの投稿

ご注意:メールアドレスは書かないで
「コメントを送信する」ボタンを押した後の「確認画面」で、メールアドレス・URL などを入力できるようになっており、メールアドレス・URL は、そのままオートリンクになる仕様です。
当方でメールアドレスだけ削除することも、メールアドレスを非公開にすることもできません
メールアドレスは書かないでください。詳しくはこちらにまとめましたのでご覧ください。

スポンサーリンク
最新記事
Category
オススメの本
Links
Calendar
06 | 2018/07 | 08
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 - - - -
Archive
RSS Link
Profile

yuki★hata

Author : yuki★hata
せめて月1回の更新をめざします~。

メールフォームはこちら

スポンサーリンク
スポンサーリンク
Copyright © ほんっとにはじめてのHTML5とCSS3 All Rights Reserved.