文字コード略歴 よこやままさふみ社内勉強会 2012/05/18 文字コード略歴 Powered by Rabbit 2.0.6

Similar documents
Microsoft PowerPoint - char-1605temp.ppt [互換モード]

4 Mule(Emacs)

SOC Report

Delphi/400バージョンアップに伴う文字コードの違いと制御

文字コード (2) 林部祐太 国立国会図書館関西館電子図書館課 2013/9/27 1

スライド 1

基礎情報処理Ⅱ 第2回

MySQL 日本語処理完全解説 住商情報システム株式会社プラットフォームソリューション事業部門 IT 基盤ソリューション事業部オープンソースシステム部玉川修一 1

( )!?

iNFUSE インフューズ

Apache-Tomcat と 冗長な UTF-8 表現 (CVE 検証レポート ) 2008 年 08 月 26 日 Ver. 0.1

MySQL Cluster

本当はこわいエンコーディングの話 とみたまさひろ 東京 Ruby 会議 本当はこわいエンコーディングの話 Powered by Rabbit 2.0.6

親指シフトキーボード(FMV-KB611)、JISキーボード(FMV-KB621)、FMV-LIFEBOOK(親指シフトキーボードモデル)をお使いになる方へ

随筆 私本太平記

計算機概論

親指シフトキーボード(FMV-KB611)、JISキーボード(FMV-KB621)、FMV-LIFEBOOK(親指シフトキーボードモデル)をお使いになる方へ

SOC Report

フォント埋め込みに関する調査報告 プラネットファーマソリューションズ株式会社 2019 年 05 月 31 日 Copyright 2019 Planet Pharma Solutions, Inc. All Rights Reserved.

johokiso-char.pdf.pdf

C プログラミング 1( 再 ) 第 4 回 講義では C プログラミングの基本を学び 演習では やや実践的なプログラミングを通して学ぶ 1

