



unicodeを16ビットコードの範囲で表現するエンコード方式。U+10000~U+10FFFFの領域は、第一ワードが0xD800~0xDBFF、第二ワードが0xDC00~0xDFFFのペアワード(サロゲートペア、日本語では代用対)で表現する。U+D800~U+DFFFFは、この用途のために予約されている。
先頭にBOM(byte order mark)としてU+FEFF(ビッグエンディアン:上位バイトが先),U+FFFE(リトルインディアン:下位バイトが先)が出力する事によって、出力バイト順を変更する事ができる。BOMが出力されない場合のデフォルトはビッグインディアンである。
"UTF-16BE"、または、"UTF-16LE"は、BOMを使わずにビッグインディアン、または、リトルインディアンでコード出力する符号化スキームである。
エンコード方法
| unicode | UTF-16 |
|---|---|
| 000u uuuu xxxx xxxx xxxx xxxx | 1101 10ww wwxx xxxx 1101 11xx xxxx xxxx |
| wwww = uuuuu - 1 | |
デコード方法