ISO 2022の考え方の基本は各国の文字をエスケープシーケンスを使って切り替えながら使用するというものですが、ISO 10646は世界中の文字を1つのコード表の中に収納しようという考え方です。ISO 10646ではすべての文字を格納するために符号化文字集合として32ビット固定のUSC-4を採用しました。32ビットということで(実際にはMSBをオフにする仕様なので31ビット)約21億の文字コードが収納できる計算です。MSBを除く最初の7ビットが「群」、次の8ビットが「面」、その次の8ビットが「区」、最後の8ビットが「点」と呼ばれます。
一方、ISOとは別にアメリカのIT関連大企業が共同してやはり1つのコード表の中にすべての文字を収納しようという動きがありました。IT関連企業のそれは、商業的意味合いが強いものの、その運営団体であるUnicodeコンソーシアムは当初Unicodeの規格を2バイト(16ビット)としてスタートしました。ISOもこれに連動して2バイト固定長の規格USC-2を策定しましたが、どちらも2バイトでは世界の文字を格納するには絶望的にコードポイントが足りずすぐに行き詰まってしまいました。
そこで、Unicodeでは固定長の考えを捨ててUCS-4を2バイト単位の固まり1つまたは2つで文字を表現するエンコーディングスキームUTF-16や、1バイト単位の固まり1〜6個で文字を表現するエンコーディングスキームUTF-8などの可変長エンコーディングスキームを採用することにしました。(図のUTF-32は固定長エンコーディングスキーム)

同じ目的で2つの規格が作られることは適当でないため、ISO 10646とUnicodeコンソーシアムは合流し、一般的にはまとめてUnicodeと呼ばれています。ISO 10646の観点から考えればUCS-2、UCS-4はエンコーディングスキームとしても機能するわけですが、本コンテンツではこれらを符号化文字集合として扱い、エンコーディングスキームとしてUTF-16とUTF-8を考察することにします。