1. ASCII
「ASCII (American Standard Code for Information Interchange)」 は1960年代にアメリカの規格として開発された文字コードです。
7ビット で表現し、英数字・記号・制御文字を含む 128種類の文字を定義しています。
0x00(0000 0000) ~ 0x1F(0001 1111) 及び 0x7F(0111 1111) には制御文字、
0x20(0010 0000) にはSP(スペース)
が定義されています。
0x21(0010 0001) ~ 0x7E(0111 1110) に文字が定義されています。
なお、制御文字の意味は以下となります。
[C0 制御文字(0x00〜0x1F, 0x7F)]
| Hex | 名称 | 機能概要 |
|---|---|---|
| 0x00 | NUL | Null(空文字) |
| 0x01 | SOH | Start of Heading(ヘッダ開始) |
| 0x02 | STX | Start of Text(テキスト開始) |
| 0x03 | ETX | End of Text(テキスト終了) |
| 0x04 | EOT | End of Transmission(伝送終了) |
| 0x05 | ENQ | Enquiry(照会) |
| 0x06 | ACK | Acknowledge(応答) |
| 0x07 | BEL | Bell(ベル) |
| 0x08 | BS | Backspace(後退) |
| 0x09 | HT | Horizontal Tab(水平タブ) |
| 0x0A | LF | Line Feed(改行) |
| 0x0B | VT | Vertical Tab(垂直タブ) |
| 0x0C | FF | Form Feed(改頁) |
| 0x0D | CR | Carriage Return(復帰) |
| 0x0E | SO | Shift Out(G1集合へ切替) |
| 0x0F | SI | Shift In(G0集合へ切替) |
| 0x10 | DLE | Data Link Escape(データリンク用) |
| 0x11 | DC1 | Device Control 1(端末制御) |
| 0x12 | DC2 | Device Control 2 |
| 0x13 | DC3 | Device Control 3 |
| 0x14 | DC4 | Device Control 4 |
| 0x15 | NAK | Negative Acknowledge(否定応答) |
| 0x16 | SYN | Synchronous Idle(同期アイドル) |
| 0x17 | ETB | End of Transmission Block(伝送ブロック終了) |
| 0x18 | CAN | Cancel(取消) |
| 0x19 | EM | End of Medium(媒体終了) |
| 0x1A | SUB | Substitute(代替) |
| 0x1B | ESC | Escape(エスケープ) |
| 0x1C | FS | File Separator(ファイル区切り) |
| 0x1D | GS | Group Separator(グループ区切り) |
| 0x1E | RS | Record Separator(レコード区切り) |
| 0x1F | US | Unit Separator(単位区切り) |
| 0x7F | DEL | Delete(削除) |
2. ISO/IEC 646(ASCIIをベースとした各国語版の枠組み)
「ISO/IEC 646」は「ASCII」を国際標準化したもので、基本は「ASCII」と同じ 7ビット ですが、各国が必要に応じて一部の記号を置き換え可能としています。
また、「ISO/IEC 646 IRV」と呼ばれる国際参照版(International Reference Version)は、「ASCII」と同一の文字集合をもつ標準版として定められています。
参考として、「ISO/IEC 646 ドイツ版」は以下となります。
3. JIS X 0201(日本版のISO/IEC 646)
「JIS X 0201」日本工業規格で定められた 8ビット の文字コードです。
前半(0x00–0x7F)はASCII互換、後半(0xA1–0xDF)は 片仮名専用領域 を定義しています。
Shift_JISなど日本語文字コード体系の基礎となっています。
C0 制御文字(0x00〜0x1F, 0x7F)はASCIIと同じです。
C1 制御文字(0x80〜0x9F)は以下となります。
[C1 制御文字(0x80〜0x9F)]
| Hex | 名称 | 機能概要 |
|---|---|---|
| 0x80 | PAD | Padding Character(詰め物) |
| 0x81 | HOP | High Octet Preset(未使用) |
| 0x82 | BPH | Break Permitted Here(改行可能位置) |
| 0x83 | NBH | No Break Here(改行禁止) |
| 0x84 | IND | Index(インデックス移動) |
| 0x85 | NEL | Next Line(改行+復帰) |
| 0x86 | SSA | Start of Selected Area(選択領域開始) |
| 0x87 | ESA | End of Selected Area(選択領域終了) |
| 0x88 | HTS | Horizontal Tab Set(水平タブ設定) |
| 0x89 | HTJ | Horizontal Tab Justify(整列付き水平タブ) |
| 0x8A | VTS | Vertical Tab Set(垂直タブ設定) |
| 0x8B | PLD | Partial Line Down(部分行下移動) |
| 0x8C | PLU | Partial Line Up(部分行上移動) |
| 0x8D | RI | Reverse Line Feed(逆改行) |
| 0x8E | SS2 | Single Shift Two(G2集合の一時呼び出し) |
| 0x8F | SS3 | Single Shift Three(G3集合の一時呼び出し) |
| 0x90 | DCS | Device Control String(装置制御文字列) |
| 0x91 | PU1 | Private Use One(私用領域) |
| 0x92 | PU2 | Private Use Two |
| 0x93 | STS | Set Transmit State(送信状態設定) |
| 0x94 | CCH | Cancel Character(文字取消) |
| 0x95 | MW | Message Waiting(メッセージ待機) |
| 0x96 | SPA | Start of Protected Area(保護領域開始) |
| 0x97 | EPA | End of Protected Area(保護領域終了) |
| 0x98 | SOS | Start of String(特殊文字列開始) |
| 0x99 | SGCI | Single Graphic Character Introducer(図形文字導入) |
| 0x9A | SCI | Single Character Introducer(単一文字導入) |
| 0x9B | CSI | Control Sequence Introducer(制御シーケンス開始) |
| 0x9C | ST | String Terminator(文字列終了) |
| 0x9D | OSC | Operating System Command(OS命令) |
| 0x9E | PM | Privacy Message(プライバシー保護) |
| 0x9F | APC | Application Program Command(アプリ制御) |
参考文献
プログラマのための文字コード技術入門(ISBN978-4-7741-4164-0)




