Unicodeには、U+0000からU+10FFFFまでのコードポイントが存在する。 元々16ビット固定長として作られたUnicodeであったが、16ビットを超える範囲を符号化するために、16ビットを二つ組み合わせて、16ビットを超える範囲の文字を表現することになった。この専用の記号文字をサロゲートといい、二つ組み合わせる手法をサロゲートペアという。 UTF-16では1バイトが16ビットになるが、これをバイトと呼ぶと混乱を招くため、UTF-16ではこれをコードユニットと呼ぶ。このように、16ビットのコードユニットを組み合わせてUnicodeを表現する符号化方法を、UTF-16という。 UTF-16は16ビット単位で文字が表現されるが、コンピューターではそれを8ビットごとに分解して処理することになるだろう。 エンディアンネス(ビッグエンディアンとリトルエンディアン)の違いがあり、どのようなオ