過去問解きまくり研究所 ホーム

平成24年度 春期 午前 問4

基礎理論

UTF-8に関する問題

Unicode 文字列を UTF-8 でエンコードすると,各文字のエンコード結果の先頭バイトは 2 進表示が 0 又は 11 で始まり,それ以降のバイトは 10 で始まる。16 進表示された次のデータは何文字の Unicode 文字列をエンコードしたものか。

CF 80 E3 81 AF E7 B4 84 33 2E 31 34 E3 81 A7 E3 81 99
答えと解説を見る

✓ これが正解ア9

解説

文字の先頭バイトを数えると九文字です。

この問は文字コードの細かい知識ではなく、設問に書かれた規則をそのまま当てはめれば決まります。規則は二つです。各文字の先頭のバイトは二進で0または11から始まり、それ以降のバイトは必ず10から始まります。十六進では、二進が10で始まるのは上の桁が8から Bまでの範囲ですので、上の桁が8・9・A・Bのバイトだけが文字の続きで、それ以外はすべて文字の先頭だと分かります。示された十八バイトを先頭から順に仕分けると、先頭にあたるバイトが九個、続きにあたるバイトが九個になります。文字の数は先頭バイトの数と等しいので九文字です。足すと十八バイトに戻ることが検算になります。Unicode の文字が何バイトで表されるかを覚えていなくても、上の桁だけを見て数えれば解ける形の問です。

ほかの選択肢はなぜ違うのか

出典:平成24年度 春期 応用情報技術者試験 午前 問4

この解説に誤りを見つけたら教えてください。直して、直した記録を残します。誤りを報告する(メールが開きます)