Pengurangan Biner Menggunakan Two's Complement
Pengurangan biner dapat dilakukan dengan pinjaman bit demi bit klasik, tetapi pendekatan yang lebih sederhana adalah menggunakan aritmetika two’s complement. Dengan mengonversi subtrahend ke bentuk biner negatifnya lalu menambahkan, operasi berkurang menjadi satu penjumlahan biner.
Two’s complement memungkinkan kita mengkodekan angka negatif dengan lebar bit yang sama seperti positif dengan menggunakan bit "bobot negatif" leading. Saat kita menambahkan bilangan positif ke bilangan negatif, bit paling signifikan dari operand negatif berperilaku sebagai bobot negatif, secara efektif melakukan pengurangan.
Contoh 1: 710 − 510
Representasikan setiap nilai dalam two’s complement menggunakan tiga bit data ditambah satu bit bobot negatif:
positive seven = 0111₂ negative five = 1011₂
Sekarang tambahkan mereka:
. 1111 ← Carry bits . 0111 . + 1011 . ------ . 10010 . | . Discard the overflow bit . Result = 0010₂
Bit overflow dibuang karena posisi paling kiri mewakili bobot negatif (−8). Pola 4-bit akhir 0010₂ sama dengan nilai desimal 2, mengonfirmasi 7 − 5 = 2.
Contoh 2: 1810 + (−25)10
Pertama tentukan lebar bit yang diperlukan. Magnitudo terbesar dalam operasi adalah 25, yang memerlukan lima bit; tambahkan satu lagi untuk bit bobot negatif, menghasilkan enam bit total.
Representasikan +25 dan two’s complementnya:
+2510 = 011001₂ (enam bit) One’s complement of 11001₂ = 100110₂ Add 1 → Two’s complement = 100111₂ −2510 = 100111₂
Positif 18 ditulis sebagai:
1810 = 010010₂
Menambahkan kedua angka:
. 11 ← Carry bits . 100111 . + 010010 . ------ . 111001
Tidak terjadi overflow, jadi hasil 111001₂ tetap. Bit paling signifikan adalah 1, menunjukkan nilai negatif dalam two’s complement. Mengonversi kembali ke desimal:
(1 × −32) + (1 × 16) + (1 × 8) + (1 × 1) = −7
Jadi 18 + (−25) = −7, seperti yang diharapkan.
LEMBAR KERJA TERKAIT:
- Lembar Kerja Matematika Biner