UTF-1 - UTF-1
MIME / IANA | ISO-10646-UTF-1 |
---|---|
Diller) | Uluslararası |
Şu anki durum | Belirsiz, esasen tarihsel açıdan ilgi çekici. |
Sınıflandırma | Unicode Dönüşüm Formatı , genişletilmiş ASCII , değişken genişlikli kodlama |
Uzatmalar | US-ASCII |
Dönüşümler / Kodlamalar | ISO 10646 ( Unicode ) |
tarafından başarıldı | UTF-8 |
UTF-1 , ISO 10646 / Unicode'u bir bayt akışına dönüştürme yöntemidir . Tasarımı, alt dizelerin aranmasını ve hata kurtarmayı zorlaştıran kendi kendine senkronizasyon sağlamaz . Çok baytlı kodlamalar için ASCII yazdırma karakterlerini yeniden kullanır ve bazı kullanımlar için uygun değildir (örneğin, Unix dosya adları eğik çizgi için kullanılan bayt değerini içeremez). UTF-1, 2'nin üssü olmayan bir sayı ile bölme ve çarpma işlemlerini kullanması nedeniyle kodlamakta veya çözmekte yavaştır. Bu sorunlar nedeniyle, kabul görmedi ve hızla UTF-8 ile değiştirildi .
Tasarım
UTF-8'e benzer şekilde , UTF-1, ASCII ile geriye doğru uyumlu olan değişken genişlikli bir kodlamadır . Her Unicode kod noktası , tek bir bayt veya iki, üç veya beş baytlık bir dizi ile temsil edilir. ASCII UTF-8 farklı olarak, non-ASCII kod noktaları içerir, tek baytlık kodlamanın, ile desteklenir yoluyla .
U+0080
U+009F
UTF-1, C0 ve C1 kontrol kodlarını veya çok baytlı kodlamalarda boşluk karakterini kullanmaz: 0– 0x 20 veya 0x7F – 0x9F aralığındaki bir bayt her zaman karşılık gelen kod noktasını temsil eder. 66 korumalı karakter içeren bu tasarım, ISO 2022 uyumlu olmaya çalışmıştır .
UTF-1 " modulo 190" aritmetiği kullanır (256 - 66 = 190). Karşılaştırma için, UTF-8 128 ASCII karakterinin tümünü korur ve bunun için bir bit'e ve kendi kendini senkronize etmesi için ikinci bir bite ihtiyaç duyar, bu da "modulo 64" aritmetiğiyle sonuçlanır ( 8 - 2 = 6 ; 2 6 = 64 ). BOCU-1, yalnızca MIME uyumluluğu için gereken minimum ayarı (0x00, 0x07–0x0F, 0x1A – 0x1B ve 0x20) koruyarak "modulo 243" aritmetik (256 - 13 = 243) ile sonuçlanır.
kod noktası | UTF-8 | UTF-1 |
---|---|---|
U + 007F | 7F | 7F |
U + 0080 | C2 80 | 80 |
U + 009F | C2 9F | 9F |
U + 00A0 | C2 A0 | A0 A0 |
U + 00BF | C2 BF | A0 BF |
U + 00C0 | C3 80 | A0 C0 |
U + 00FF | C3 BF | A0 FF |
U + 0100 | C4 80 | A1 21 |
U + 015D | C5 9D | A1 7E |
U + 015E | C5 9E | A1 A0 |
U + 01BD | C6 BD | A1 FF |
U + 01BE | C6 BE | A2 21 |
U + 07FF | DF BF | AA 72 |
U + 0800 | E0 A0 80 | AA 73 |
U + 0FFF | E0 BF BF | B5 48 |
U + 1000 | E1 80 80 | B5 49 |
U + 4015 | E4 80 95 | F5 FF |
U + 4016 | E4 80 96 | F6 21 21 |
U + D7FF | ED 9F BF | F7 2F C3 |
U + E000 | EE 80 80 | F7 3A 79 |
U + F8FF | EF A3 BF | F7 5C 3C |
U + FDD0 | EF B7 90 | F7 62 BA |
U + FDEF | EF B7 AF | F7 62 D9 |
U + FEFF | EF BB BF | F7 64 4C |
U + FFFD | EF BF BD | F7 65 AD |
U + FFFE | EF BF BE | F7 65 AE |
U + FFFF | EF BF BF | F7 65 AF |
U + 10000 | F0 90 80 80 | F7 65 B0 |
U + 38E2D | F0 B8 B8 AD | FB FF FF |
U + 38E2E | F0 B8 B8 AE | FC 21 21 21 21 |
U + FFFFF | F3 BF BF BF | YP 21 37 B2 7A |
U + 100000 | F4 80 80 80 | YP 21 37 B2 7B |
U + 10FFFF | F4 8F BF BF | FC 21 39 6E 6C |
U + 7FFFFFFF | FD BF BF BF BF BF | FD BD 2B B9 40 |
Modern Unicode U + 10FFFF'de bitmesine rağmen, hem UTF-1 hem de UTF-8, orijinal Evrensel Karakter Kümesinin ( UCS-4 ) 31 bitinin tamamını kodlamak için tasarlanmıştır ve bu tablodaki son giriş bu orijinal nihai kod noktasını gösterir. .
Ayrıca bakınız
Referanslar
- "Unicode Standardı: Ek F FSS-UTF" (PDF) (PDF, 768 KiB). Sürüm 1.1. Unicode, Inc.
- ISO / IEC JTC 1 / SC2 / WG2 (1993-01-21). "ISO IR 178: UCS Transformation Format One (UTF-1)" (PDF) (PDF, 256 KiB) (1 ed.). Kayıt numarası 178.
- Czyborra, Roman (1998-11-30). "Unicode Dönüşüm Biçimleri: UTF-8 & Co" . 2016-06-07 tarihinde kaynağından arşivlendi . Erişim tarihi: 2016-06-07 .
- F. Yergeau, F. "UTF-8, ISO 10646'nın bir dönüştürme formatı" .