İkili Çıkarıcı / Binary Subtractor

Bugünkü yazımızda İkili Çıkarıcı / Binary Subtractor konusunu işleyeceğiz. Eğer bu serimizi en baştan izlerseniz konuya çok daha rahat hakin olacaksınızdır.

Adından da anlaşılacağı gibi, ikili çıkarıcı, iki sayı arasında ortaya çıkan farkı bulmak için iki ikili sayıyı birbirinden, örneğin X – Y’den çıkaran bir karar verme devresidir.

Okuldaki Matematik derslerimizden, Eksi işareti “–” nin bir çıkarma hesaplaması için kullanıldığını ve bir sayı diğerinden çıkarıldığında, alt sınırın eksiltilen sayıdan büyük olması durumunda bir borç alınması gerektiğini öğrendik. Aşağıdaki iki onluk (taban 10) sayının basit çıkarılmasını düşünün.

İkili Çıkarıcı
Örnek Çıkarma İşlemi

Bir ikili sayının diğerinden çıkarılması, iki ondalık sayıyı çıkarmak için olduğu gibi tam olarak aynı fikirdir, Ancak birbirinden çıkarılması gereken büyük ikili sayılar bu nedenle “0’lar” ve “1’ler”açısından temsil edilmektedir

İkili Çıkarma

İkili çıkarma birçok şekilde olabilir ancak çıkarma kuralları hangi işlemi kullanırsanız kullanın aynıdır. İkili gösterimde yalnızca iki basamak bulunduğundan, “0” dan “0” veya “1” in çıkarılması sonucu 0-0 = 0 ve 1-0 = 1 olarak değişmeden bırakır. “1” den “1” in çıkarılması “0” ile sonuçlanır, ancak “0” dan “1” in çıkarılması bir borç gerektirir.

İki Bitin İkili Çıkarılması

İkili Çıkarıcı
İki Bitin İkili Çıkarılması

2-Giriş Ex-OR Kapı

İkili Çıkarıcı
2-Giriş Ex-OR Kapı

İkili Toplayıcıda olduğu gibi iki basamak arasındaki fark, bu iki giriş Ex-OR ifade tarafından verildiği gibi eşit olmadığında sadece bir “1” dir. Bununla birlikte, x = 0 ve Y = 1 girdilerinde borçlanma bitini üretmek için ek bir çıktıya ihtiyacımız var. Ne yazık ki, X ve Y girişlerinin bu özel kombinasyonu için bir çıkış üretecek standart bir mantık kapısı yoktur.

İkili Çıkarıcı

Yarım Çıkarıcı Devre

Yarım çıkarıcı, iki ikili basamakta bir çıkarma işlemi gerçekleştiren mantıksal bir devredir. Yarım çıkarıcı, bir sonraki aşama için bir miktar borç biti üretir.

İkili Çıkarıcı
Ödünç alma ile yarım çıkarıcı
İkili Çıkarıcı

Yarım çıkarıcının doğruluk tablosundan, farkın (D) çıktısının Exclusive-OR kapısının sonucu olduğunu ve Borrow-out (Bout) NOT-and kombinasyonunun sonucu olduğunu görebiliriz. Daha sonra yarım çıkarıcı için Boole ifadesi aşağıdaki gibidir.

İkili Çıkarıcı

Yarım çıkarıcının Boole ifadelerini yarım toplayıcı ile karşılaştırırsak, toplam (toplayıcı) ve fark (toplayıcı) için iki ifadenin tam olarak aynı olduğunu ve bu nedenle Ex-OR kapı işlevi nedeniyle olması gerektiğini görebiliriz.

İkili bir çıkarıcı olarak kullanıldığında yarım çıkarıcı devresinin en büyük dezavantajlarından biri, birden fazla veri bitini birbirinden çıkarırken önceki devreden “ödünç alma” için bir hüküm bulunmamasıdır. Daha sonra, önceki bir devreden gelen bu ödünç girişini hesaba katmak için “tam ikili çıkarıcı” devresi olarak adlandırılan şeyi üretmemiz gerekir.

Tam Bir İkili Çıkarıcı Devresi

Tam çıkarıcı ve önceki yarım çıkarıcı devresi arasındaki temel fark, tam bir çıkarıcının üç girişe sahip olmasıdır. İki tek bit veri girişi x (minuend) ve y (subtrahend) daha önce olduğu gibi aynıdır. Aşağıda gösterildiği gibi önceki bir aşamadan çıkarma işlemi tarafından oluşturulan borcu almak için ek bir borç girişi (B-in) bulunmaktadır.

Tam Çıkarıcı Blok Diyagramı

İkili Çıkarıcı
Tam Çıkarıcı Blok Diyagramı

Daha sonra “tam çıkarıcı” nın kombinasyon devresi, D ve B-out farkı için çıkışlar üreten üç ikili bit üzerinde çıkarma işlemini gerçekleştirir. Tıpkı ikili toplayıcı devresi gibi, tam çıkarıcı da birbirine bağlı iki yarım çıkarıcı olarak düşünülebilir, ilk yarım çıkarıcı borcunu aşağıdaki gibi ikinci yarım çıkarıcıya aktarmaktadır.

İkili Çıkarıcı
Tam Çıkarıcı Doğruluk Tablosu