İkili sayı sistemi nedir?

Ek bilgi, yukarıda yazdığım işlem sayının değerini veriyor sadece. Toplama, çarpma ve bölmede genellikle normal halini kullanırız ancak çıkartma durumlarında sayının başında ek bir işaretleme biti olur. Bu işaretleme biti 0 ise sayı pozitiftir, 1 ise sayı negatiftir. Makineye 0 ve 1 dışında değer veremediğiniz durumlarda böyle ayırt ettirebilirsiniz.
 
0 kapalı 1 açık.
Kısaca kullandığımız elektronik aletler on milyarlarca transistör sayesinde çalışır ve bunların anladığı dil 1 ve 0'dır.
Biraz fikriniz var ama bunlar soruya verilen tam doğru cevaplar değil. İkili sistemin kendi başına transistörlerle, açık-kapalıyla bir ilgisi yok. Transistörler ve bilgisayar mimarisinin ikili sistemle çok alakası var. İkili sistem modern bilgisayar ve transistörlerden çok önce de vardı. Tek başına matematiksel bir kavram sadece.

Hocam ayrı konu açmak istemiyorum, zahmet olmazsa onu da anlatabilirmisiniz? Bu arada hocam yaşım çok büyük olmadığı için mümkün olduğunca basit bir şekilde anlatırsanız güzel olur. 🙂
Zaten daha önce de açıklandığı gibi ikili sistemde "base" yani temel iki sayısıdır. Normalde kullandığımız onluk sistemdeyse 10 sayısı. 1035 diyerek onluk sistemde kastettiğimiz şey 1 x 10^3 + 0 x 10^2 + 3 x 10^1 + 5 x 10^0. Bunu bütün sayılarla yapabiliriz. İkiyle yapmanın örneği benden önce verilmiş zaten. Hexadecimal de bir sayı sistemi ama temeli 2 ya da 10 değil, 16. Mesela hexadecimal'de 1035 onluk sistemde 1 x 16^3 + 0 x 16^2 + 3 x 16^1 + 5 x 16^0, yani 4149 oluyor. Tabii bu durumda ondalık sistemdeki rakamlar bize yetmiyor çünkü 10, 11, 12 gibi 16'ya kadar olan sayıları da tek sembolle göstermemiz lazım. Bunun için hexadecimal sistemde 10 yerine A, 11 yerine B, 12 yerine C, 13 yerine D, 14 yerine E, 15 yerine de F kullanılıyor. Mesela hexadecimal sistemde 1A3B onluk sistemde 1 x 16^3 + 10 x 16^2 + 3 x 16^1 + 11 x 16^0 yani 6715 oluyor. Hexadecimal standart olarak basamaklarından önce 0x, ikili sistem de 0b olarak gösterilir. Örneğin 1A3B yazmak yerine daha açıklayıcı olması için 0x1A3B gibi. Ya da ikili sistem için başka bir örnek olarak 0b1001 gibi.

Ek bilgi, yukarıda yazdığım işlem sayının değerini veriyor sadece. Toplama, çarpma ve bölmede genellikle normal halini kullanırız ancak çıkartma durumlarında sayının başında ek bir işaretleme biti olur. Bu işaretleme biti 0 ise sayı pozitiftir, 1 ise sayı negatiftir. Makineye 0 ve 1 dışında değer veremediğiniz durumlarda böyle ayırt ettirebilirsiniz.
Burada biraz açıklanmış, işin içine negatif sayılar girince durum değişiyor. Bunun için farklı sistemler var, standartlaşmış olanı two's complement diye geçer. Ne olduğuna araştırıp bakabilirsiniz, sorunuz olursa sorarsınız. Two's complementte toplama, çıkarma vs. yapılabilir. Yukarıda berilen sign-magnitude format denilen yani sayının başına pozitif mi negatif mi olduğunu belirtmek için 0 ya da 1 konulan sistemde normalde çıkarma ve toplama yapılamaz. Örneğin 0101 (ondalıkta 5) ve 1001 (ondalıkta -1) sayılarını standart olarak toplamaya çalışırsanız 1110 sayısına ulaşırsınız ki bu da ondalıkta -6 olur. Ama 5 + (-1)'in -6 olmadığını biliyoruz, bu formatta yapılan işlemler doğru olmaz çoğunlukla. Ya da bu formatın farklı varyasyonlarında (örneğin IEEE floating point) farklı algoritmalarla ancak bu işlemler yapılır, standart yol işlemez.

