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