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

Dönüştürmek için metin veya ondalık kod noktaları girin.

Nasıl hesaplanır?

Metinden ondalığa yönünde araç metni UTF-8 olarak okur ve her karakterin Unicode kod noktasını 10 tabanında bir sayı olarak, aralarında boşluk bırakarak verir. Kod noktası, karakterin Unicode tablosundaki numarasıdır; örneğin H, 72’dir (U+0048). Ondalıktan metne yönünde bunun tersi yapılır: boşluk ya da virgülle ayrılmış sayılar karaktere çevrilir. Her sayı, U+10FFFF’e (1.114.111) kadar bir tam sayı olmalı ve 55296–57343 vekil (surrogate) aralığında bulunmamalıdır; baştaki sıfırlar sorun değildir. Negatif sayı, 0x48 gibi onaltılık değer veya boş giriş gibi diğer durumlar sonuç vermez. Sayaç, işlenen sayı ya da karakter adedini gösterir.

Örnek hesaplama

"Hi €" metnini çevirelim. Karakterleri tek tek alalım. H kod noktası 72, i 105, boşluk 32 ve euro işareti € 8364’tür (U+20AC). Araç bunları boşlukla birleştirip 72 105 32 8364 sonucunu verir; sayaç 4 numbers gösterir. Ondalıktan metne yönüne geçip 72 105 32 8364 yazarsanız tam olarak Hi € geri gelir; bu, gidiş-dönüşün tutarlı olduğunu gösterir.

Bu örneği dene →

Sık yapılan hatalar

  • Her görünen simge için tek sayı beklemek. Temel harf ile birleştirici işaretle yazılmış aksanlı harf (e artı U+0301) iki sayı verir (101 769), hazır birleşik é tek sayı verir (233), aile emojisi ise 8205 ile bağlanmış birkaç kod noktasıdır.
  • Boşlukların ve satır sonlarının da sayıldığını unutmak. Boşluk 32, yeni satır 10’dur ve çıktıda sayı olarak görünürler.
  • Ondalıktan metne yönünde onaltılık değer (0x48, U+0048 ya da 48) yazmak. Sayılar ondalık olmalıdır; 72 H verir, 48 ise 0 rakamını verir.
  • Kod noktalarını bayt değerleriyle karıştırmak. ASCII’de ikisi aynıdır, ama € kod noktası olarak 8364’tür ve UTF-8’de üç bayt tutar; bu baytların hiçbiri 8364 değildir.
  • 55296–57343 vekil aralığında ya da 1114111’in üstünde sayı girmek. Bunlar geçerli karakter değildir ve sonuç gelmez.

Bu hesaplama hakkında

Bir bilgisayarın görüntülediği her karakter, dahili olarak bir sayı olarak — Unicode kod noktası olarak — saklanır ve bu dönüştürücü, metninizdeki her karakteri bu sayının ondalık değerine eşler; böylece “Hi” kelimesi “72 105” olur (H için 72, i için 105), her kod noktası bir boşlukla ayrılır. Bu, Unicode’un daha tanıdık on altılık gösteriminde kullanılan (H için U+0048) aynı temel numaralandırmadır, yalnızca 16 tabanı yerine 10 tabanında ifade edilir.

Programcılar, karakter kodlama sorunlarında hata ayıklarken, düşük seviyeli dize veya bayt gösterimleriyle çalışırken veya metnin bellekte gerçekte nasıl temsil edildiğini öğretirken bu tür bir dönüşüme başvurur — çünkü ASCII ve Unicode, ekranda bir glif olarak görüntülenmeden çok önce her harfe, rakama, noktalama işaretine ve emojiye belirli bir sayısal kimlik atar. Dönüşüm iki yönde de çalışır: metin ondalık kod noktalarına, boşlukla ayrılmış ondalık sayılar ise yeniden orijinal metne çevrilebilir.

Bu faydalı oldu mu?

En fazla 3 tepki seçebilirsiniz.

Yorumlar (1)

  • Editör ekibi

    İşe yarar bir hata ayıklama yöntemi: iki metin birebir aynı görünüp program farklı diyorsa ikisini de buraya yapıştırıp sayıları karşılaştırın. Bölünmeyen boşluk 32 yerine 160, sıfır genişlikli boşluk 8203 olarak görünür; ikisi de ekranda fark edilmez. Kıvrık tırnaklar da düz olanlardan 8217 ile 39 diye ayrılır. Hangi görünmez karakter bir içe aktarma işleminizi bozdu? En tuhafını yazın.

Popüler hesaplayıcılar

Tüm Hesaplayıcılar