Nasıl hesaplanıyor ben onu merak ediyorum. Mesela atıyorum 280 sayısını nasıl ikili sayı sisteminde yazabiliyoruz? Hesaplayarak.
Yukarıda attığım örneklerden giderek mesela onluk sistemdeki 280 sayısının ikili sistemdeki karşılığını bulalım. Bir kere en yakın 2^x formatındaki sayının 256 (2^8) olduğunu görebiliyoruz. O zaman en az 9 (çünkü 2^0 da var, dolayısıyla 8 + 1 = 0) basamaklı bir sayı elde edeceğiz. 280'i ikinin üssü şeklindeki toplamlara ayırırsak 256 + 16 + 8 oluyor. Burada 128, 64 ve 32'yi atladık çünkü 256'yla toplayınca 280'den büyük olacaklardı demek ki onların basamaklarının değeri 0. 4, 2 ve 0 için de aynı şey geçerli. Yani bu sayı 1 x 2^8 + 1 x 2^4 + 1 x 2^3 şeklinde de yazılabilir. Atladığımız ikinin üssü basamaklarına 0, gereken yerlere bir koyunca da elimize 100011000 geçiyor. Bu da ikili sistemde onluk sistemideki 280'in karşılığı.

Hocam ayrı konu açmak istemiyorum, zahmet olmazsa onu da anlatabilirmisiniz? Bu arada hocam yaşım çok büyük olmadığı için mümkün olduğunca basit bir şekilde anlatırsanız güzel olur. 🙂
Bunları internette kendiniz de araştırabilirsiniz aslında. Çok fazla kaynak var bu konuyla ilgili. Digital logic ve number systems şeklinde ararsanız bulabilirsiniz. Bunları merak etmeniz çok güzel bir şey. Yaşınızın da 12'den büyük olduğunu varsayarsak bunları öğrenmek için hiç de küçük değilsiniz bence, gayet anlayabileceğiniz şeyler. Kendinizi küçümsemeyin. Çok güzel bir yoldasınız.

@Vavien. neden konudaki videoya beğenmedim işareti bıraktığınızı sorabilir miyim? Videoyu izleyecek kadar zamanım (ve açıkçası bildiğim konuları tekrar dinlemeye sabrım) yok ama yanlış ya da sıkıntılı bir şeyi varsa onu açıklığa kavuşturmak isterim.
 
Bir ara izlemiştim. Arkadaş özellikle biyoloji alanında çok bilgili olsa da diğer alanlarda maalesef o kadar bilgili değil. Eksik/hatalı şeyler vardı. Yanlış hatırlamıyorsam bilen birinden yardım almıştı, buna rağmen öyle. Tek örneği de değil. Uzmanlığı dışında biraz fazla takılıyor.

Ve o kadar süreden daha kısa sürede taban aritmetigi öğrenilebilir. Zaten asıl olay da o. Aynı şeyi farklı yollarla 10 kere anlatıp durmanın anlamı yok.
 
İkili sayı sistemi nedir?
Bir sayının sadece iki rakam (0 ve 1) kullanılarak ve 2 tabanıyla temsil edildiği sayı sistemine ikili sayı sistemi denir. Örneğin, 10012 bir ikili sayıdır.

İkili sayıların kullanımı nedir?

İkili sayılar bilgisayar mimarisinde yaygın olarak kullanılır. Bilgisayar sadece iki basamaklı 0'lar ve 1'lerin dilini anladığından, programlama ikili sayı sistemi kullanılarak yapılır.

Kaynak:
İngilizce bir makaleden alındı.
 
Türkçe alt yazılı. Burada güzel şekilde Binary'yi anlatıyor.

Computerphile kanalı kaliteli bir kanaldır.

Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.
 
Son düzenleyen: Moderatör:

Yeni konular

Geri
Yukarı