Serdar YILMAZ
Bizimkisi Bir “Bug” Hikayesi...
Serdivan/Sakarya
Serdar Yılmaz Desimal Sayıları Binary Sayılara Çevirme

Desimal Sayıları Binary Sayılara Çevirme

Programlama başlangıç,programlama,programlama temel,temel seviye programlama

Onlu (Desimal, 10 Tabanlı, Decimal) Sayı Sistemi

Günlük hayatta kullandığımız sayı sistemi 10 tabanına göredir. Yani bu sistemde 0-1-2-3-4-5-6-7-8-9 sayıları mevcuttur. Kullanılan bu sayı sistemine de Onlu Sayı Sistemi veya Desimal Sistem denilmektedir.

İkili (Binary, 2 Tabanlı) Sayı Sistemi

İkili sayı sisteminde sadece 1 ve 0′ lar bulunur. Bu sayı sistemi 2 tabanında olduğu için İkili Sayı Sistemi veya Binary Sistem olarak isimlendirilmektedir.

Algoritması

Desimal Sayıları, Binary Sayılara çevirmek için öncelikle 10 tabanında yazılmış olan sayıyı bölünebildiği sürece 2’ye bölmemiz gerekmekte. Bölme işlemleri tamamlandıktan sonra, en son yapmış olduğumuz bölmenin bölümünü ve kalanını alıp, diğer tüm bölme işlemlerinin de sırasıyla kalanlarını alarak ikili sayı sistemine dönüşümü yapabiliriz.

decimal-to-binary

Yandaki örnekte 10 tabanındaki “33” sayısı ikili sayı sistemine dönüştürülmek için bölünebildiği sürece ikiye bölünmüştür. Son bölme işleminin bölümü ve kalanı, diğer bölme işlemlerininde sadece kalanları alınıp yan yana yazılarak, sayının 2 tabanında ki karşılığı bulunmuştur.

 

 

Yapılan bu işlemler C# ile kodlarken:

  • –> İkili sisteme çevrilecek sayının kullanıcı tarafından girilmesi sağlandı.
  • –> While döngüsü açılıp, girilen sayı 2’ye bölünebildiği sürece içerisinde ki kodların çalıştırılması sağlandı.
  • –> While Döngüsü çalıştığı sürece;
    • -> Sayının, ikiye bölümünden kalan “%” operatörü ile alınıp, kalanları tutan bir diziye aktarıldı.
    • -> Sayının ikiye bölümünden elde edilen bölüm, girilen sayının tutulduğu değişkene yeni değer olarak atandı.
  • –> Sayı ikiden küçük olduğunda, sonuncu bölme işleminin bölümü, kalanları tutan dizinin, sonuncu indeksine atanıp, döngüden çıkıldı.
  • –> Son olarak da kalanları tutan dizi tersten ekrana yazdırıldı.

Bir Yorum Yapın