1byteでの表現と限界

12.4.1. 1byteでの表現と限界

ASCIIの文字は[0,127]の範囲に割り当てられていて、[128,255]の部分は未使用です。 ここに別の文字を割り当てても 1byte (=8bit) におさめることができます。日本と欧州の例を紹介します。

重要なことは、これらの規格は共存できないということです。 たとえば同じ B1 という番号が、 JIS X 0201では に、ISO 8859-1 では ± になります。

JIS X 0201 #

はじめりカタカナを収録したJIS X 0201を紹介します。

[0,127] はおおむねASCIIと互換ですが、 \(\texttt{5C}_{(16)}\) , \(\texttt{7E}_{(16)}\) の2 文字が、バックスラッシュ \ とチルダ ~ からそれぞれ円記号、オーバースコア(上付き線)と変わっています。HWBでは詳細に立ち入りませんが、ASCIIとの差異が重要な場合は、JIS ローマ字と呼びます。

0123456789ABCDEF
2SP!#$%&()*+,./
30123456789:;<=>?
4@ABCDEFGHIJKLMNO
5PQRSTUVWXYZ[¥]^_
6`abcdefghijklmno
7pqrstuvwxyz{|}DEL

128番以降の JIS 仮名は、以下のようにカナなどが規定されます。 \(\texttt{A1}_{(16)}\) から \(\texttt{DF}_{(16)}\) の部分です。

0123456789ABCDEF
A
Bソ
C
D

日本語を書くためにはひらがなも漢字も使いたいところですが、文字種が 1byte = 8bit = 256 を越えるため、1文字 1byteの制約では無理でした。

HWBではこれらのカナ文字を使わないことを勧めます。
半角カナ
この JIS X 0201 に属する文字は、伝統的に縦横比が 2:1 の字形で表示されていました。そのため、これらの文字を半角文字と呼ぶ場合があります(文字コードで半角全角が定まっているわけではありません)。特に、JIS 仮名のことを半角カナと呼ぶことがあります。 JIS X 0201 は、ISO 646 の日本版(JIS ローマ字)と、カタカナ(JIS 仮名半角カナ)を含んだ文字集合です。

ISO 8859-1 #

つづいて欧州諸言語のための文字コードISO 8859-1を紹介します。 前半の文字はASCIIを踏襲し、後半の128番以降に アクセント記号や他の文字が規定されています。円マークもポンド等他の通貨記号と同列で A5 に収録されています。

ISO/IEC 8859-1

0123456789ABCDEF
ANBSP¡¢£¤¥¦§¨©ª«¬SHY®¯
B°±²³´µ·¸¹º»¼½¾¿
CÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏ
DÐÑÒÓÔÕÖ×ØÙÚÛÜÝÞß
Eàáâãäåæçèéêëìíîï
Fðñòóôõö÷øùúûüýþÿ

ISO/IEC 8859 は 15 種類(ISO 8859-1 から 16 まで。12 は欠番)定められていて、 よく使われるのは ISO-8859-1 とそれにユーロ記号追加などの修正を行った ISO-8859-15 です。 ISO/IEC 8859 規格の文字コードは、JIS X 0201 と同じように 8 ビットの構成となっており、最上位ビットが 0 の部分には ISO 646 国際基準版(つまり、ASCII の制御文字でない部分)がそのまま、残りの最上位ビットが 1 の部分で追加の文字を規定します。

人のための文字 1byteでの表現と限界 日本語
このサイトは開発版の はいぱーワークブック です.