[1] [DFN[ISO/IEC 4873]] [CITE[8‐Bit Coded Character Set Structure and Rules]] ([CITE[8ビット符号化文字集合の構造と規則]]) は、8ビット符号の構造を定めた[[国際規格]]です。 最新版は1991年に発行されています。 [[ECMA 43]] に対応します。 [2] ISO/IEC 4873 に規定する符号構造は、 [[ISO/IEC 2022]] に基づきます。この構造に基づいた具体的な[[符号化文字集合]]の例として、 [[ISO/IEC 8859]] があります。 [[#comment]] *ISO/IEC 4873 の8ビット符号 [3] ISO/IEC 4873 に適合する符号は、次のような構造を持ちます [SRC[ISO/IEC 4873:1991 6]]。 ,名前 ,符号位置,明示的呼出,メモ ,[CODE(char)[[[C0]]]] 集合,"[CODE(char)[00/00]]〜[CODE(char)[00/13]], [CODE(char)[01/00]]〜[CODE(char)[01/15]]",なし,実装水準1以上 ,[CODE(char)[[[SPACE]]]],[CODE(char)[02/00]],なし,実装水準1以上 ,[CODE(char)[[[G0]]]] 集合,[CODE(char)[02/01]]〜[CODE(char)[07/14]],なし,実装水準1以上 ,[CODE(char)[[[DELETE]]]],[CODE(char)[07/15]],なし,実装水準1以上 ,[CODE(char)[[[C1]]]] 集合,[CODE(char)[08/00]]〜[CODE(char)[09/15]],なし,"実装水準1以上, 実装水準2以上では空集合以外" ,[CODE(char)[[[G1]]]] 集合,[CODE(char)[10/00]]〜[CODE(char)[15/15]],,"実装水準1以上, 実装水準2以上では空集合以外" ,[CODE(char)[[[G2]]]] 集合,,,実装水準2以上 ,[CODE(char)[[[G3]]]] 集合,,,実装水準2以上 - 実装水準2以上では、 [CODE(char)[G2]] と [CODE(char)[G3]] の両方が空集合であってはなりません。 - 実装水準2以上では、 [CODE(char)[G2]] と [CODE(char)[G3]] をそれぞれ [CODE(char)[[[SS2]]]] と [CODE(char)[[[SS3]]]] で''[[左]]''に呼出せます。 - 実装水準3では [CODE(char)[G1]]〜[CODE(char)[G3]] をそれぞれ [CODE(char)[[[LS1R]]]], [CODE(char)[[[LS2R]]]], [CODE(char)[[[LS3R]]]] で呼出せます。 - [CODE(char)[[[CR]]]] や [CODE(char)[[[BS]]]] を使った[[重ね打ち]]は禁止されています。 [SRC[ISO/IEC 4873:1991 7]] [[#comment]] **C0 集合 [4] [CODE(char)[[[CL]]]] = [CODE(char)[C0]] は、 2[[符号位置]] [CODE(char)[00/14]] と [CODE(char)[00/15]] [WEAK[(普通 [CODE(char)[[[LS1]]]] と [CODE(char)[[[LS0]]]] に使われます。)]] の使用が禁止されており、 [CODE(char)[01/11]] が制御文字 [CODE(char)[[[ESCAPE]]]] に固定されているほかは、割当は自由です。 [SRC[ISO/IEC 4873:1991 7.1]] [[#comment]] **G0 集合 [5] [CODE(char)[[[GL]]]] = [CODE(char)[G0]] は、 [[ISO/IEC 646]] [[国際基準版]] ([[IRV]]) と同じです [SRC[ISO/IEC 4873:1991 7.4]]。 ISO 4873-1985 では完全には規定されていませんでした。 [[#comment]] **C1 集合 [6] [CODE(char)[[[CR]]]] = [CODE(char)[[[C1]]]] は、 [CODE(char)[[[SS2]]]] と [CODE(char)[[[SS3]]]] を使う場合には、 それぞれ [CODE(char)[08/14]] と [CODE(char)[08/15]] に割当てなければなりません。使わない場合は、 両符号位置は使用禁止となっています。他の符号位置は自由です。 [SRC[ISO/IEC 4873:1991 7.6]] [[#comment]] **図形文字の一意な符号化 [7] 同じ[[名前]]の[[図形文字]]は、 G 番号の一番小さな集合に属する符号位置を使います。 [SRC[ISO/IEC 4873:1991 9.2]] [[#comment]] **実装水準の識別 [8] 実装水準の識別には、 [[ISO/IEC 2022]] の[[告知]]シーケンスを使います。 [[終端バイト]]は [CODE(char)[04/12]] 〜 [CODE(char)[04/14]] がそれぞれ実装水準 1 〜 3 に割当てられています。 [SRC[ISO/IEC 4873:1991 10.2, ISO/IEC 2022]] [9] [[情報交換]]の途中で[[文字集合]]を替える場合や実装水準を変える場合には、 そこで実装水準の[[告知]]列と''全'' C / G 集合の[[指示]]列を入れる必要があります。 [SRC[ISO/IEC 4873:1991 10.4, 10.5]] [[#comment]] * メモ