質問: UTF-16 のサロゲートペアについて。
回答: 1Planeは16ビットの空間ですから、Plane0のみがサロゲートペアなしで表せます。 元々Unicodeは16ビットコードとして作っていて、Plane0(BMP)しかなかったのです。 後から16ビットでは足りないため符号空間を拡張したので、サロゲートを定義しUTF-16を作ったのです。