商品サンプル画像
わんだふるぷりきゅあ!ざ・むーびー!ドキドキ♡ゲームの世界で大冒険!(Amazon.co.jp限定Tシャツ購入権利コード付き)(7/18 正午まで)
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
商品サンプル画像
舞台『東京リベンジャーズ』~天竺編~
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
商品サンプル画像
ミュージカル「東京リベンジャーズ」
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
商品サンプル画像
隣のクーデレラを甘やかしたら、ウチの合鍵を渡すことになった (7) (角川コミックス・エース)
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
商品サンプル画像
みんな集まれ! 怪人じゃ
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
記事の概要
文字コードについて
作成日:2020-08-16
最終更新日:2020-08-16
記事の文字数:2186
情報技術
文字コードについて
文字コード概要

文字コードに対する基本的なところを勉強中。

基本的な文字コード(文字符号化方式)の一覧は以下の通り。
「文字符号化方式」と「符号化文字集合」の違いは後述。

文字コード名
(文字符号化方式)
符号化文字集合ビット数「a」表現「あ」表現備考
ASCIIASCII8ビット0x61(表現不可)基本となる文字コード。8ビットの内最後の1ビットはパリティビット
JISJIS X 0201
JIS X 0208
JIS X 0211
8ビット
16ビット
24ビット
0x610x2422正式名称は「ISO-2022-JP」
ASCIIコードをベースに日本語を扱えるようにした文字コード
しかし仕様上、ASCII文字と日本語文字が混在するとデータ量が増えるという問題を抱えている
SHIFT-JISJIS X 0201
JIS X 0208
8ビット
16ビット
0x610x82a0JISコードの問題点を解消した文字コード
JISと比較し一部使えない漢字がある
EUC-JPASCII
JIS X 0201
JIS X 0208
8ビット
16ビット
0x610xa4a2UNIX上で日本語を扱えるようにした文字コード
UTF-8Unicode8ビット~0x610xE38182現在の世界的な主流
ASCIIをそのまま置き換えることができる
可変長のビット長で例えば日本語の文字は3~4バイトで表されたりする
UTF-16Unicode16ビット~0x00610x3042UTF-8と同じ符号化文字集合「Unicode」を使う文字符号化方式
サイズの基本単位が16ビット(2バイト)で、「a」なども2バイトで表される。

符号化文字集合と文字符号化方式

文字コードと一言でいうが、実際にはざっくり2つのプロセスを踏まえて文字をビットに置き換えている。

1つ目は、例えば「あ」という文字を「1」という数字に置き換える作業。どの文字をどの数値に置き換えるかの対応表を「符号化文字集合」という。
この符号化文字集合でカバーできない文字がある場合、その文字はその文字コードにおいて使用できないということになる。

2つ目のプロセスは、「1」という数字を実際のビット列に置き換える作業。この時どのようにビット列に置き換えるかの方式を「文字符号化方式」という。
「UTF-8」や「UTF-16」は符号化文字集合こそ同じ「Unicode」を使っているが、符号化方式が異なるため最終的なビット列は異なるものになる。

この「文字符号化方式」を文字コードと呼ぶ(厳密には文字コードという言葉をその2つに紐づけることはできないらしいが、そう考えた方が分かりやすい)

実例

ここで「UTF-8」と「UTF-16」でひらがなの「あ」を符号化する。

【UTF-8の場合】
1.「あ」を「Unicode」に従い、「0x3042」に変換する
 (あ ⇒ 0x3042)

2.「0x3042」を2進数に置き換える
 (0x3042 ⇒ 0011000001000010)

3.下位ビットから6ビットずつセパレートする
 (0011000001000010 ⇒ 0011 000001 000010)

4.各ビット列の頭に「10」を付ける
 (0011 000001 000010 ⇒ 100011 10000001 10000010)

5.先頭のビット列が8桁になるように、頭に「1」埋めをする
 (100011 10000001 10000010 ⇒ 11100011 10000001 10000010)

6.16進数に戻す
 (100011 10000001 10000010 ⇒ 0xE3 0x81 0x82 ⇒ 0xE38182)

【UTF-16の場合】
1.「あ」を「Unicode」に従い、「0x3042」に変換する
 (あ ⇒ 0x3042)

2.2バイト文字はそのまま符号化する
 (0x3042 ⇒ 0x3042)
 (【リトルエンディアンの場合】0x3042 ⇒ 0x4230)

ビッグエンディアンとリトルエンディアン

