Komik: Karakter seti ve kodlama nedir? ASCII, UTF-8 ve UTF-16 nedir?

O öğleden sonra

Örneğin, bilgisayarın altında "Xiaomeng" adınız bilgisayardaki kelimeler biçiminde değil, "011001100110 ..." gibi bir ikili sayı dizisidir.

İnsanlar sadece kelimeleri tanır. Ne yazık ki, bilgisayarlar sadece 0 ve 1'i tanır. Her iki taraf da ödün veremez. O halde, kelimelerden 0 ve 1'e bir eşleştirme olmalıdır.

Gördüğümüz metinden 0 ve 1'e olan eşlemeye kodlama denir ve bunun tersi de 0, 1'den metne kod çözme denir. Kodlamanın anlamı budur.

Bilgisayarlar yalnızca sayıları işleyebildiğinden, metni işlemek istiyorsanız, önce metni sayılara dönüştürmeniz gerekir. İlk bilgisayarlar tasarımda bayt olarak 8 bit kullanıyordu. Bu nedenle, bir baytın temsil edebileceği en büyük tam sayı 255'tir (ikili 11111111 = ondalık 255) ve boyutu temsil etmek için 0-255 kullanılır İngilizce harfleri, sayıları ve bazı sembolleri yazın. Bu kod tablosuna ASCII kodu denir. Örneğin, büyük harf A için kod 65 ve küçük harf z için kod 122'dir.

Unicode kodlama, dünyadaki hemen hemen tüm karakterlerin dijital temsilini tanımlar (yani ABC, Çince karakterler gibi gözlerinizle gördüğünüz karakterler) ve Unicode, daha önce bahsedilen ASCII kodu gibi kodlama spesifikasyonlarının birçok eski sürümüyle de uyumludur.

Ülkemizdeki her kişi benzersiz bir kimlik numarasına karşılık gelir ve Unicode ayrıca her karakter için bir kimlik kartı çıkarmıştır Bu "kimlik kartı" üzerinde bu karakteri tanımlayan benzersiz bir dijital kimlik dizisi vardır.

Bu sayı dizisi tüm bilgisayar dünyasında benzersizdir Unicode bu dijital kimlik dizisine [Kod Noktası] adı verilen bir ad verir.

Bu "Unicode dönüştürme biçimi", "kod noktalarının" bilgisayarda depolanma biçimini çözmek için tasarlanmıştır.

"Kod noktası" eşlendikten sonra elde edilen ikili dizginin dönüştürme format birimi "kod birimi" (Kod Birimi) olarak adlandırılır. Bir "kod noktası", bir ikili sayı dizisidir ve bir "kod öğesi", bu ikili sayıyı bölme yöntemidir.

Örneğin, bir karakterin kod noktasının ikili gösterimi n bayta (n * 8 ikili sayı) sahipse ve kod elemanı 8 bit (1 bayt) ise, o zaman n kod elemanına sahiptir.

Unicode kodlama bugün 21 bite genişletildi, neden 21 bite genişletildi? Çünkü başlangıçta Laomei sadece kendi 26 İngilizce harf ve rakamını düşündü.Artık daha fazla ülke dil koduna sahip olduğundan, Unicode genişlemeye devam edemez.Şu anda 21 bit yeterlidir.

UTF-32 en iyi anlaşılanıdır. UTF-32, kod öğesinin 32 bit olduğu anlamına gelir. Kod noktasını her 32 bitte okuyun ve kod noktası Unicode karakterlerinin kodlamasıdır. Daha önce belirtildiği gibi, en uzun yalnızca 21 bittir, bu nedenle her UTF-32 Değer, doğrudan ilgili kod noktasını temsil edebilir.

Kodlama alanı nedir? Daha önce Unicode'dan bahsetmiştim, 21 bittir. Bu 21 bit, 1,114,112 kod noktası sağlar ve kodlama alanı, bu 1,114,112 kod noktasına karşılık gelir.

Bu arada, bu kadar çok kod noktasının bu kadar çok karakter olduğu anlamına gelmediğini söylemek istiyorum.Şu anda, alanın sadece% 10'u kullanılıyor.İnsan toplumu henüz 1,114,112 kadar karakter yaratmadı.

