| 分類 | 6ビット英数字の基本ラテン文字エンコーディング |
|---|---|
| 後継 | EBCDIC |
BCD(2進化10進数)は、英数字BCD、英数字BCD、BCD交換コード[ 1 ]、またはBCDIC [ 1 ]とも呼ばれ、数字、大文字のラテン文字、および一部の特殊文字と制御文字を6ビットの文字コードとして表現する一連のコードです
ASCIIなどの後発のエンコードとは異なり、BCDコードは標準化されていませんでした。異なるコンピュータメーカー、さらには同じメーカーでも異なる製品ラインごとに独自のバリエーションが存在することが多く、固有の文字が含まれている場合もありました。FIELDATA [ 1 ]のバリエーションやTranscodeなど、マッピングが全く異なる他の6ビットエンコードは、誤ってBCDと呼ばれることがあります 。
BCD の多くのバリエーションは、文字「0」から「9」を対応するバイナリ値としてエンコードします。
技術的には、2進化10進数とは、10進数の各桁が固定数のビット(通常は4ビット)で表される10進数の符号化を指します
1928年のIBMカードの導入に伴い、IBMは英数字情報を表現できるコード[ a ]を開発し、 [ 2 ]後に他のメーカーにも採用されました。このコードは0~9の数字を1つのパンチで表現し、大文字と特殊文字には複数のパンチを使用します。[ 3 ]文字は2つのパンチ(ゾーン[12,11,0] + 数字[1~9])を持ち、ほとんどの特殊文字は2つまたは3つのパンチ(ゾーン[12,11,0、またはなし] + 数字[2~7] + 8)を持ちます。
BCDコードは、パンチカードコードを6ビットの2進コードに適合させたもので、数字列(9行とパンチされていない行)を下位4ビットに、ゾーン列(3行とパンチされていない行)を上位2ビットにエンコードする。[ 4 ]数字ゼロ(0行目の単一パンチ)は通常、何らかの方法で特別に処理され、数字コードは2~7の範囲の数字と8行目のパンチを組み合わせることで10~15の値に拡張された。IBMは、IBM 1620、IBM 1400シリーズ、IBM 700/7000シリーズの非10進アーキテクチャー製品など、初期のIBMコンピューターのほとんどで使用されていたBCD英数字のバリエーションに、 2進化10進数およびBCDという用語を適用した。
BCDを使用していたベンダーとしては、バローズ、[ 5 ]ブル、CDC、[ 6 ] IBM、ゼネラルエレクトリック(コンピュータ部門は1969年にハネウェルに買収された)、NCR、シーメンス、スペリー-ユニバックなどがある。
IBM は、1964 年にSystem/360製品ラインを導入し、BCDIC に基づいた8 ビットの拡張 2 進化 10 進コード(EBCDIC) を発表しました。
レコードマーク文字(‡と表記)は、レコードの終了を示すために使用される文字です。[ 7 ]この文字のBCDコードは、一部のBCDバリアントでは328です。最も近いUnicodeの等価文字はU+29E7⧧ THERMODYNAMICですが、多くのフォントには存在しないため、代わりにU+2021 ‡ DOUBLE DAGGERがよく使用されます。機能的には、これはEBCDIC IRS文字(ASCII RS)のX'1E' に対応します
グループマーク文字(と表記)は、関連するフィールドのグループの開始または終了を示す文字です。[ 8 ]この文字のBCDコードは、一部のBCDバリアントでは77 8です。グループマークは2015年にUnicode標準化のために提案され、[ 9 ] U+2BD2 ⯒ GROUP MARKの値に割り当てられました。機能的には、EBCDIC IGS文字(ASCII GS)のX'1D'に対応します。現在、Unicode 10.0ではこの位置にありますが、SymbolaフォントとUnifontフォントのみがこれをサポートしています。
一方、ワードマークはBCD文字ではありません。IBM 1401などの可変長ワードを持つコンピュータにおいて、ワードの終わりを示すために使用されるフラグビットです。
6ビットBCDコードには多くの異なるバージョンがあります。主な違いは3つあります
「スペイン語圏の国」では、文字「Ñ」は元のシステムには存在しなかったため、 Bull、NCR、Control Data などのほとんどのメーカーは「@」を選択しましたが、データベースを 7 ビット ASCII コードに統合する際に不整合が発生しました。そのコーディング システムでは「/」文字が選択されたため、同じ文字に対して 2 つの異なるコードが生成されました。
以下の表は、BCD文字の数値を16進数(基数16)表記で示しています。これは、4ビットの2進化10進数に2ビットを加えた構造を最も明確に反映しています。例えば、3x行x1列にある「A」のコードは、16進数では31、2進数では「11 0001」です。
BCDICの最初のバージョンは48文字でした。これは、カードパンチパターンとプリンタの文字セットに基づいていたためであり、どちらも2の累乗の文字数を推奨していませんでした
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | @ | |||
| 1倍 | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | 、 | % | |||||
| 2倍 | - | J | K | L | M | N | O | P | Q | R | $ | * | ||||
| 3倍 | & | A | B | C | D | E | F | G | H | 私 | 。 | 。 |
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | @ | : | > | > |
| 1倍 | √ | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | ¢ | 、 | % | = | = | " |
| 2倍 | - | J | K | L | M | N | O | P | Q | R | " | $ | * | ) | ; | ; |
| 3倍 | & | A | B | C | D | E | F | G | H | 私 | ? | 。 | 。 | ( | < | < |
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | @ | : | > | > |
| 1倍 | BCDIC-Aコードページはコードページ353 ( CP353とも呼ばれる)に割り当てられました。このコードページの一部の文字はUnicodeには存在しません。(「#」の重複はIBM自身のドキュメントに記載されており、誤りではありません。 [ 11 ] ) | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | ¢ | 、 | % | ␢ | γ | \ |
| 2倍 | - | J | K | L | M | N | O | P | Q | R | " | # | * | ] | ; | ; |
| 3倍 | & | A | B | C | D | E | F | G | H | 私 | ? | 。 | 。 | [ | < | < |
[
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | BCDIC-Bコードページは、コードページ354 ( CP354とも呼ばれます)として割り当てられました。 [ 12 ]このコードページの文字の一部はUnicodeには含まれていません | = | : | > | > |
| 1倍 | BCDIC-Aコードページはコードページ353 ( CP353とも呼ばれる)に割り当てられました。このコードページの一部の文字はUnicodeには存在しません。(「#」の重複はIBM自身のドキュメントに記載されており、誤りではありません。 [ 11 ] ) | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | ¢ | 、 | ( | ␢ | γ | \ |
| 2倍 | - | J | K | L | M | N | O | P | Q | R | " | # | * | ] | ; | ; |
| 3倍 | + | A | B | C | D | E | F | G | H | 私 | ? | 。 | ) | [ | < | < |
[
PTTC/BCDコードページ
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | ||||
| 1倍 | @ | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | ¢ | 、 | ␢ | |||
| 2倍 | - | J | K | L | M | N | O | P | Q | R | < | $ | ||||
| 3倍 | & | A | B | C | D | E | F | G | H | 私 | ) | 。 |
PTTC/BCD H オプションは、コード ページ 357、またはCP357として割り当てられました。
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | スペース | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | = | ||||
| 1倍 | = | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | ¢ | 、 | ||||
| 2倍 | - | J | K | L | M | N | O | P | Q | R | " | $ | ||||
| 3倍 | + | A | B | C | D | E | F | G | H | 私 | ? | 。 |
I
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | space | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | ' | ||||
| 1x | ! | / | S | T | U | V | W | X | Y | Z | ⧧ | , | ||||
| 2x | - | J | K | L | M | N | O | P | Q | R | < | ; | ||||
| 3x | = | A | B | C | D | E | F | G | H | I | > | . |
<
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | space | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | ||||
| 1x | @ | / | S | T | U | V | W | X | Y | Z | , | |||||
| 2x | - | J | K | L | M | N | O | P | Q | R | $ | |||||
| 3x | & | A | B | C | D | E | F | G | H | I | . |
#
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | space | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | # | ||||
| 1x | @ | / | S | T | U | V | W | X | Y | Z | , | |||||
| 2x | - | J | K | L | M | N | O | P | Q | R | $ | |||||
| 3x | & | A | B | C | D | E | F | G | H | I | . |
PTTC/BCDデュオケースオプションは、コードページ360、またはCP360として割り当てられました
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | # | @ | ||||
| 1x | & | A | B | C | D | E | F | G | H | I | +0 | . | 。 | |||
| 2x | - | J | K | L | M | N | O | P | Q | R | 以下の表は0 | $ | * | |||
| 3x | space | / | S | T | U | V | W | X | Y | Z | ⧧ | , | % |
(+0*−0%
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | + | - | ||||
| 1x | + | A | B | C | D | E | F | G | H | I | . | ⌑ | ||||
| 2x | - | J | K | L | M | N | O | P | Q | R | $ | * | ||||
| 3x | 0 | / | S | T | U | V | W | X | Y | Z | , | % |
パンチカードの 12 行目または 11 行目にオーバーパンチされた符号付きの数字 0 に対応する、めったに使用されない文字でした。+-*
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | * | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | = | - | ||||
| 1x | + | A | B | C | D | E | F | G | H | I | . | ) | ||||
| 2x | - | J | K | L | M | N | O | P | Q | R | $ | * | ||||
| 3x | 0 | / | S | T | U | V | W | X | Y | Z | , | ( |
A similar code was used for the IBM 709, 7090 and 7094 successors,[15] but with some of the special characters reassigned:
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | = | " | ||||
| 1x | & | A | B | C | D | E | F | G | H | I | +0 | . | ) | |||
| 2x | - | J | K | L | M | N | O | P | Q | R | −0 | $ | * | |||
| 3x | space | / | S | T | U | V | W | X | Y | Z | ± | , | ( |
Below is the table of GE/Honeywell's GBCD code, a variant of BCD.[16]
| x0 | x1 | x2 | x3 | x4 | x5 | x6 | x7 | x8 | x9 | xA | xB | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | [ | # | @ | : | > | ? |
| 1x | space | A | B | C | D | E | F | G | H | I | & | . | ] | ( | < | \ |
| 2x | ^ | J | K | L | M | N | O | P | Q | R | - | $ | * | ) | ; | ' |
| 3x | + | / | S | T | U | V | W | X | Y | Z | _ | , | % | = | " | ! |
次の表は、 Burroughs B5500コンピュータのコード割り当てを示しています。これはBIC(Burroughs Interchange Code)と呼ばれることもあります。[ 17 ]
| 0 | 1 | 2 | 3 | 4 | 5 | 6倍 | 7倍 | 8倍 | 9倍 | A倍 | B倍 | xC | xD | xE | xF | |
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | # | @ | ? | : | > | ≥ |
| 1倍 | + | A | B | C | D | E | F | G | H | 私 | 。 | [ | & | ( | < | ← |
| 2倍 | × | J | K | L | M | N | O | P | Q | R | $ | * | - | ) | ; | ≤ |
| 3倍 | スペース | / | S | T | 上 | 下 | 西 | 横 | 縦 | 横 | 、 | % | ≠ | = | ] | " |
{{cite web}}:欠落または空|title=(ヘルプ)