「UTF」系列の文字コードでは、同じ文字コードでも「ビッグエンディアン」「リトルエンディアン」という区別を持つ。
違うのはビット列(バイト)の並び順。

例えばUTF-16だと「あ」は「0x3042」と表されるが、これを後ろのバイトから並べ直す、つまり「30」と「42」をひっくり返すと「0x4230」というビット列になる。
このひっくり返したものが「リトルエンディアン」で、ひっくり返す前のものが「ビッグエンディアン」になる。

2つをデータ上で区別する方法だが、テキストデータの先頭に特定のビット列を付与することで行う。もしくは文字コードで元からどちらを使用するかを区別するようにもできる。

このテキストデータの先頭に付与したビット列を「BOM」(Byte Order Mark)と言う。

文字コードエンディアンBOMの有無BOM
UTF-8ビッグ省略可能0xEFBBBF
UTF-8Nビッグ無し
UTF-16ビッグ省略可能0xFEFF
UTF-16リトル省略可能(非推奨)0xFFFE
UTF-16BEビッグ無し
UTF-16LEリトル無し
UTF-32ビッグ省略可能0x0000FEFF
UTF-32リトル省略可能(非推奨)0xFFFE0000
UTF-32BEビッグ無し
UTF-32LEリトル無し

コメントログ
※コメントは最新50件が表示されます
コメント投稿




画面下部の「コンタクト」からも連絡可能です。
管理人ツイート
商品サンプル画像
わんだふるぷりきゅあ!ざ・むーびー!ドキドキ♡ゲームの世界で大冒険!(Amazon.co.jp限定Tシャツ購入権利コード付き)(7/18 正午まで)
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
商品サンプル画像
司法試験&予備試験 体系別 短答過去問題集 刑法 第3版 司法試験&予備試験 体系別短答過去問題集シリーズ
商品ページ
Amazon
収益広告(手動登録)
商品サンプル画像
D.C.Ⅱ.S.S.~ダ・カーポⅡセカンドシーズン~(TV番組)
商品ページ
Amazon
非収益広告(手動登録)
商品サンプル画像
ロボカーポリー のりもののうた Vol.2
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認
管理人作品宣伝
【アークナイツ】アークナイツ-必要素材数集計ツール
Webサイト / 最終更新:2025-02-02
【一部機能返礼特典】『アークナイツ』の育成状況を記録し、育成に必要な素材数を集計するペ…【一部機能返礼特典】『アークナイツ』の育成状況を記録し、育成に必要な素材数を集計するページです。オペレータの実装スケジュールや所持率チェッカーの機能も持ち合わせています。 以下機能は返礼特典としています。 ・アークナイツ-必要素材数集計ページ:DB登録データ出力ページ ・アークナイツ-必要素材数集計ページ:オペレータ一覧ページ(昇進0→2に必要な理性換算値ランキング) ・アークナイツ-必要素材数集計ページ:オペレータ一覧ページ(スキル特化に必要な理性換算値ランキング)

HPで閲覧する利用素材等の詳細情報返礼特典
【アークナイツ】グムがずっと殴ってくれる動画
動画 / 最終更新:2025-02-14
喝を入れたいあなたに。…喝を入れたいあなたに。

