İçeriğe geç
Favoriler

ASCII Dönüştürücü

Güncellendi:

Metni boşlukla ayrılmış karakter kodlarına dönüştürün veya ondalık kodları tekrar metne çevirin. İçeriğinizi girin ve ASCII'ye Çevir ya da Metne Çevir seçeneğini belirleyin.

Metinden ASCII Koduna Dönüştürücü

Giriş alanları
Etkinleştirilirse, herhangi bir değeri değiştirdiğinizde sonuç otomatik olarak güncellenir.

ASCII Dönüştürücü Formülü

Formül
\[ a_i=\operatorname{codeUnit}(c_i),\qquad c_i=\operatorname{fromCodeUnit}(a_i\bmod 65536) \]

Buradaki gösterimler:

  • \(c_i\) — metnin bir UTF-16 kod birimi.
  • \(a_i\) — bunun ondalık sayı değeri.
  • \(i\) — kod biriminin girdi içindeki konumu.

ASCII'ye Çevir, her UTF-16 kod biriminin ondalık değerini boşluklarla ayrılmış olarak verir. Metne Çevir ise verilen her ondalık tam sayıyı tekrar bir UTF-16 kod birimine dönüştürür; modül işlemi, 0–65535 aralığı dışındaki geçerli tam sayıların nasıl ele alındığını tanımlar.

ASCII Dönüştürücü – Hesaplama Örneği

Örnek: İçerik alanına Hi! yazın ve ASCII'ye Çevir'i seçin. Karakterlerin ondalık değerleri 72, 105 ve 33'tür.

\[ \text{Hi!}\longrightarrow 72\quad 105\quad 33 \]

Sonuç: 72 105 33. Dönüştürmeyi geri almak için Metne Çevir'i seçin ve 72 105 33 girin; sonuç Hi! olur.

ASCII Dönüştürücü nasıl kullanılır

  1. Girdinizi İçerik alanına yazın. ASCII'ye Çevir için dönüştürmek istediğiniz metni yazın. Metne Çevir için boşluk veya başka bir beyaz boşlukla ayrılmış ondalık kodlar girin, örneğin 72 105 33.
  2. Tür seçeneğini belirleyin: metinden sayıya dönüştürme için ASCII'ye Çevir, sayıdan metne dönüştürme için Metne Çevir.
  3. Dönüştürülmüş değeri Sonuç altında okuyun. Başka bir yerde kullanmak için kopyalayabilirsiniz.

İçerik alanı boş başlar, bu nedenle dönüştürmeden önce bir şeyler girin. Metne Çevir, kod listesinin çevresindeki beyaz boşlukları kaldırır ve kodlar arasındaki beyaz boşlukları ayırıcı olarak kabul eder. Kod çözülen metnin içinde bir boşluk temsil etmek için 32 kodunu ekleyin.

Kodlar ne anlama gelir

ASCII, 0'dan 127'ye kadar numaralandırılmış 128 karaktere ve kontrol koduna sayı atar. Yaygın örnekler arasında A için 65, a için 97 ve boşluk karakteri için 32 sayılır. Tanıdık harfleri sayısal kodlarına dönüştürmek; metni incelemenize, programlar arasında alışveriş edilen verileri denetlemenize veya karakterlerin nasıl temsil edildiğini anlamanıza yardımcı olabilir.

Adına rağmen bu dönüştürücü ASCII değerleriyle sınırlı değildir. ASCII'ye Çevir modunda JavaScript'in UTF-16 temsilini kullanır: her UTF-16 kod birimini alır ve ondalık değerini yazdırır. Standart ASCII karakterleri her zamanki ASCII sayılarını verir. Diğer birçok karakter 127'nin üzerinde değerler üretir, bu nedenle bu değerler standart ASCII kodları olarak tanımlanmamalıdır.

Metne Çevir modunda dönüştürücü, beyaz boşlukla ayrılmış her girdiyi bir ondalık tam sayı olarak okur ve ondan bir UTF-16 kod birimi oluşturur. 0'dan 127'ye kadar olan kodlar standart ASCII'ye karşılık gelir; diğer geçerli kod birimi değerleri ASCII dışı karakterler üretebilir. Sonuç ayrıca satır sonu gibi görünmez karakterler içerebilir, bu yüzden görünümü içerdiği her kodu ortaya çıkarmayabilir.

Bu ayrım en çok emojiler ve bazı daha az yaygın semboller için önemlidir. Bunlar iki UTF-16 kod birimiyle temsil edilir, bu nedenle ASCII'ye Çevir tek bir Unicode kod noktası yerine iki sayı verir. Baytlara veya başka bir kodlamaya ihtiyacınız varsa, bu sonuç bir UTF-8 bayt listesi değildir.

