1バイトコード

文字コード

数値に文字を対応させてコンピュータに文字を扱えるようにしました。この文字に対応させた数値を文字コードといいます。

例えば...

文字コード 1 2 3 4 5 ....
文字 A B C D E ....

どの数値にどの文字を割り当てるかを取り決めておく必要がありますが、残念ながらいくつかのやり方があって完全には統一されていません。

また、文字がいくつあるかによって、何ビット必要になるかが決まります。

1バイト(7ビット)で済まそうとした時代

US-ASCIIコード表

7ビットで 27=128 個の文字を表現できます。(英語のアルファベットは26文字しかないのでこれで十分でした)

A は 100 0001 または 41 , B は 100 0010 または 42 です。

m は 110 1101 または 6D です。

2進数上位 000001 010011 100101 110111
2進数下位 16進1桁目→
↓16進2桁目
0123 4567
00000NUL DLE SP0@P`p
00011SOH DC1 !1AQaq
00102STX DC2 "2BRbr
00113ETX DC3 #3CScs
01004EOT DC4 $4DTdt
01015ENQ NAK %5EUeu
01106ACK SYN &6FVfv
01117BEL ETB '7GWgw
10008BS CAN (8HXhx
10019HT EM) 9IYiy
1010ALF SUB *:JZj z
1011BVT ESC +;K[k{
1100CFF FS, <L\l|
1101DCR GS -=M]m}
1110ESO RS .>N^n~
1111FSI US /?O_o DEL

例えば...

文字コード 49 6E 66 6F 72 6D 61 74 69 6F 6E
文字 I n f o r m a t i o n

ほとんどの文字コードは16進数で表します。8ビットまでは16進2ケタで表すことができます。

1バイト(8ビット)で済まそうとした時代

フランス語ではこんな文字が必要です。

è é ê ë ï ç œ æ

ドイツ語ではこんな文字が必要です。

ä ö ü ß

スペイン語ではこんな文字が必要です。

ñ ¿ ¡

英語以外の言語の文字を加えるために8ビットにしました。8ビットで 28=256 個の文字を表現できます。

ISO-8859-1

やはり、41がA, 6Dがmと読む。左半分はASCIIと同じ。

e8 は è

2進数上位 00000001 00100011 01000101 01100111 10001001 10101011 11001101 11101111
2進数下位 16進1桁目→
↓16進2桁目
0123456789abcdef
00000 0@P`p °ÀÐàð
00011!1AQaq¡±ÁÑáñ
00102"2BRbr¢²ÂÒâò
00113#3CScs£³ÃÓãó
01004$4DTdt¤´ÄÔäô
01015%5EUeu¥µÅÕåõ
01106&6FVfv¦ÆÖæö
01117'7GWgw§·Ç×ç÷
10008(8HXhx¨¸ÈØèø
10019)9IYiy©¹ÉÙéù
1010a*:JZjzªºÊÚêú
1011b+;K[k{«»ËÛëû
1100c,<L\l|¬¼ÌÜìü
1101d-=M]m}­½ÍÝíý
1110e.>N^n~®¾ÎÞîþ
1111f/?O_odel¯¿Ïßïÿ

1バイト(7ビット,8ビット)文字コードの変遷

1バイトで済んでいた時代の文字コードでもいろいろ変遷があります。

文字コード 説明 ビット数
ASCII アメリカ合衆国の文字コード
American Standard Code for Information Interchange
7ビット
ISO/IEC 646 国際標準化機構の文字コード ASCIIを元にした国際規格 7ビット
ISO/IEC 8859 国際標準化機構の文字コード ASCIIを8ビットに拡張した 8ビット
JIS X 0201 日本の文字コード。ISO/IEC 646 を元に半角カナを追加 7ビット/8ビット

8ビットでも不足で世界はユニコードで統一に向かいます。それでもASCII部分はほとんど共通ですからそこを眺めてください。

ここでは次のことを理解・把握してください。

JIS X 0201

ISO/IEC 646 に基づき ¥ と ¯ を変更し、半角カナを加えたものです。ここには8ビットコードを書きましたが、7ビットで切り替えて使うものも定義されています。e列f列の「未」は未定義の部分です。8列9列は7ビットでは0列1列の制御コードと重なるので空けています。

濁点、半濁点は別になっていますので「ガ」は「カ」「゛」と2バイトで表現されます。

この半角カナは現在では漢字を含む文字コードの全角カナを使うのが望ましいとされています。

1桁目→
↓2桁目
0123 4567 89ab cdef
0 0 @P`p  
1!1 AQaq
2"2 BRbr
3#3 CScs
4$4 DTdt
5%5 EUeu
6&6 FVfv
7'7 GWgw
8(8 HXhx
9)9 IYiy
a*: JZjz
b+; K[k{
c,< L¥ l|
d-= M]m}
e.> N^n¯
f/? O_odel ソ

ISO/IEC

ISO

国際標準化機構(こくさいひょうじゅんかきこう、International Organization for Standardization)、または略称 ISO(アイソ、アイエスオー、イソ)は、電気分野を除く工業分野の国際的な標準である国際規格を策定するための民間の非政府組織。本部はスイスのジュネーヴ。スイス民法による非営利法人。公用語はフランス語、英語、ロシア語。各国1機関が参加できる。(出典: フリー百科事典『ウィキペディア(Wikipedia)』)

英語:International Organization For Standardization

仏語:L'Organisation internationale de normalisation (OIN)

露語:Международная организация по стандартизации

国際標準化機構という名称を略称で表そうとしたとき、言語によって異なる略称になってしまう(英語ではIOS、フランス語ではOINなど)。そこでギリシア語のisos(均等、均質)にちなみ、言語や地域によらない短縮名としてISOが選ばれた。

IEC

国際電気標準会議(こくさいでんきひょうじゅんかいぎ、International Electrotechnical Commission、IEC)

電気工学、電子工学、および関連した技術を扱う国際的な標準化団体