Nasıl kullanılır
- Metni veya baytları basE91'e dönüştürmek için "Kodla", basE91'i veriye geri çevirmek için "Kodu çöz" seçeneğini seçin.
- Girdinizi yazın veya yapıştırın ya da bir dosya açın. Ham baytlar için girdi biçimini "Onaltılık" olarak değiştirin.
- Sonuç siz yazarken güncellenir. Kod çözerken "Metin" veya "Onaltılık" çıktısını seçin.
- Sonucu kopyalayın veya dosya olarak indirin.
basE91 nedir?
basE91, Joachim Henke tarafından tasarlanmış bir ikili veriden metne kodlama yöntemidir. 95 yazdırılabilir ASCII karakterinden 91'ini kullanır: boşluk, kesme işareti ', kısa çizgi - ve ters eğik çizgi \ dışındaki tüm karakterler.
Sabit bayt blokları üzerinde çalışmaz. Kodlayıcı girdi bitlerini bir arabellekte toplar ve her seferinde 13 bit alır. 13 bitlik değer 88'den büyükse iki karakter olarak yazılır. 88 veya daha küçükse 14. bit de alınır; iki adet 91 tabanlı karakter 91 × 91 = 8281 farklı değer ifade edebildiği için bu yine sığar. Böylece her 13 veya 14 bit tam olarak 2 karaktere dönüşür.
Sonuç olarak ek yük en fazla yaklaşık %23'tür; uzun sıfır bayt dizileri içeren verilerde yaklaşık %14'e kadar düşer. Rastgele veya sıkıştırılmış veriler üst sınıra yakın sonuç verir.
basE91 ve diğer kodlamalar
| Kodlama | Karakter sayısı | Çıktı boyutu |
|---|---|---|
| Hex | 16 | 2 × girdi |
| Base58 | 58 | yaklaşık 1,37 × girdi |
| Base64 | 64 | 1,33 × girdi |
| Base85 / Ascii85 | 85 | 1,25 × girdi |
| basE91 | 91 | yaklaşık 1,14 ile 1,23 × girdi |
Kendi verileriniz için gerçek çıktı uzunluklarını karşılaştırmak isterseniz verinizi Tüm kodlamalar aracına yazın.
Dikkat edilmesi gerekenler
- Kaçış. Alfabe, JSON'da ve çoğu dize sabitinde kaçış uygulanması gereken çift tırnak
"karakterini ve HTML ile XML'de kaçış uygulanması gereken<,>ve&karakterlerini içerir. basE91 URL güvenli değildir. - Dizenin tamamını çözün. Bitler karakter sınırlarını aştığı için bir basE91 dizesinin ortasından kesilmiş bir parça tek başına çözülemez.
- Destek. basE91 bir IETF standardı değildir. Yazarı C ve diğer diller için referans uygulamalar yayımlar; Python için
base91paketi gibi çoğu platform için uyarlamalar mevcuttur.
Teknik özellikler
| Alfabe | 91 yazdırılabilir ASCII karakteri |
|---|---|
| Çıktı boyutu | Yaklaşık %123 |
| Dolgu | Yok |
| Standart | basE91 (Joachim Henke) |
| Büyük/küçük harf duyarlı | Evet |
Örnekler
| Girdi (UTF-8) | Çıktı |
|---|---|
Hello, World! | >OwJh>}AQ;r@@Y?F |
Base64.is | xD7gXm^?t#5 |
你好 | I_5k7aPE |
Sıkça sorulan sorular
basE91, Base64'ten daha mı küçük?
Evet. Base64 her zaman %33 ekler; basE91 ise en fazla yaklaşık %23, çok sayıda sıfır bayt içeren verilerde daha da az ekler. 1 MB'lık bir dosya için bu, yaklaşık 100 KB tasarruf demektir.
basE91 hangi karakterleri kullanır?
A-Z ve a-z harflerini, 0-9 rakamlarını ve !#$%&()*+,./:;<=>?@[]^_`{|}~" simgelerini. Boşluk, kesme işareti, kısa çizgi ve ters eğik çizgi kullanılmaz.Neden basE91 diye yazılıyor?
Yazarı adı bu şekilde yazar. basE91 ve Base91 aynı kodlamayı ifade eder; bu sayfa orijinal algoritmayı izler.
Boşluklar kod çözmeyi bozar mı?
Hayır. Boşluklar ve satır sonları alfabenin parçası olmadığından buradaki kod çözücü bunları yok sayar. Satırlara bölünmüş basE91 metnini doğrudan yapıştırabilirsiniz.