Kodlama alanı 17 düzleme (düzlem) bölünmüştür, her düzlem 65.536 karaktere sahiptir (tam olarak 2 bayt, 16 bit doldurur). Düzlem 0, emoji dışında karşılaşabileceğiniz hemen hemen tüm karakterleri kapsayan "Temel Çok Dilli Düzlem" (BMP, Temel Çok Dilli Düzlem) olarak adlandırılır (emoji 1. düzlemde bulunur). Diğer uçaklar ek düzlemler olarak adlandırılır ve çoğunlukla boştur.

UTF-16 çok daha yaygındır, kod elemanı 16 bittir, yani okuma tamamlanıncaya kadar kod noktasını her 16 bitte okuyun, kod noktasının ilk 16 basamağını alın.

Kodlama alanı burada kullanılır BMP düzlemindeki her kod noktası (yani, yukarıda bahsedilen temel çok dilli düzlem) doğrudan bir UTF-16 kod elemanına eşlenir.

BMP neredeyse tüm ortak karakterleri içerdiğinden, UTF-16 genellikle UTF-32'nin yaklaşık yarısını gerektirir. Diğer düzlemlerde nadiren kullanılan kod noktalarına gelince, bunlar 16 bitlik iki kod öğesi ile kodlanır.

UTF-8, bir kod noktasını kodlamak için bir ila dört bayt kullanır. 0'dan 127'ye kadar olan bu kod noktaları doğrudan 1 bayta eşlenir (yalnızca bu aralıktaki karakterleri içeren metin için, bu, UTF-8 ve ASCII'yi tamamen aynı yapar). Sonraki 1.920 kod noktası 2 bayta eşlenir ve BMP'de kalan tüm kod noktaları 3 bayt gerektirir. Diğer Unicode düzlemlerindeki kod noktaları 4 bayt gerektirir. UTF-8, 8 bitlik kod birimlerini temel alır, bu nedenle bayt sırasına dikkat etmesine gerek yoktur (çünkü bayt 8 bittir, diğer UTF-16 ve UTF-32'nin farklı makine derleme ortamlarında baytı dikkate alması gerekir. Sipariş sorunu).

Yazar: qogir, HIT bilgisayarı bu büyüklükte, Baidu mühendisleri, halka açık numaralar yapan ve arkadaş edinmek istiyoruz. Feragatname: Bu makale yazar tarafından gönderilmiş olup, içeriğin telif hakkı yazara aittir.Makalede kullanılan çizgi film görüntüsü internetten gelmektedir.CSDN bu makaleyi daha fazla bilgi vermek amacıyla yayınlamaktadır ve CSDN, kullanıcılara herhangi bir sorumluluk kabul etmemektedir.
Belediye parti komitesi ve hükümet, ekolojik medeniyet ve kentsel ve kırsal çevre inşaatı için bir seferberlik emri çıkarmak için bir toplantı yaptı.
önceki
Hibrit CRV bir yıldır kullanıldı ve sahibi açıkça şunları söyledi: şüpheler gittikçe azalmaktadır.
Sonraki
Yeni Roewe RX5 Smart Network Titanium Edition 1.5T güç / 159.800 yuan fiyatla piyasaya sürüldü
Fist'in son sıralaması: Faker tahtı kaybeder Netizen: Kardeş Li, nasıl sayılacağını bilmiyor musun?
Biletleri gönder! West Coast Ekolojik Turist Parkı'nda randevu almanız için çiçek festivali sizi bekliyor
Yıldızlı gökyüzü çatılı MPV'ye ne dersiniz? Jinbei F50 yeni modeller 10.49-10.89 milyon yuan sattı
Daniel'i çağıranlar sadece Lamborghini değil, aynı zamanda Ford Taurus'tur. Araba deneyiminizi paylaşın
Yedinci nesil yeni Teana, sahibi olan arabanın çalışmasından bahseder: geri dönüş oranına yüksek
Samsung ilk QLC flash SSD 860 QVO: 1 TB 1040 yuan'ı resmen piyasaya sürdü
Güney Kore çıktı! Spurs yetkilileri "geri tut" dedi, hayranlar onu geri tutamadı
Av tüfeğini tabancaya çevirin, artık motosiklet sürmek zorunda kalmayacaksınız, arabayı Mai Rui Bao XL alın!
Peugeot 508'e ne dersin? Arabayı iki yıl kullandıktan sonra sahibi cevap veriyor
Yetersiz yeteneklere sahip programcılar yarı yolda pes edebilir mi?
Hongqi H5 ilk kez düştü ve bir aylığına yenilendi. Sahibi içini çekti: güvenlik gerçekten yerinde
To Top