文字コードの基本

PG基礎

1. はじめに

文字コードについて基本的なことをまとめます。

2. 概要

英数字、記号、ひらがな、漢字…等の文字は、コンピュータはそのまま理解することができないため、コンピュータが理解できる数値(16進数)に置き換えたものを文字コードという。 文字集合符号化方式という2つの概念が存在し、これらが組み合わさってコンピュータの文字を表している。

3. 文字集合

「文字」と「文字に割り当てた番号」の対応表のこと。 Unicode、JIS(ISO-2022-JP)等がある。

4. 符号化方式

文字集合で定義されている一つ一つの文字を、どのように符号化するかという方式(エンコーディング)。 例えば、Unicodeという一つの文字集合に対して、異なる文字符号化方式(UTF-8、UTF-16)が存在する。

4-1. ASCIIコード

  • 最も基礎となる文字コード。
  • 「数字」「アルファベット」「記号」は1バイトで表す。

ASCIIコード表 (10進数ASCIIコード、16進数ASCIIコード、ASCII文字)

10進 16進 文字 10進 16進 文字 10進 16進 文字 10進 16進 文字
0 00 NULL 32 20 SP 64 40 @ 96 60 `
1 01 SOH 33 21 ! 65 41 A 97 61 a
2 02 STX 34 22 " 66 42 B 98 62 b
3 03 ETX 35 23 # 67 43 C 99 63 c
4 04 EOT 36 24 $ 68 44 D 100 64 d
5 05 ENQ 37 25 % 69 45 E 101 65 e
6 06 ACK 38 26 & 70 46 F 102 66 f
7 07 BEL 39 27 ' 71 47 G 103 67 g
8 08 BS 40 28 ( 72 48 H 104 68 h
9 09 HT 41 29 ) 73 49 I 105 69 i
10 0A LF 42 2A * 74 4A J 106 6A j
11 0B VT 43 2B + 75 4B K 107 6B k
12 0C FF 44 2C , 76 4C L 108 6C l
13 0D CR 45 2D - 77 4D M 109 6D m
14 0E SO 46 2E . 78 4E N 110 6E n
15 0F SI 47 2F / 79 4F O 111 6F o
16 10 DLE 48 30 0 80 50 P 112 70 p
17 11 DC1 49 31 1 81 51 Q 113 71 q
18 12 DC2 50 32 2 82 52 R 114 72 r
19 13 DC3 51 33 3 83 53 S 115 73 s
20 14 DC4 52 34 4 84 54 T 116 74 t
21 15 NAK 53 35 5 85 55 U 117 75 u
22 16 SYN 54 36 6 86 56 V 118 76 v
23 17 ETB 55 37 7 87 57 W 119 77 w
24 18 CAN 56 38 8 88 58 X 120 78 x
25 19 EM 57 39 9 89 59 Y 121 79 y
26 1A SUB 58 3A : 90 5A Z 122 7A z
27 1B ESC 59 3B ; 91 5B [ 123 7B {
28 1C FS 60 3C < 92 5C | 124 7C
29 1D GS 61 3D = 93 5D ] 125 7D }
30 1E RS 62 3E > 94 5E ^ 126 7E ~
31 1F US 63 3F ? 95 5F _ 127 7F DEL

4-2. Shift_JIS

  • ASCIIコードの文字に加え、日本語の文字を加えたもの。
  • 半角カタカナは1バイトで表現し、それ以外の全角文字は、2バイトで表現する。
  • Windows、Macでも採用しており、PC上のファイルで広く用いられている。

4-3. UTF-8

  • ASCIIコードの文字に加え、世界中の文字を加えたもの。
  • ASCIIコード以外の文字は、2~6バイトで表現され、日本語の文字は、基本的に3バイトで表現する。
  • ASCIIコードとの互換性が良いため、パソコンで扱いやすく、世界中の多くのソフトウェアは、UTF-8に対応しています。

4-4. UTF-16

  • ASCIIコードは使わず、基本的な世界中の文字(基本多言語)の全てを2バイトで表現し、残りのマイナーな文字を4バイトで表現した文字コード。
  • 半角アルファベット、半角数字、日本語のほとんどが2バイトで表現されます。
  • 多くの文字を対応しており、様々な場面で使われているが、UTF-8より対応するシフトウェアは少ない。

4-5. EUC

  • Extended UNIX Codeの略。
  • UNIX環境でよく使われるコード体系。
  • EUCには日本語EUC、中国語EUC、韓国語EUCなどがある。

5. おわりに

他にも追加情報等ありましたら随時更新致します。