Metinden Ondalığa ve Ondalıktan Metne Dönüştürücü

Metninizin her baytını 0 ile 255 arasında ondalık bir sayıya, yani İngilizce metinler için bilinen ASCII kodlarına dönüştürün ya da ondalık değerlerden oluşan bir listeyi yeniden metne çevirin.

Tamamen tarayıcınızda çalışır. Hiçbir veri yüklenmez.

Nasıl kullanılır

  1. Metni ondalık sayılara dönüştürmek için "Kodla", sayıları yeniden metne dönüştürmek için "Kodu çöz" seçeneğini seçin.
  2. Girdinizi yazın veya yapıştırın ya da bir dosya açın. Sonuç siz yazarken güncellenir.
  3. Sayılar için bir ayırıcı seçin: "Boşluk", "Virgül" veya "Yeni satır".
  4. Sayıları kopyalayın veya dosya olarak indirin.

Ondalık bayt değerleri ve ASCII kodları

Bilgisayardaki her karakter bir veya daha fazla bayt olarak saklanır ve bir bayt yalnızca 0 ile 255 arasında bir sayıdır. Bu araç bu sayıların her birini olağan ondalık gösterimle yazar. İngilizce metinlerde bu sayılar bilinen ASCII kodlarıdır: büyük harfler 65'ten 90'a, küçük harfler 97'den 122'ye, 0-9 rakamları 48'den 57'ye kadar uzanır ve boşluk 32'dir. Denetim karakterleri 32'nin altında yer alır; örneğin satır besleme 10, satır başı ise 13'tür.

Sonuç, Python'da ord() ile ya da JavaScript'te bir Uint8Array okuyarak elde ettiğiniz listeyle aynıdır ve bir dizedeki görünmez karakterleri, satır sonlarını veya bayt sırası işaretini (BOM) fark etmenin pratik bir yoludur.

Tek büyük sayı değil, bayt başına bir sayı

Dönüştürme bayt bayt çalışır: iki harfli bir kelime tek bir tam sayıya değil, iki sayıya dönüşür. 127'nin üzerindeki değerler ASCII metinlerinde hiçbir zaman görünmez. UTF-8'de bu değerler, birlikte tek bir karakter oluşturan iki ila dört baytlık diziler hâlinde gelir; aksanlı bir harfin veya bir Çince karakterin birden fazla sayı üretmesinin nedeni budur. Batı Avrupa metinlerinde karakter başına tek bir değer için, her bayt değerinin karakterin Unicode kod noktasına eşit olduğu ISO-8859-1'i ya da Windows-1252'yi seçin.

Bunun yerine tek bir sayıyı tabanlar arasında dönüştürmek, örneğin 255'i onaltılık tabana çevirmek için sayı tabanı dönüştürücüsünü kullanın. Aynı baytları başka gösterimlerde görmek için onaltılık veya ikili araçlarını deneyin.

Kodda ondalık bayt değerleri

# Python
list('Hi'.encode())                  # [72, 105]
bytes([72, 105]).decode()            # 'Hi'

// JavaScript
[...new TextEncoder().encode('Hi')]                   // [72, 105]
new TextDecoder().decode(new Uint8Array([72, 105]))   // 'Hi'

Teknik özellikler

Alfabe0-9
Çıktı boyutuBayt başına 1 ila 3 basamak, artı ayırıcılar
DolguYok
StandartOndalık bayt değerleri
Büyük/küçük harf duyarlıHayır

Örnekler

Girdi (UTF-8)Çıktı
Hello, World!72 101 108 108 111 44 32 87 111 114 108 100 33
Base64.is66 97 115 101 54 52 46 105 115
你好228 189 160 229 165 189

Sıkça sorulan sorular

A harfinin ondalık ASCII kodu nedir?

Büyük A 65, küçük a ise 97'dir; bu hem ASCII'de hem de UTF-8'de geçerlidir. Sonraki her harf bir ekler; bu yüzden Z 90, z ise 122'dir.

Ondalık sayıların kodunu ayırıcı olmadan çözebilir miyim?

Hayır. 72105 gibi bir basamak dizisi birden fazla şekilde bölünebilir; bu nedenle kod çözücü sayıların boşluk, virgül, noktalı virgül veya satır sonlarıyla ayrılmasına ihtiyaç duyar. Baştaki sıfırlara izin verilir.

255'ten büyük sayılar neden hata veriyor?

Bir bayt 0 ile 255 arasındaki değerleri tutar. Euro işaretinin Unicode kod noktası olan 8364 gibi daha büyük sayılar bayt değeri değildir. Karakterin kendisini yazın ve baytlarını görmek için onu kodlayın, örneğin UTF-8 ile.

Tek bir karakter neden birkaç sayıya dönüşüyor?

UTF-8, ASCII dışındaki karakterleri iki, üç veya dört bayt olarak saklar ve her bayt kendi sayısına dönüşür. Batı Avrupa karakterlerinin her biri için tek bir sayıya ihtiyacınız varsa Windows-1252 gibi tek baytlık bir karakter kümesi seçin.