文字コードとは?もじこーど
文字コードとは、コンピュータは文字そのものを扱えないので、1文字ごとに番号を決め、その番号をバイト列に直して保存・通信する。英数記号を7ビットに収めた古典的な規格がASCII、世界中の文字へ重複しない番号を与える文字集合がUnicode、Unicodeの番号を1〜4バイトの可変長で運ぶ符号化方式がUTF-8である。
最終更新:2026-10-09
この語が出る過去問を解く →背景
国ごと・メーカごとに別々の割り当てを使っていた時代は、同じファイルを別の環境で開くと読めない文字化けが日常的に起きていた。日本語だけでもシフトJISとEUC-JPが並立し、変換のたびに欠落が生じた。世界中の文字へ唯一の番号を与えるUnicodeと、既存のASCIIと互換を保ったまま運べるUTF-8が、この混乱を収める答えとして広まった。
具体例
半角の「A」はASCIIで16進数(0〜9とA〜Fの16種類の数字で数える表し方)の41、10進数でいえば65にあたる。UTF-8でも1バイトのまま41なので、英数字だけの文書はASCIIとまったく同じ並びになる。一方で漢字やかなは3バイトになるため、「あいう」の3文字はUTF-8で9バイトを占め、文字数を数える処理とバイト数を数える処理が別物になる。
試験での引っ掛け
文字集合(どの文字に何番を与えるか)と符号化方式(その番号をどうバイトに並べるか)は別の層の話で、UnicodeとUTF-8を同じものとして扱うと誤る。UTF-16は同じ文字集合の別の符号化方式。文字数とバイト数が一致しないことも、入力チェックの出題で繰り返し狙われる。
関連用語
出た過去問
問題文で直接問われたものと、解説の中で触れられたものが含まれます。
出典:平成30年度 春期 基本情報技術者試験 午前 問8(IPA)解説で登場
正解:文書型の定義
要点:DTDはXMLの文書型(要素・属性の構造)を定義するもの
DTD(Document Type Definition)は、XML文書がどんな要素・属性をどんな順序や個数で持てるかという文書構造の決まりを定義するものである。実際の値であるデータ本体はXML文書の側に書かれ、文字コードやXMLのバージョンはXML宣言に書かれる。つまりDTDが担うのは文書型の定義であり、妥当性検証の基準になる。
出典:令和4年度 公開問題 基本情報技術者試験 科目B 問16(IPA)
次のプログラム中の に入れる正しい答えを、解答群の中から選べ。二つの には、同じ答えが入る。ここで、配列の要素番号は1から始まる。 Unicodeの符号位置を、…
正解:64
要点:UTF-8の継続バイトは6ビット単位=64で割った余り
3バイト形式では、後ろ2バイトが下位6ビットずつ、先頭バイトが残りの上位ビットを持ちます。6ビット分を取り出す操作は2の6乗=64で割った余り、次の桁へ進む操作は64で割った商にあたります。ループは末尾のバイトから先頭へ向かうので、毎回64を使って下位6ビットずつ切り出していけば、余った上位ビットが先頭バイトに収まります。
出典・参考
解説は資格暗記が独自に作成しています。過去問の出典は各問題に記載のとおりです。