Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コンピュータによる文字の表現

 コンピュータによる文字の表現

2023年度更新

Naoki Kato

July 17, 2023
Tweet

More Decks by Naoki Kato

Other Decks in Education

Transcript

  1. by Naoki Kato © Naoki Kato © Naoki Kato コンピュータのマルチメディア化

    情報をビット列で表現すると コンピュータに入力(記憶)することができる なんらかの処理をすることができる コンピュータにおける情報の表現 ⽂字や絵図 映像 ⾳楽
  2. by Naoki Kato © Naoki Kato © Naoki Kato 文字をビット列で表現する

    文字に番号をつけ, その番号を二進記数法で表す 文字の表現 10110110(2) 182(10) k
  3. by Naoki Kato © Naoki Kato © Naoki Kato 文字情報を伝達

    なんらかの方法で文字をビット列で表現 (二進記数法による数) 文字コード 文字の表現 加 山 川 蓮 虫 飛 枦 工 文字セット 4fh 21h 32h 43h 5bh 45h 符号化方式 図1 文字コードの定義要素 コードポイント
  4. by Naoki Kato © Naoki Kato © Naoki Kato フォント

    見た目の表現は文字コードには含まれない 異字体など,文字コードで見た目が定義されているものも 文字の表現 MS明 明朝 朝 MSゴ ゴシ シッ ック ク HG丸 丸ゴ ゴシ シッ ック ク 英 英角 角ポ ポッ ップ プ体 体 フォント フォント フォント フォント 新 新字 字体 体 両 旧 旧字 字体 体 兩 おまけ 文字装飾(太字や斜体)は使わない!フォントで切り替え!
  5. by Naoki Kato © Naoki Kato © Naoki Kato ASCII

    7ビットで表現=128種 ‘A’のコードポイントは 41h 文字の表現 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SPC ! " # $ % & ' ( ) * + , - . / 3 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ‘ a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ DEL
  6. by Naoki Kato © Naoki Kato © Naoki Kato ASCII

    7ビットで表現=128種 ‘A’のコードポイントは 41h 文字の表現 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SPC ! " # $ % & ' ( ) * + , - . / 3 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ‘ a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ DEL 記号と英数字
  7. by Naoki Kato © Naoki Kato © Naoki Kato ASCII制御文字

    14h 15h 16h 0Dh 17h 18h 19h abc def 文字の表現
  8. by Naoki Kato © Naoki Kato © Naoki Kato ASCIIコードの構造

    文字の表現 記号と英数字 0 0 01〜11 制御⽂字 記号と英数字
  9. by Naoki Kato © Naoki Kato © Naoki Kato 国際規格

    ISO646 国ごとに決められるコードポイントを用意 文字の表現 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SPC ! " # $ % & ' ( ) * + , - . / 3 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ‘ a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ DEL 記号と英数字
  10. by Naoki Kato © Naoki Kato © Naoki Kato JIS

    X 0201 7ビット版(JIS7) JISローマ字 JISカナ この二つをSI(0Fh),SO(0Eh)で切り替える (例)41h 42h 0Fh 41h 42h 0Eh 41h A B チ ツ A 文字の表現 記号と英数字 カタカナ
  11. by Naoki Kato © Naoki Kato © Naoki Kato JISカナ

    文字の表現 カタカナ 0 0 01〜10 1 1 カタカナ 制御⽂字 ASCIIの制御⽂字 部分と同じ
  12. by Naoki Kato © Naoki Kato © Naoki Kato JISカナ

    文字の表現 0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SPC 。 「 」 、 ・ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ 3 ー ア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ 4 タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ 5 ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン ゛ ゜ 6 7 DEL
  13. by Naoki Kato © Naoki Kato © Naoki Kato JIS

    X 0201 8ビット版(JIS8) 文字の表現 カ ナ JISローマ字と同じ表現 0 1 カタカナ(A0h~CF) 0 0 1 01〜10 1 1 1 カタカナ JISローマ字 の⽂字セット ASCIIの制御⽂字 部分と同じ表現
  14. by Naoki Kato © Naoki Kato © Naoki Kato 文字の表現

    0 1 2 3 4 5 6 7 8 9 A B C D E F 0 NUL SOH STX ETX EOT ENQ ACK BEL BS HT LF VT FF CR SO SI 1 DLE DC1 DC2 DC3 DC4 NAK SYN ETB CAN EM SUB ESC FS GS RS US 2 SPC ! " # $ % & ' ( ) * + , - . / 3 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 4 @ A B C D E F G H I J K L M N O 5 P Q R S T U V W X Y Z [ \ ] ^ _ 6 ‘ a b c d e f g h i j k l m n o 7 p q r s t u v w x y z { | } ~ DEL 8 9 A 。 「 」 、 ・ ヲ ァ ィ ゥ ェ ォ ャ ュ ョ ッ B ー ア イ ウ エ オ カ キ ク ケ コ サ シ ス セ ソ C タ チ ツ テ ト ナ ニ ヌ ネ ノ ハ ヒ フ ヘ ホ マ D ミ ム メ モ ヤ ユ ヨ ラ リ ル レ ロ ワ ン ゛ ゜ E F
  15. by Naoki Kato © Naoki Kato © Naoki Kato 漢字文字セット

    JIS X 0208 非漢字453字,第一水準2965字,第二水準3461字 JIS X 0213 JIS X 0208 第三水準8797字,第四水準2436字 文字の表現
  16. by Naoki Kato © Naoki Kato © Naoki Kato JISコード

    ISO2022準拠 ISO2022-JP ASCIIを併用 7ビット×2で表現 制御文字部分を除いた21h~7ehを使用 94×94=8836種 文字の表現 01~11 × 01~11 7E 21 21 7E ! " # $ 目 2バイト目
  17. by Naoki Kato © Naoki Kato © Naoki Kato JISコード

    “加” は 32h 43h ASCIIでは “2C” エスケープシーケンスの利用 文字の表現 a b c * $ B あ い う * ( B a b c 61 62 63 1B 24 42 28 65 28 66 28 67 1B 28 42 61 62 63
  18. by Naoki Kato © Naoki Kato © Naoki Kato Shift-JISコード

    8ビット×2で表現 JIS8と共存+エスケープシーケンスをなくす 文字の表現 81 9F E0 EF JIS8 40 7E 80 9E 9F FC 21 21 7E 5E 5F ! " # $ 目 2バイト目
  19. by Naoki Kato © Naoki Kato © Naoki Kato シフトJISコード

    文字の表現 0 01 10 1 01 10 0100〜 000 001 1 JIS漢字 カタカナ JIS8と同じ JISローマ字 の⽂字セット 110 1 JIS漢字 01 10 0100〜
  20. by Naoki Kato © Naoki Kato © Naoki Kato EUCコード

    8ビット×1~3で表現 文字の表現 1バイト目 2バイト目 3バイト目 21h~7Eh ASCII A0h~FFh A0h~FFh JIS X 0208 8Eh A0h~FFh JISカタカナ 8Fh A0h~FFh A0h~FFh JIS X 0213
  21. by Naoki Kato © Naoki Kato © Naoki Kato EUC-JP

    文字の表現 0 0 1110 00 1 01 10 1 01 10 1 01 10 1 0 1111 00 1 01 10 1 01 10 1 JIS漢字 補助漢字 カタカナ JIS8と同じ JISローマ字 の⽂字セット
  22. by Naoki Kato © Naoki Kato © Naoki Kato Unicode,UCS

    世界中のすべての文字を共通の文字集合で! 当初は16ビット =国際規格 UCS-2 の範囲と同一 Unicode2.0以降は21ビット UCS4:Unicodeをベースに31ビットに拡張 符号化方式 UTF-8 8ビット×1~6,ASCIIと互換 UTF-16 16ビット×1~4 UTF-32 32ビット×1(UCS4用) Unicodeの符号化 Unicode Transformation Format UCSの符号化 UCS Transformation Format 文字の表現
  23. by Naoki Kato © Naoki Kato © Naoki Kato CJK統合漢字

    Unicodeでの用意された漢字枠(20902字) 似た字体をまとめて 中国 GB 2312(7,445字) 台湾のCNS1,2,14面(13,735字+6,148字+171字) 日本のJIS X 0208(6,879字)とJIS X 0212(6,067字) 韓国のKS C 5601(8,226字) Unicode3.0で6,582字追加 Unicode3.1で42,711字追加 文字の表現
  24. by Naoki Kato © Naoki Kato © Naoki Kato 中国語の文字の表現

    中国(簡体字中国語) GB2312(国家規格:Unicodeが対象とした) GB18030(2001年より利用が義務化) 台湾・香港(繁体字中国語) BIG5(最も一般的,5大メーカが策定) CNS 11643(国家規格:Unicodeが対象とした) 文字の表現
  25. by Naoki Kato © Naoki Kato © Naoki Kato CJK統合漢字の問題点

    似た文字をひとまとめに フォントの変更で切り替え可能 ( MS明朝だと日本語の字体) 文字の表現 Unicod 骨 骨 与 与 日本(JIS) 骨 与 繁体字中国語(BIG5) 骨 与 簡体字中国語(GB) 骨 与 MS明朝 MingLIU SimSun
  26. by Naoki Kato © Naoki Kato © Naoki Kato 異字体の問題点

    コードセパレート問題 似た文字(新字体と旧字体など)が異なったコード 検索にかからない 文字化け 內 內(Uni)→内 内(JIS) → →内 内(Uni) 文字の表現 新 新字 字体 体 4E3E 両 旧 旧字 字体 体 5140 兩 GB BIG5 JIS Unicode 內 有 有 5167 内 内 有 有 有 有 有 有 5185
  27. by Naoki Kato © Naoki Kato © Naoki Kato 半角と全角

    全角と半角はまったく異なる文字 “1”は全角 コードポイントは0x2331 “1 ”は半角 コードポイントは0x31 半角でなければならないところは多い メールアドレス,URL ファイル名の拡張子(txt, jpg, pdf など) 文字の表現
  28. by Naoki Kato © Naoki Kato © Naoki Kato 改行コード

    OSによって改行コードは異なる テキストファイルの交換時には注意 変換ツールなどを利用 文字(文章)の表現 MS-Windows CR LF Mac CR UNIX LF
  29. by Naoki Kato © Naoki Kato © Naoki Kato 文字コードの違い

    テキストファイルを作る Shift-JISとUTF-8(without BOM)で保存 バイナリエディタで違いを確認 CSVファイル(Shift-JIS)をDL UTF-8(without BOM), UTF-8(without BOM)で保存 3種類をエクセル/Googleスプレッドシートで開く Googleスプレッドシートで保存する エクセルで開く 文字(文章)の表現
  30. by Naoki Kato © Naoki Kato © Naoki Kato お

    おし しま まい い 文字の表現