YouTubeで閲覧する利用素材等の詳細情報
作品一覧はこちら
関連ページ
JavaScriptでアナログ時計とデジタル時計を表示するコード
最終更新日:2025-05-29
概要 最近アナログ時計を使ったので、アナログ時計を表示するJavaScriptコードを載せます。 …
記事を閲覧する
three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する Part-03
最終更新日:2025-04-20
概要 three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する方…
記事を閲覧する
three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する Part-02
最終更新日:2025-04-15
概要 three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する方…
記事を閲覧する
three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する Part-01
最終更新日:2025-04-13
概要 three.js・three-vrm.jsを使用して、VRoidをWebページ上に表示する方…
記事を閲覧する
GIF / APNG(アニメーション付きPNG)ファイル解析ページ
最終更新日:2025-03-31
ファイル読込・操作 以下に調べたいファイルを読み込ませてください。 ファイル情報 カラーパレットを…
記事を閲覧する
gifler.js仕様メモ
最終更新日:2025-03-23
本ページの趣旨 「gifler.js」という、gifアニメーションをcanvasに簡単に表示できる…
記事を閲覧する
【プログラミング】実例で分かるかもしれない再帰処理
最終更新日:2024-12-15
本ページは以下動画の台本を書き起こしたものです 解説の趣旨・方向性 皆さん、こんばんは今回はプログ…
記事を閲覧する
SNSツイート一元化対応(Twitter・Misskey・Mastodon・Bluesky)-公開
最終更新日:2024-12-06
概要 SNSツイートを一元化するためのツールを作成しています(古い記事ですが、こちらのページで紹介…
記事を閲覧する
SNSツイート一元化対応(Twitter・Misskey・Mastodon・Bluesky)-Python
最終更新日:2024-10-13
概要 概要 SNSのツイートを一元化する際の備忘録というかPythonコードの共有です。 それぞれ…
記事を閲覧する
Windows-PowerShellを使用してのフォルダ内のファイル名を連番にリネームする
最終更新日:2024-10-08
以下PowerShellコードを実行することで、フォルダ内のすべてのファイルのファイル名を「0001…
記事を閲覧する
本サイトのタグ一覧
NovelAIR18VRoidWebサイト作成Webツールととモノ。アークナイツアークナイツ-ステージ攻略日記アズールレーンアズールレーン-日記ウマ娘ギャラリーゲームデビラビローグネットスラング系プログラミングホラーポケットタウン怪談気ままな日記情報技術情報技術-WebAPI知的財産権統合戦略白夜極光本サイトについて魔王スライム様がんばる!漫画
人気記事
メイド・オブ・ザ・デッド-攻略お助け情報
最終更新日:2024-05-01
スコア:782.2725 pt
ネタバレ注意! 本ページは『メイド・オブ・ザ・デッド』の情報を記録しているものです。 攻略の参考に…
記事を閲覧する
ポケットタウン_パズル一覧
最終更新日:2025-05-02
スコア:703.5528 pt
グレーのピースの数 (Number of gray pieces):検索グレーピースの数を入力して、…
記事を閲覧する
剣と魔法と学園モノ。2G - パーティ編成確認ツール
最終更新日:2024-05-09
スコア:180.6421 pt
ツール概要 ととモノ。2Gのパーティ編成を考える際に使うツールです。 あくまでストーリークリアまで…
記事を閲覧する
アークナイツ-常設商品-理性換算
最終更新日:2024-04-28
スコア:136.1702 pt
概要 "常設商品でお得な商品はどれか"というのを理性に換算して一覧化したものとなります。 絶対的に…
記事を閲覧する
本サイトについて
最終更新日:2025-06-11
スコア:122.0339 pt
本サイトの概要 概要 個人ブログのようなものです。とくにジャンルはありません。 本サイト内の情報に…
記事を閲覧する
黒バス:キセキの世代級の人たちの技一覧
最終更新日:2024-07-21
スコア:114.3529 pt
黒バスのキセキの世代級の人たちの技一覧です 概要 黒バスのキセキの世代級の人たちの技を記載したもの…
記事を閲覧する
ゲーム『イカれた狩場の看板娘』の紹介・レビュー
最終更新日:2025-05-01
スコア:105.5385 pt
記事概要 イカれたゲームを紹介するぜ! イカれた狩場の看板娘! 以上だ! ちなみにそんなイカれてな…
記事を閲覧する
地獄先生ぬ~べ~で好きな切ないエピソード
最終更新日:2025-05-19
スコア:92.1905 pt
概要 初代というべきか、週刊少年ジャンプで連載されていた地獄先生ぬ~べ~の切ないエピソードの中で好…
記事を閲覧する
最新記事
htmlタグ混在のテキストをhtmlタグとプレーンテキストで分けるJavaScriptコード
最終更新日:2025-06-20
概要 「よくある質問は a href="/" こ span ち /span ら /a です」 とい…
記事を閲覧する
htmlタグ混在のテキストを1行ずつ左から右へワイプ表示する - JavaScript / CSSコード
最終更新日:2025-06-16
JavaScript全文コード 使い方 以下のJavaScriptとCSSコードを読み込んで、Te…
記事を閲覧する 返礼特典
htmlタグ混在のテキストを1行ずつ左から右へワイプ表示する
最終更新日:2025-06-16
概要 ここでは以下のようにテキストを一行ずつ左から右に表示するJavaScriptコードを載せてい…
記事を閲覧する
本サイトについて
最終更新日:2025-06-11
本サイトの概要 概要 個人ブログのようなものです。とくにジャンルはありません。 本サイト内の情報に…
記事を閲覧する
商品サンプル画像
BORUTO-ボルト- -TWO BLUE VORTEX- 5 (ジャンプコミックスDIGITAL)
商品ページ
Amazon
収益広告(自動登録)
※Amazonレビュー要確認