Bilgisayar ve çevrimiçi konuşma dünyasında ASCII kodu adı verilen bir şey gereklidir. Bu kod veya tablo olayını daha önce duymuş olabilirsiniz. Ama şimdi bu terimin ne olduğuna bakacağız ve geçmişten bugüne nasıl değiştiğini göreceğiz.
Her şeyden önce ASCII, American Standard Code for Information Interchange anlamına gelir. Türkçeye çevirisini ise, Amerikan Bilgi Değişimi Standart Kodu olarak yorumlarız. Harfleri ve sembolleri sayılara dönüştürmenin bir yoludur. 1960’larda bunu geliştirdiler. Bundan önce bilgisayarlar olayları anlamak için farklı yollar kullanıyordu. Ancak bu karakter seti ortaya çıktığında cihazların bilgi paylaşımını kolaylaştırdı.
ASCII Tanımı ve Önemi Nedir?
ASCII kodu, bilgisayarlardaki karakterleri kodlamanın bir yoludur. Telefonlara ve bilgisayarlara yazmak için bunu birçok kez kullandılar. Harika olan şey, metnin her türlü cihazda aynı şekilde gösterilmesine yardımcı olmasıdır.
Bilgisayarlarla veya dijital cihazlarla çalışıyorsanız bu ASCII setini bilmelisiniz. Günümüzde birçok modern karakter sistemimiz var. Ancak bununla cihazların birbirleriyle konuşması kolay olacaktır.
Dolayısıyla bunu anlamak hem bilgisayarlarda bir şeyler yapanlar hem de kod yazanlar için faydalıdır. Temel olarak yazılımlarının daha iyi ve hızlı çalışmasına katkı sağlar.
Bu ASCII kodu setinin şu anda sahip olduğumuz süper gelişmiş karakter kodlarının temeli olduğunu bilmemiz gerekiyor.
Karakter Dizisi Kodlarının Tarihi ve Gelişimi
1870’lerde Émile Baudot adında bir Fransız geliştirici telgraflar için ikili bir kod yaptı. Bu kod beş bitti ve mesajları telgrafla gönderiyordu. Ancak Latin alfabesinin tüm harflerini işleyemedi. Bu durumda, bu da metin standartı kodunun oluşturulmasına yol açtı.
Geçmişine bakarsak Bob Bemer ve diğer bazı bilgisayar bilimcileri bir proje üzerinde birlikte çalıştılar. Amaçları metnin çeşitli bilgisayar sistemleri ve cihazlarda aynı görünmesini sağlamaktı. Araştırmalarının ardından 1960’lı yıllarda bu sistemi ortaya çıkardılar. Bazı insanlar buna Temel (Basic) ASCII de diyor.
ASCII Türleri
Programlama ve yazılım alanında türlerini bilmek önemlidir. Pek çok programlama dilinde bile ne tür karakterlerin birlikte çalıştıklarını anlamak gerekir.
Diyelim ki İngilizce olmayan karakterlerle yazılım yapıyorsunuz. Bu durumda Genişletilmiş (Extended) veya Unicode kullanmalısınız. Veya UTF-8 gibi yeni türleri tercih edebilirsiniz.
Özetlemek gerekirse, bu grubu 7 bit ve 8 bit olmak üzere iki ana parçaya ayırıyoruz:
1) ASCII-7 (Basic / Temel veya Basit)
1963 yılında ASA (American Standards Association / Amerikan Standartlar Birliği), ASCII-63 adı verilen ilk resmi versiyonunu yayınladı. 7 bitlik bir sette 128 karakter vardı. İlk başta sadece büyük ve küçük boyutlarda İngilizce harfler vardı ve ayrıca 0’dan 9’a kadar rakamlar da vardı.
Elbette sadece İngilizceyle sınırlı değildi. Zamanla üzerinde çalışmaya devam ettiler ve ASCII-7 adında 8 bitlik bir sürüm yaptılar. Yani bu yeni sürüm eskisinden fazla bilgiye sahipti, dolayısıyla birçok dili işleyebiliyordu.
Teknoloji geliştikçe bilgisayarların daha fazla şey yapması gerekti. Bu yüzden karakterleri anlamak için kendilerini geliştirmeleri gerekiyordu. Böylece 128 karakterlik dizi üzerinde çalışıp birçok karakter ve sembol eklediler. Başka bir deyişle, normal versiyondan gelişmiş olan buna Extended ASCII adını verdiler.
2) ASCII-8 (Extended / Genişletilmiş)
IBM, artan ihtiyaçları karşılamak için Extended ASCII kodlaması yaptı. İlkinden birçok sembol, kod ve hatta resim vardı. Bu ikinci türün 256 kodu vardı. Bu aynı zamanda ASCII Art (Sanatı) denilen bir şeye de yol açtı.
IBM, 1981 yılında bu 8 bitlik sürümü ilk bilgisayarlarında kullanmak istedi. Ayrıca başka dillerden karakterler de vardı. Ancak bu sürüm standart hale gelmediği için sorunlara neden oldu. Kısacası farklı şirketlerin farklı kodlama yöntemleri kullanması, sistemlerin birlikte çalışmasını zorlaştırıyordu.
Sonraki Karakter Kodlama Türleri
1980’lerin sonlarında herkes için işe yarayacak bir kod oluşturmaya çalıştılar. Bu, Unicode kodlamasının yaratılmasına yol açtı. Yani eski sistemler hala ilkini kullanıyordu, ancak yeni sistemler Unicode kullanmaya başladı.
Unicode 1.0 olarak adlandırılan Unicode’un ilk sürümü 1991’de 7.096 karaktere sahipti. Hızlıca 2023’e gelindiğinde, sürüm 15.1‘de 149.813 kod gibi muazzam bir rakam var! Amacı aynı: Dünyadaki her dil ve yazı sistemi için işe yarayan tek bir yazma yöntemine sahip olmak. Kısacası çok sayıda insanın kullanmasını istiyorlar.
Basit bir ifadeyle Unicode, orijinal ve genişletilmiş ASCII’den geldi. Her ikisiyle de çalışır ve diğerlerinde olmayan karakterlere sahiptir. Ayrıca, metnin veya sembolün her bitini göstermek için 16 bit ve 32 bit değerleri kullanır.
Unicode’dan sonra UTF-8 adında başka bir tür daha var. Her kodu için bir ila dört bayt kullanarak Unicode verilerini küçük bir şekilde temsil eder. Basitçe söylemek gerekirse UTF-8, Standart veya Temel ile çalışır. Bu, orijinal, genişletilmiş ve Unicode sürümdeki verileri işleyebileceği anlamına gelir.
Bugün bile, özellikle PC yazılım geliştirmede bu kodu kullanmak hala önemini koruyor. Birçok programlama dili bunu metin göstermek için kullanır. Yeni versiyonları çıkmış olsa da bu hala temel temeldir. Ve e-posta veya dosyaların taşınması gibi bazı eski şeyler hala onu kullanıyor.
ASCII Tablosu Nedir?
Bilgisayar tarihiyle ilgileniyorsanız, bir karakter seti tablosuyla karşılaşmış olabilirsiniz. Peki ASCII tablosu tam olarak nedir ve neden önemlidir?
ASCII kümesi tablosu her harfe, sayıya veya simgeye sayılar veren bir liste gibidir. Bu, her birine benzersiz bir kod vermenin bir yoludur. Bu tablonun tamamı organize ve standarttır. Ancak 128 veya 256 karaktere sahip olabilir çünkü 7 bit ve 8 bit türleri farklı sayıda karakteri işler.
Şimdi hızlıca 7 bitlik ASCII kodları tablosundan bahsedelim:
- Harfler (Letters)
- Büyük harfler (A-Z) 65’ten 90’a kadar olan kodları kullanır.
- Küçük harfler (a-z) 97’den 122’ye kadarki kodları kullanır.
- Rakamlar (Digits)
- Sayısal rakamlar (0-9) 48 ila 57 aralığındadır.
- Semboller (Symbols)
- Tablonun diğer noktalarında farklı semboller ve noktalama işaretleri bulunmaktadır.
ASCII tablosu önemlidir çünkü bilgisayarların metninin anlanması ve gösterilmesine yardımcı eder. Mesela ünlem işaretinin (!) 33, dolar işaretinin ($) ise 36 olduğunu söylüyor. Yani “A” tuşuna bastığınızda bilgisayarınızı 65 koduna çevirip hafızasına kaydediyor.
Tablodaki Kontrol Karakterleri
Ayrıca ASCII tablosunda kontrol karakterleri için özel kodlar bulunmaktadır. Örneğin, imlecin satırın başına gitmesini sağlamak için bir tuşa bastığınızda, bilgisayarınız onu kod 13’e (CR – Carriage Return – Satırbaşına Dönüş) dönüştürür.
Tablodaki sayılar verileri işlemenize destek olur. Temelde bir karakterin nasıl görüneceğine karar verebilirsiniz. Ve bu yalnızca metnin güzel görünmesini sağlamak için değil; veri iletişimindeki görevleri yönetmek için de kullanabilirsiniz.
Örneğin en sık kullanılan kontrol setleri şunlardır:
- Start of Header (SOH – Code 1):
- Bu ASCII kodu klavyedeki belirli bir tuşla eşleşmiyor. Yani cihazlar arasında konuşma veya programlama gibi şeylerde kullanılan kontrol kodudur.
- Carriage Return (CR – Code 13):
- Genellikle klavyedeki “Enter” tuşuna karşılık gelir. Bu tuş bir metin satırını tamamlar ve bir sonraki satıra geçer.
- Line Feed (LF – Code 10):
- Aynı şekilde kendi anahtarı da yoktur ancak “Enter” tuşuyla birlikte çalışır. Bir metin satırının sonunu gösterir ve ayrıca devamındaki satıra gitmenizi sağlar.
- Acknowledge (ACK – Code 6):
- Bir anahtarla doğrudan eşleşmiyor. Yine de cihazlar arasında veri gönderilmesinde kullanılan benzersiz bir kontrol karakteridir.
- End of Text (ETX – Code 3):
- Code 3 genellikle klavyedeki bir tuşla eşleşmez. Yani veri iletişiminde veya programlamada kullanılan eşsiz bir koddur.
Kontrol karakterleri bilgisayar yazılımı ve programlamasında önemlidir. Ancak genişletilmiş tabloda bazı değerler farklı olabilir. Bu tablo eski olmasına rağmen hala bazı eski cihazlarda çalışmaktadır. Unutmayın, artık Unicode veya UTF-8 gibi gelişmiş kodlarımız var. Özetle, metin kontrol kodları verileri birçok farklı şekilde yönetmenize izin verir.
Binary (İkili) Sistemde Nasıl Çalışır?
ASCII kodu tablosundaki her karakterin bir ikili kodu (binary) vardır. Bu kodlar bilgisayarların birbirleriyle konuşmasını sağlar. Başlıca ikili kodlar, 0 ve 1’lerden oluşan bir elektrik sinyalini temsil eder.
Diyelim ki klavyenizdeki büyük ‘A‘ harfine bastınız. İkili sistem devreye giriyor. Bilgisayarınız ‘A’ harfine 01000001 ikili kodunu verir. Ardından, kodlama sistemi devreye girer. Bu ikili koda bakar ve size eşleşen değeri yani 65’i yani tablosuna göre ‘A’yı söyler.
Bu nedenle, bu metin teknolojisinin elektronik cihazlarda koda dönüştürmek için nasıl çalıştığını anlamak çok önemlidir.
Karakter Kodlama Uygulamaları
- Bilgisayar Sistemleri
Bilgisayar sistemlerinde her türlü metnin gösterilmesi büyük önem taşır. Dolayısıyla insanlar bunu özellikle programlama dilleri gibi konularda çok kullanıyor. Ayrıca dosya sistemlerinde ve farklı yazılım programlarında da kullanışlıdır.
- İnternet ve E-Posta
İnternetteki iletişim kuralları açısından çok önemlidir. Örneğin, e-posta göndermek için SMTP protokolünü kullanır. Ayrıca, FTP veya HTTPS gibi protokollerde olduğu gibi web üzerindeki metni de gösterir.
- Veri İletimi
Farklı bilgisayarlar arasında veri gönderilmesine yardım eder. Seri iletişimde olduğu gibi ağ protokollerinde veri paylaşımını destekler.
- Yazıcılar ve Ekranlar
Yazıcılarda ve ekranlarda metni gösterir. Temel olarak tüm harfleri ve sembolleri ekrana yerleştirir. Ayrıca yazıcı gibi cihazlarda metnin yazdırılmasına da destekler.
- Komut Satırı Arayüzleri
Windows veya Linux gibi sistemlerde kullandığınız komut istemindeki metni gösterir. Yani bir komut yazdığınızda size bir harf veya sembol sunulur.
- Eski Sistemler ve Cihazlar
Hesap makineleri gibi eski sistemlerde kullanımı mevcuttur. Yani bir sayı yazdığınızda ekranda gayet iyi görünüyor.
- Veri Depolama
Metin verilerini Word, PDF ve daha fazlası gibi formatlarda kaydetmenize olanak tanır. Ayrıca HTML‘deki gibi web içeriklerindeki metni anlamak da kritik öneme sahiptir.
Özetlemek gerekirse, metin kodlama bilgi içeren her şeyin bir parçasıdır. Yani, bilgisayarınızda yazı yazdığınızda, bunu gerçekleştirenin bu set olduğunu bilin. Bir tuşa dokunduğunuzda, arka planda sessizce işini yapar ve size metni gösterir.
ASCII ve Unicode Karşılaştırması
Farklı işlerde kullanılan metin kodlama sistemlerinin bazı farklılıkları bulunmaktadır. Büyük bir fark, kaç karakteri idare edebilecekleridir. Örneğin, biri az veriyi işleyebilirken diğeri çok fazlasını alabilir.
Özellikle Unicode, birçok dili içeren görevler için mükemmeldir. Diğerinden yenidir ve özel karakterleri işleyebilir. Ancak hız söz konusu olduğunda eski seti Unicode’dan hızlıdır.
ASCII ve Unicode arasındaki farkların bir özetini aşağıdaki tabloda bulabilirsiniz:
Özellik | ASCII | Unicode |
---|---|---|
Bit Boyutu | 7 ve 8 bits | 16 bit |
Karakter Sayısı | 128 veya 256 | Bir milyondan fazla |
Uyumluluk | Geniş kullanım, çok sayıda uyumluluk | Tüm dünya dilleri, çoklu dil desteği |
Basitlik | Kullanımı kolay, basit kurulum | Daha karmaşıktır ve daha fazla öğrenme gerektirir |
Hız | Daha hızlı işleme ve gönderme | Bu ise daha yavaş |
Destekli Diller | Çoğunlukla İngilizce, sınırlı | Tüm dünya dilleri birçok dili destekler |
Emoji gibi Özel Karakterler | Hayır | Evet, emojileri ve sembolleri içerir |
Depolama Gereksinimi | Daha az depolama alanına ihtiyaç duyar | Daha fazla depolama alanına ihtiyacı var |
PowerShell ile Metin Girerek ASCII Değerleri Nasıl Bulunur?
PowerShell, Windows bilgisayarlarda komutlar ve komut dosyaları oluşturmanıza yardımcı olur. Böylece basit bir komutla yazdığınız metnin ASCII kodunu hızlı bir şekilde bulabilirsiniz. Bu nedenle metni sayılara dönüştürmenize yardımcı olacak küçük bir komut dosyası hazırladık.
Windows 11 veya daha eski bir sistemde metnin ASCII kodu değerini görmek için şu adımları izleyin:
- PowerShell’i açmak için Başlat menüsüne “PowerShell” yazın ve açın. Veya CMD komut istemine yazarak buna geçiş yapabilirsiniz.
- Bu bağlantıdan PowerShell komutunu kopyalayıp konsola yapıştırın. Bunu yaptığınızda sizden bir metin yazmanızı isteyen bir mesaj alacaksınız.
- Örneğin, Enter Text (Metin Gir) kısmına tümü küçük harflerle “hello” yazın ve Enter tuşuna basın.
- Artık konsolda Değerler altında merhaba kelimesinin karakter kodlarını göreceksiniz. Bu kod 104 101 108 108 111‘dir.
Sık Sorulan Sorular (SSS / FAQ)
- Basit kelimelerle ASCII nedir?
- ASCII formatı ne için kullanılır?
- ASCII bir kodlama mıdır?
- Tüm bilgisayarlar bu karakter kodlamasını kullanıyor mu?
Sonuç
Sonuç olarak, ASCII kodu 1960’lı yıllardan bu yana çok değişti. Temel ASCII’den Genişletilmiş ASCII ve Unicode’a ve hatta UTF-8 gibi daha yenilerine geçti. Programlama zorunludur çünkü cihazların birbirleriyle etkili bir şekilde konuşmasına yardımcı olur. Bu yüzden, yazılım ve sistemlerin iyi çalışmasını sağlamak çok önemlidir.
Yeni karakter kodu türleri ortaya çıksa da ASCII hala gereklidir. Birçok farklı alanda metni göstermenin birincil yolu olarak kullanılır. Teknoloji geliştikçe bunun nasıl değiştiğini görmek ilginç. Kısacası gelecekte bilgisayarların çalışma şeklini etkilemeye devam edecek.