PYTHON 資料 電脳梁山泊烏賊塾 PYTHON 入門 文字列 文字列リテラル プログラムの中で文字列を表す方法は幾つか有るが 基本的な方法は下記の 2 種で有る 対象と成る文字の集まりをダブルクオーテーション ( " ) で囲うか シングルクオーテーション ( ' ) で囲う PYTHON3 "

HULFT-DataMagic for Linux Ver リビジョンアップ詳細情報 < 製品一覧 > 製品名 バージョン HULFT-DataMagic for Linux HULFT-DataMagic コード変換 オプション for Linux HULFT-

Microsoft PowerPoint _Encoding.pptx

RT Fontカタログ

< E8E968BC6916E91A291E58A E58A772E B838B2E786C7378>

Java Scriptプログラミング入門 3.6~ 茨城大学工学部情報工学科 08T4018Y 小幡智裕

9601 F09F 9611 F0A F0B F0BD 9641 F0C F0A F0AA 9622 F0B F0BE 9642 F0C F0A F0AB 9623 F0B F0BF 9643 F0C9

iNFUSE インフューズ

プログラミング実習I

テキストの保存形式と外国語テキストの保存

¥ƥ­¥¹¥ȥ¨¥ǥ£¥¿¤λȤ¤˽

IGESデータの基礎知識

Microsoft Word - No5_code_netbasic.doc

管理番号 内容仮想テーブル設定画面およびマッチング条件設定画面においてコメントを設定した場合 変換エラーが発生する マッピング情報設定画面の出力情報に固定値を選択し区分に 動的バイナリ値 を指定した場合 関数を設定す

Microsoft PowerPoint - 【HULFT】効果的なHULFT活用講座(①機能編)( )2.pptx

HULFT-DataMagic for Windows Ver レベルアップ詳細情報 < 製品一覧 > 製品名 バージョン HULFT-DataMagic for Windows HULFT-DataMagic コード変換 オプション for Windows HU

わんくま同盟 大阪勉強会 #1

多言語ドメイン名の実装 mdnkit 石曽根信 ( 株 ) SRA 2001/12/04 日本語ドメイン名解説 / mdnkit 1 mdnkit 多言語ドメイン名を扱うためのツールキット 正規化 エンコード変換等を提供するライブラリとコマンド 既存アプリケーシ

講習No.8

Unicode (2)

パソコンの中を見よう

講習No.9

AQUOS ケータイ ユーザーガイド

かんたん携帯9 ユーザーガイド

製品紹介資料 No.M32039 TEST CD-R (MP3) For Checking MP3 Players for Russian SCD Rev.1 1. 使用目的 特徴このディスクは MP3プレーヤの動作確認に用いるテストディスクです ロシア語 ( キリル文字

Unicode (2)

DIGNO® E 503KC ユーザーガイド

MS240 JISⅡ半角カナ文字データを含むカード読み取り設定例

(2 Linux Mozilla [ ] [ ] [ ] [ ] URL 2 qkc, nkc ~/.cshrc (emacs 2 set path=($path /usr/meiji/pub/linux/bin tcsh b

シンプルスマホ3 ユーザーガイド

サイト名

<4D F736F F D2088EA89B9918A88E181458C8B8D878FA E E838A C E646F6378>

お客様各位 作成日 :2013 年 8 月 2 日更新日 :2015 年 9 月 10 日 キヤノン IT ソリューションズ株式会社 DEX-Ⅲ(AIX 版 ) バージョン 2.02 リビジョン 02 変更内容について 拝啓貴社益々ご清栄のこととお慶び申し上げます 平素は 当社製品に格別なるご愛顧を

SjisEucユーザーズガイド

いまさら聞けない日本語ドメイン名

2 課題管理( 科学研究費補助金 ) 画面が表示されます 補助事業期間終了後 欄の[ 入力 ] をクリックします [ 入力 ] ボタンが表示されていない場合には 所属する研究機関の事務局等へお問い合わせください 109

DDBM_特集2_4-1001(SQL Server)

第 1 回 C 言語講座 1. コンピュータって? だいたいは 演算装置 制御装置 記憶装置 入出力装置から構成されている 演算装置 CPU の一部で実際に計算を行う装置 制御装置 CPU の一部で演算装置や入出力装置 記憶装置の読み書きなどを制御する装置 記憶装置プログラムや情報 データを一時的

独立行政法人日本学術振興会科研費電子申請システム研究者向け操作手引 ( 学術研究助成基金助成金 )( 交付内定時 決定後用 ) 研究成果報告書の作成 研究成果報告内容ファイルを作成 1 科学研究費助成事業の Web ページ等から研究成果報告内容ファイル様式をダウンロードしま

Windowsテキストファイル操作ノウハウ

JDL Webストレージサービス はじめにお読みください

日本語入力システムの概要 日本語入力システムはインプットメソッド (Input Metho d) のうち 特にパソコンやワープロ 携帯電話などに日本語を入力するためのものを指す 通常はキー入力をソフトウェアで制御して実現する パソコンにおいて 英文の入力は一般のキーボードでタイプライター同様にタイプ

講習No.1

目次はじめに Biz-Collections 製品ラインアップ Biz/Browser Biz/Designer PrintStream 製品サポートについて 製品共通のサポート方針...

入札方式別操作

DIGNO® G ユーザーガイド

compatibility_1907.pdf

InputMan for Windows Forms バージョン比較表

農業・農村基盤図の大字小字コードXML作成 説明書

ビューアページ画像の仕様

昔 は? UNIX/Linuxやその 他 の 大 学 研 究 系 OSでは 初 めは 文 字 端 末 だった メインフレームのTSSシステムから ワークステーション(DEC VAXなど) 端 末 の 機 械 がタイプライタ( 絵 は 描 けない) GUIの 先 駆 的 なプロジェクトはいくつかあった

出入国在留管理庁正字検索システムユーザーマニュアル 第 1.3 版

データ変換 How to セミナー 第1章

入札方式別操作

Report#2.docx

2. Windows Vista から共有フォルダのアクセスについて 対象製品 PNS25, PNB20S, PNS30 (F/W 3.x.x) Window Vista クライアントから 弊社 NAS 製品の共有フォルダにアクセスする際 Vista 側の設定を変更する必要がございます 対処方法は次

文字入力 ソフトウェアキーボードを切り替える...56 文字入力画面の見かた...56 文字を入力する...58 文字入力の便利な機能を利用する...60 iwnn IME の設定を行う

SideAceユーザーズガイド

( ) Shift JIS ( ) ASCII ASCII ( ) 8bit = 1 Byte JIS(Japan Industrial Standard) X 0201 (X ) 2 Byte JIS ISO-2022-JP, Shift JIS, EUC 1 Byte 2 By

intra-mart FormatCreator Version6.1

社員教育

入札方式別操作

シンプルスマホ2 ユーザーガイド

文字コードとその実装

行政の情報化と文字情報基盤

游書体互換(HP用 )

Microsoft Word - Word1.doc

コンピュータの仕組みを知る上での基礎知識 以下の内容が理解できれば 貴方もコンピュータ通の仲間入り! n 進法演算とは (2 進 8 進 10 進 16 進 ) 私たちが何気なく使用している10 進数は コンピュータの世界にとっては極めて扱いにくいものなのです ご存知の通り このn 進数とは上の桁に

Microsoft Word - no103.docx

<4D F736F F F696E74202D E48FE A92C789C192CA926D82C982C282A282C45F696E6F75652E >

<4D F736F F D E835A A C98AD682B782E98E77906A89FC92F994C52E646F63>

RR1soft.book

自己紹介 とみたまさひろ MySQL 3.21 に日本語 charsetを追加 MySQLのRubyバインディング作成

<4D F736F F D E64976C8F E6388E9F81842E646F63>

2. 情報の内部表現の基礎 (1) 文字コードと 2 進数 Internal representation (1) Character code and Binary numbers, コンピュータは記号を扱う機械であり, 様々な 事 や モノ を記号として表現する * これらの記号 (symbol

IPAex フォント IPAフォントのダウンロード方法 IPAexフォント (Ver ) および IPAフォント (Ver ) は OSS ipedia 1 からダウンロードできます URL: なお IPA

HULFT for Mainframe Type ACOS Ver レベルアップ詳細情報 < 製品一覧 > 製品名バージョン HULFT for Mainframe Type ACOS < 対応 OS> ACOS-4/XVP PX, ACOS-4/NPX, ACOS-4/i-

よくある質問 Q1. 署名付きメールを受信後 署名アイコンをクリックしてメッセージの作成者から正常に送信されていることを確認しましたが 取り消し状態 に デジタル ID の確認が無効になっています と表示されました (Outlook Express6 Windows Mail) 初期設定では 証明書

CS1

Transcription:

文字コード略歴 よこやままさふみ社内勉強会 2012/05/18

自己紹介 横山昌史 入社 4 年目 プログラマ etc... 所属プロジェクト Java UNIX 雑用 etc... 文字コードの " るつぼ "

Rabbit について プレゼンテーションツール 実装 : Ruby/GTK 動作 : UNIX/Win/Mac 文章とデザインの分離 バージョン管理しやすい

文字コードとは 文字をコンピュータで扱うための符号化方式 エンコード キャラクターセットとも呼ばれる

符号化 文字や音声などを0と1のデジタルデータに変換すること 16 進数で記述されることが多い Javaなどでは 頭に "0x" を付けると16 進数として扱われる

よく使われる文字コード ASCII Shift_JIS UTF-8(Unicode) EBCDIC

ASCII

ASCII American Standard Code for Information Interchange

ASCII 英語を表現するための文字コード 英字アルファベット 記号 いわゆる半角文字

ASCII 1 文字につき7ビットの1バイトコード 7 ビット = 2 7 = 128 16 進数で言うと 0x00 0x7F まで 1 バイト = 8 ビットのため 1 ビット余り

ASCII の例 Heisei 24 48 65 69 73 65 69 20 32 34 16 進数 (0x は省略 )

JIS X 0201 日本工業規格 一部の符号位置がASCIIと違う 半角カナが使える 8 ビット目を拡張

ASCII と異なる文字 符号位置 0x5C ASCII: 半角バックスラッシュ JISX0201: 半角円記号

ASCII と異なる文字 符号位置 0x7E ASCII: 半角チルダ JISX0201: 半角オーバーライン

ASCII と異なる文字 ASCIIかJISX0201かは曖昧 環境によって表示が変わる 日本のフォントは円記号 外国のフォントはバックスラッシュ 7Eは日本でも大抵チルダ

Shift_JIS

Q & A Q. あなたの母語は何語ですか? A. 日本語 Q. 日本語は英字アルファベットだけで表現できますか? A. いいえ

ひらがなや漢字が必要 常用漢字 2,136 文字 (2010 年改定 ) 1 バイト = 8 ビット = 2 8 = 256 1 バイトでは表現できない

2 バイトコード 1 文字を 2 バイトで符号化 2バイト = 16ビット = 2 16 = 65,536

JIS X 0208 日本工業規格 JIS 第 1 第 2 水準漢字を定義 最新版では6,879 文字を収録 1983 年に大幅な変更 異字体の符号位置入れ替え 字形の変更

JIS X 0213 日本工業規格 JIS X 0208 の拡張 ( 後方互換 ) JIS 第 3 第 4 水準漢字を定義 環境によってはJISX0213に対応していない (JIS 第 3 第 4 水準漢字が使えない )

Shift_JIS の成り立ち JIS X 0201 + JIS X 0208(JIS X 0213)

Shift_JIS の特徴 日本語が表現できる 半角カナが使える JISX0201 との互換性

Shift_JIS の例 平成 24 95 BD 90 AC 20 32 34

Shift_JIS の欠点 全角半角問題 A と A ア と ア など 全角文字を扱える文字コード共通の問題 JISX0201の副作用 だめ文字

Shift_JIS の派生 WindowsではShift_JISを拡張した文字コードが使われている Windows31-JやMS932やCP932などと呼ばれる 重複符号化 ( 問題 ) 同じ文字に複数の符号位置

UTF-8

Q & A Q. 今はどんな時代ですか? A. 国際化時代 Q.Shift_JISの欠点はどこですか? A. 日本語しか扱えない

Unicode 世界中の言語を表現できる文字コードの仕様がUnicode 110,181 文字 (2012 年 1 月 )

Unicode Unicodeの実装の一つがUTF-8 他にも UTF-16 など

UTF-8 の特徴 ASCIIを拡張 Shift_JISとは違い JISX0201の拡張ではない 半角カナなどの符号位置がShift_JISと違う だめ文字がない

1 文字のバイト数 ASCII 全て半角文字 = 全て 1 バイト Shift_JIS 半角 = 1バイト 全角 = 2バイト

1 文字のバイト数 UTF-8 半角 = 主に1バイト 全角 = 日本語は3バイト 記号は 3 バイトか 2 バイト

UTF-8 の例 平成 24 E5 89 B3 E6 88 90 20 32 34

1 バイトでない半角文字 \( 半角 ) が2 種類 5C (ASCII): 規格上はバックスラッシュ C2 A5 (UTF-8): 規格上は円記号 2 バイトの半角文字

1 バイトでない半角文字 ~( 半角 ) も2 種類 7E (ASCII): 規格上はチルダ E2 80 BE (UTF-8): 規格上はオーバーライン 3 バイトの半角文字

半角カナ ア ( 半角 ) B1 (Shift_JIS) EF BD B1 (UTF-8) UTF-8 の半角カナは全て 3 バイト 単純なバイト数チェックでは 半角か全角か判別できない

IBM 版と MS 版 IBM-Unicode( 一般的な Unicode) とMS-Unicode( マイクロソフト版 Unicode) で符号位置が異なる文字がある いわゆる波ダッシュ問題の要因

波ダッシュ問題 Windowsとそれ以外のOS 間での通信時などに文字化け 対象文字は10 文字程度 ( 環境による ) -

EBCDIC

EBCDIC IBMによって定義された文字コード IBM 製のメインフレーム ( 汎用機 ) などで現在も使用されている

EBCDIC 半角文字の符号位置がASCIIと異なる 全角文字の表現方法がShift_JIS やUTF-8と異なる 基本的にJIS 第 3 第 4 水準は含まれない

半角文字 すべて1バイト 8 ビット目まで使用 制御文字エリアが大きい 0x00 0x3F と 0xFF 汎用機で使用される特殊な制御文字が含まれている

全角文字 半角文字との区別は制御文字で行う 全角の開始位置がシフトアウト (0x0E) 全角の終了位置がシフトイン (0x0F) 略して SO/SI などと呼ばれる

SO/SI 平成 24 0E 45 8D 45 BA 0F 40 F2 F4

SIの欠如 うわっ 0E 45 8D 45 BA SO/SIのネスト 0E 45 8D 0E 45 BA 0F 0F SO/SIを対として扱うのではなく モード切替文字として扱うことで対応

まとめ

参考 プログラマのための文字コード技術入門 正規表現クックブック (66 ページ ) AIX 5L 日本語コード一覧表 jp_codebook で検索 ご静聴ありがとうございました