Varsayımlar ve pratik ipuçları

  • Metne Çevir için ondalık sayılar kullanın. Örneğin 65 66 67, ABC üretir. Dönüştürücü, onaltılık veya ikili gösterimi ayrı bir girdi biçimi olarak okumaz.
  • Kodları beyaz boşlukla ayırın. Dönüştürücü virgülleri ayırıcı olarak kullanmaz, bu yüzden 65,66 gibi girdilerden kaçının.
  • Kod çözülen metne boşluk, sekme veya satır sonu eklemek için sırasıyla 32, 9 veya 10 kullanın. Sayısal kodlar arasına yazılan boşluklar yalnızca girdileri ayırır.
  • Öngörülebilir sonuçlar için geçerli tam sayı kodlar kullanın. Bu araç her girdiyi dönüştürmeden önce doğrulamaz: hatalı değerler beklenmedik veya görünmez bir karakter üretebilir. UTF-16 kod birimi aralığı dışındaki tam sayılar 0 ile 65535 arasında bir değere sarılır.
  • Görünmez karakterler sonucu sayfada incelemeyi zorlaştırıyorsa sonucu kopyalayın. Ne kadar metin girdiğinizi bağımsız olarak denetlemek için Karakter Sayacı'nı deneyin.

Karakter kodları yerine sayı temsilleriyle çalışıyorsanız, Onaltılık Dönüştürücü ve İkili Dönüştürücü diğer sayı biçimlerini işler. Çıktıları, ek bir yorumlama adımı olmadan bu dönüştürücünün boşlukla ayrılmış ondalık karakter kodlarıyla değiştirilebilir değildir.

Yaygın ASCII değerleri

Karakter veya kontrol Ondalık kod
Boşluk 32
Ünlem işareti (!) 33
0 rakamı 48
Büyük A harfi 65
Küçük a harfi 97
Satır besleme (line feed) 10

Tablo, bu dönüştürücünün bu ASCII karakterleri için ürettiği sayılarla eşleşen ondalık değerleri gösterir. Satır besleme bir kontrol karakteridir: görünür bir harf değil, satır sonu oluşturur.

Sıkça Sorulan Sorular

ASCII kodlarını elle nasıl bulabilirim?

Bir ASCII tablosundan başlangıç değeri alın, sonra ileriye doğru sayın. Büyük A 65'tir, dolayısıyla C 67'dir; küçük a 97'dir, dolayısıyla c 99'dur. Rakamlar 0 için 48'den başlar, bu da 7'nin 55'e eşit olmasını sağlar. Bu kısayollar standart ASCII karakterler için geçerlidir, rastgele Unicode sembolleri için değil.

Harfler ve rakamlar için hangi ASCII değer aralığını beklemeliyim?

Standart ASCII değerleri 0'dan 127'ye kadar uzanır. Büyük harfler 65–90, küçük harfler 97–122 ve rakamlar 48–57 aralığındadır. "İyi" bir değer diye bir şey yoktur: sayı, karakterin kalitesini ölçmek yerine onu tanımlar. 127'nin üzerindeki değerler bu dönüştürücünün geçerli çıktısı olabilir, ancak standart ASCII değerleri değildir.

Aksanlı bir harf neden farklı bir UTF-8 bayt değerine sahip?

Bu dönüştürücü kodlanmış baytları değil, UTF-16 kod birimlerini raporlar. Örneğin é burada 233 ondalık değerini üretir, oysa UTF-8 kodlaması 195 ve 169 olmak üzere iki bayttan oluşur. Her iki temsil de aynı karakteri farklı biçimlerde tanımlar. Bir dosya veya ağ mesajı için baytlara ihtiyacınız varsa bir UTF-8 kodlayıcısı kullanın.

Neden görünür karakterlerden daha fazla sayı var?

Görünür bir karakter her zaman bir UTF-16 kod birimine karşılık gelmez. Bir emoji iki sayı üretebilir, birleştirici aksanlı bir harf ise tek karakter gibi görünse de ayrı sayılar üretebilir. Satır sonu karakterleri de görünür semboller olarak belirmeksizin mevcut olabilir. Çıktıyı, okuyucunun gördüğü karakterler olarak değil, kod birimleri olarak sayın.

Negatif bir sayı veya geçersiz bir kod girersem ne olur?

Negatif tam sayılar UTF-16 kod birimi aralığına sarılır: örneğin −1, 65535 olur. Dönüştürücü girdileri kesinlikle doğrulamaz; her simgenin başlangıcını ondalık tam sayı olarak ayrıştırır. Böylece `65abc` A olabilirken, ayrıştırılabilir sayı içermeyen bir simge görünmez bir null karaktere dönüşebilir. Güvenilir sonuçlar için düz tam sayılar kullanın.

Satır sonları neden bazen 10, bazen 13 10'a karşılık gelir?

Farklı sistemler satır sonlarını farklı temsil eder. Unix tarzı bir satır sonu genellikle satır beslemedir, kod 10. Windows tarzı bir satır sonu ise genellikle satır başı ve ardından satır besleme kullanır, kodlar 13 10. Farklı kaynaklardan dönüştürülmüş metinleri karşılaştırıyorsanız her iki kodu da kontrol edin; temeldeki değerler farklı olsa da görüntülenen sonuç aynı görünebilir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir