ASCII'den Metne Dönüştürücü

72 101 108 108 111 gibi bir dizi verildiğinde, bu dönüştürücü her sayıyı ASCII kodu olarak okur ve yazdığı metni döndürür — bu örnekte Hello. Tabanı (ondalık, onaltılık veya ikilik) girdiden otomatik algılar, yaygın tüm ayırıcılara tolerans gösterir ve 0x, \x veya # öneklerini temizler; böylece kodları C kaynak dosyasından, onaltılık dökümden veya CTF probleminden doğrudan yapıştırabilirsiniz.

Dönüştürücü girdinizi nasıl okur

  1. 1

    ASCII kodlarını yapıştırın

    Boşluk, virgül, noktalı virgül, yeni satırla ayrılmış — ya da her kod sabit genişlikliyse hiç ayırıcı olmadan.

  2. 2

    Tabanı seçin veya otomatik algılatın

    0-127 sayıları için ondalık, iki basamaklı çiftler için onaltılık, 8 bitlik gruplar için ikilik.

  3. 3

    Her kod bir karakter olur

    Kod 65 `A`, 0x61 `a`, 00100000 boşluktur.

  4. 4

    Çözülen metni okuyun

    Yazdırılamayan kodlar (NUL, BEL, DEL) köşeli parantez içinde mnemonic ile gösterilir.

Dönüştürücünün anladığı giriş formatları

Örnek giriş Taban
72 101 108 108 111 ondalık
72,101,108,108,111 ondalık
48 65 6C 6C 6F onaltılık
0x48 0x65 0x6C 0x6C 0x6F onaltılık
\x48\x65\x6C\x6C\x6F onaltılık (C kaçışı)
48656C6C6F onaltılık (ayırıcısız)
01001000 01100101 01101100 01101100 01101111 ikilik

Kontrol kodlarının işlenmesi

ASCII 0-31 ve 127 yazdırılmaz. Hedef kullanıma bağlı olarak dönüştürücü bunları ya ham bayt olarak çıkarabilir (protokol dizisi kurmak için kullanışlı) ya da kısaltmalarını açılı parantez içine koyabilir: <LF>, <CR>, <TAB>, <NUL>, <DEL>.

ASCII’nin ötesi

Kodlarınız 127’nin üzerindeyse, kesin konuşursak ASCII değildir. İki yaygın durum:

  • Latin-1 / Windows-1252 — Karakter başına tek bayt; 128-255 değerleri aksanlı harfleri kapsar.
  • UTF-8 — Çok baytlıdır; devam baytları 10xxxxxx ile başlar. C3 A9 gibi bir kod dizisi \u00e9 olarak çözülür.

Dönüştürücü 127 üzerindeki girdiyi varsayılan olarak UTF-8 baytları gibi ele alır; bu, modern metnin çoğunu kapsar.

Yönü tersine çevirmek

Metinden kodlara geçmek için eş araçları kullanın: Metinden ASCII’ye, Metinden ikiliğe, Metinden onaltılığa.

Sık Sorulan Sorular

Her kod sabit genişlikliyse evet: ikilik için 8 bit, onaltılık için 2 basamak. Ondalık için ayırıcı gerekir, çünkü ondalık kodlar 1-3 basamaklıdır ve aksi halde güvenilir biçimde bölünemez.

Girdinizdeki bazı kodlar 127’nin üzerinde ve geçersiz UTF-8 bayt dizileri olabilir. Kaynak eski bir metin dosyası veya Windows sisteminden dump ise Latin-1 olarak çözmeyi deneyin.

Evet. C-style escape’ler (\x48), C literal’ları (0x48), URL percent-encoding (%48) ve assembly önekleri ($48) ayrıştırmadan önce temizlenir.

127 üzerindeki kodlar geçerli bayt olabilir ama ASCII değildir. 255 üzerindeki kodlar bir bayta sığmaz — dönüştürücü tahmin etmek yerine bunları işaretler ve atlar.

İlgili Araçlar