Vekil Çifti

Encoding & Standards

U+FFFF'nin üzerindeki bir karakteri birlikte temsil eden iki UTF-16 kod birimi: yüksek vekil (U+D800–U+DBFF) ve ardından düşük vekil (U+DC00–U+DFFF).

Characters with code points above U+FFFF cannot fit in a single 16-bit value. UTF-16 solves this by encoding them as two 16-bit values called a surrogate pair. Since most emoji are above U+FFFF, surrogate pairs are extremely common with emoji.

For example, 😀 (U+1F600) becomes the surrogate pair 0xD83D 0xDE00 in UTF-16. The formula: high surrogate = 0xD800 + ((cp - 0x10000) >> 10), low surrogate = 0xDC00 + ((cp - 0x10000) & 0x3FF).

This is why JavaScript's `'😀'.charCodeAt(0)` returns 55357 (0xD83D) — it's returning the high surrogate, not the actual code point.

İlgili Terimler

Düzlem Düzlem
65.536 ardışık Unicode kod noktasından oluşan grup. Düzlem 0, Temel Çok Dilli Düzlemdir (BMP); emojilerin büyük çoğunluğu Düzlem 1'de (SMP) yer alır.
Ek Çok Dilli Düzlem (SMP) Ek Çok Dilli Düzlem (SMP)
Emoji kod noktalarının büyük çoğunluğunun tahsis edildiği Unicode Düzlem 1 (U+10000'dan U+1FFFF'ye).
Kod Birimi Kod Birimi
Bir karakteri kodlamak için kullanılan minimum bit kombinasyonu: UTF-8 için 8 bit, UTF-16 için 16 bit ve UTF-32 için 32 bit.
UTF-16 UTF-16
Karakter başına 2 veya 4 bayt kullanan değişken genişlikli Unicode kodlaması; JavaScript, Java ve Windows tarafından dahili olarak kullanılır.

İlgili Araçlar

🔢 Unicode Arama Unicode Arama
U+1F600 gibi bir kod noktası girin ve emojiyi, kodlama ayrıntılarını, UTF-8/16 baytlarını ve HTML varlıklarını alın.
🔍 Dizi Çözümleyici Dizi Çözümleyici
ZWJ dizilerini, ten rengi değiştiricilerini, tuş kapağı dizilerini ve bayrak çiftlerini ayrı bileşenlerine çözün.