[1] 
[DFN[8ビット符号]]、
[DFN[8単位符号]]
([DFN[8-bit code]])
は、
1つの[[バイト]]が8つの[[ビット]]で表される[[符号]]です。

[11] 
狭義にはすべての[[文字]]が8[[ビット]]の[[ビット組合せ]]で表現される[[文字コード]]をいいます。

[12] 
一般的には、すべての[[文字]]が8[[ビット]]の[[ビット組合せ]]の1つ[[以上]]の[[列]]で表される[[文字コード]]をいいます。
現行のほとんどの[[文字コード]]はこの意味の[[8ビット符号]]です。

[16] 
俗に、[[7ビット]]で表せない[[8ビット]]固有の[[ビット組合せ]]
([N[0x80]] - [N[0xFF]])
のことを[[8ビットコード]]ともいいます。


* ISO/IEC 2022 における8ビット符号の構造

[3] '''8ビット符号の構造''' [SRC[[[JIS X 0202]]:1998 8.1]]:
- [[列]] [CODE(char)[00]]〜[CODE(char)[01]]: [[CL]] 領域
-- [[符号化制御機能基本集合]]
- [[列]] [CODE(char)[02]]〜[CODE(char)[07]]: [[GL]] 領域
-- [CODE(charname)[[[SPACE]]]]と 
[CODE(charname)[[[DELETE]]]] と [[94文字集合]]か
-- [CODE(charname)[[[SPACE]]]]と 
[CODE(charname)[[[DELETE]]]] と[[94[SUP[[VAR[n]]]]文字集合]]か
-- [[96文字集合]]か
-- [[96[SUP[[VAR[n]]]]文字集合]]
- [[列]] [CODE(char)[08]]〜[CODE(char)[09]]: [[CR]] 領域
--[[符号化制御機能補助集合]]か
--未使用
- [[列]] [CODE(char)[10]]〜[CODE(char)[15]]: [[GR]] 領域
-- [[94文字集合]] ([CODE(char)[10/00]] と
[CODE(char)[15/15]] は使用しません。) か
-- [[94[SUP[[VAR[n]]]]文字集合]] ([CODE(char)[10/00]] と
[CODE(char)[15/15]] は使用しません。) か
-- [[96文字集合]]か
-- [[96[SUP[[VAR[n]]]]文字集合]]か
-- 未使用

[8] '''8ビット符号の構造''' [SRC@en[[[JIS X 0201]]:1997 5.1.2]]:
- [[CL]] 領域: [[列]] [CODE(char)[0]]〜[CODE(char)[1]]: [[制御文字]]
- [CODE(char)[2/0]]: [CODE(charname)@en[[[SPACE]]]]
- [[GL]] 領域: [CODE(char)[2/1]]〜[CODE(char)[7/14]]: [[図形文字]]
- [CODE(char)[7/15]]: [CODE(charname)@en[[[DELETE]]]]
- [[CR]] 領域: [[列]] [CODE(char)[8]]〜[CODE(char)[9]]: [[制御文字]]
- [CODE(char)[10/0]]: 未定義 (将来の標準化のために予約)
- [[GL]] 領域: [CODE(char)[10/1]]〜[CODE(char)[15/14]]: [[図形文字]]
- [CODE(char)[15/15]]: 未定義 (将来の標準化のために予約)


[4] '''8ビット符号の要素''' [SRC[[[JIS X 0202]]:1998 8.2]]:
- [[C0]] を含まなければなりません。
-- [[固定シフト機能]]を使う場合は、
[CODE(charname)[[[LS0]]]] と [CODE(charname)[[[LS1]]]]
を含まなければなりません [SRC[[[JIS X 0202]]:1998 8.5.1]]。
- [[G0]] を含まなければなりません。
- [[C1]] を含むことができます。
-- [[単独シフト機能]]を使う場合は、 [[C1]] に
[CODE(charname)[[[SS2]]]] と [CODE(charname)[[[SS3]]]]
を含まなければなりません [SRC[[[JIS X 0202]]:1998 8.5.2]]。
- [[G1]] を含むことができます。
- [[G2]] を含むことができます。
- [[G3]] を含むことができます。
- G を3つ以上含む場合は、適切な[[シフト機能]]
([[呼出]]し) を含まなければなりません。
- [[符号化単独追加制御機能]]を1つ以上含むことができます。
- [[符号化符号識別機能]]を1つ以上含むことができます。
- 2個以上の[[符号化制御機能集合]]や
4個以上の[[符号化図形文字集合]]が必要な場合、
[[指示]]機能を含むことができます。

[7] '''7ビット符号からの変換''':
[[7ビット符号]]から[[8ビット符号]]へ変換する方法は
[[7ビット符号]]の項をご覧下さい。

[[#comment]]

* 8ビット符号から7ビット符号への変換

[5]
[[ISO/IEC 2022]] では[[8ビット符号]]から[[7ビット符号]]に
([[等価]]に) 変換する方法が規定されています。

仕様書:
- [[JIS X 0202]]:1998
--[CSECTION[11.1 8ビット符号から7ビット符号への変換]]

[6]
- 実際の変換規則は、変換先[[8ビット符号]]に含まれる[[符号構造]]の機能
[WEAK[([[告知]]機能により識別できます。)]] に依存します。
- [[符号化文字データ要素]]の[[最上位ビット]]が [CODE[0]]
なら、それを無視した下位7ビットを使います。
[[最上位ビット]]が [CODE[1]] の場合は、次のようにします。
-- [[CR]] により[[表現]]している[[符号化制御機能補助集合]]
([[C1]]) の[[制御文字]] : [[エスケープ・シーケンス]]
[CODE(char)[[CODE(charname)[[[ESC]]]] [VAR[Fe]]]] で[[表現]]します。
-- [[GR]] [[シフト状態]]の[[図形文字集合]]の[[図形文字]]は、
下位7ビットで[[表現]]しますが、適当な[[シフト機能]] ([[呼出]]し)
を補います。
-- [CODE(charname)[[[SS2]]]] や [CODE(charname)[[[SS3]]]] 
で[[呼出]]された[[単独図形文字]] ([[単独シフト領域]]が
[[GR]] の場合。) は、下位7ビットで[[表現]]します。

* 関連

[13] 
[[8ビット符号]]でない主要な[[文字コード]]クラスに、
[[7ビット符号]]がありました。

[14] 
他に、16ビット符号や32ビット符号がありました。

* メモ
