Selasa, 29 Oktober 2013

Komplemen Satu (One's Complement) dan Komplemen Dua (Two's Complement)

Di dalam matematika, bilangan negatif biasanya dinyatakan dengan cara menambahkan tanda − di depan bilangan tersebut. Namun di dalam komputer, bilangan hanya dapat dinyatakan sebagai kode biner 0 dan 1 tanpa ada simbol yang lainnya, sehingga diperlukan suatu cara untuk mengkodekan tanda minus.
Beberapa metode yang dapat digunakan untuk menyatakan bilangan bertanda di sistem bilangan biner adalah: sign-and-magnitude, komplemen satu (ones' complement), dan komplemen dua (two's complement).
Komputer modern pada umumnya menggunakan metode komplemen dua, namun metode lain juga digunakan pada situasi tertentu.

Komplemen Satu (One’s Complement)

Komplemen satu merupakan suatu sistem penomoran yang diterapkan dalam beberapa jenis komputer untuk merepresentasikan nilai-nilai negatif. Pada cara ini terdapat aturan bahwa nilai 0 (nol) akan direpresentasikan dengan dua buah nilai, yaitu +0 (positif nol) dan -0 (negatif nol). Bentuk komplemen satu untuk bilangan biner negatif diperoleh dengan cara membalik seluruh bit dari bilangan biner positifnya. Bit yang bernilai 0 dibalik menjadi 1, dan bit yang bernilai 1 dibalik menjadi 0. Seperti pada metode sign-and-magnitude, di metode komplemen satu ini ada dua cara merepresentasikan bilangan nol, yaitu : 00000000 (+0) dan 11111111 ([-0|−0]).
Contoh, bentuk komplemen satu dari 00101011 (43) adalah 11010100 (−43). Jangkauan dari bilangan bertanda dengan komplemen satu adalah -(2N-1-1) sampai (2N-1-1) dan +/-0. Untuk sistem 8-bit (byte) jangkauannya adalah -12710 sampai +12710 dengan nol bisa berbentuk 00000000 (+0) atau 11111111 (-0).

8 bit ones' complement
Binary value
Ones' complement interpretation
Unsigned interpretation
00000000
+0
0
00000001
1
1
...
...
...
01111101
125
125
01111110
126
126
01111111
127
127
10000000
-127
128
10000001
-126
129
10000010
-125
130
...
...
...
11111110
-1
254
11111111
-0
255


Komplemen Dua (Two’s Complement)

Di dalam metode komplemen dua, bilangan negatif direpresentasikan dengan cara menambahkan satu pada bentuk komplemen satu dari suatu bilangan positif. Di dalam metode komplemen dua, hanya ada satu bilangan nol (00000000).
Misalnya, bentuk komplemen satu dari 00101011 (43) adalah 11010100 (−43). Bentuk komplemen duanya adalah: 11010100 + 1 = 11010101.
8 bit two's complement
Binary value
Two's complement interpretation
Unsigned interpretation
00000000
0
0
00000001
1
1
...
...
...
01111110
126
126
01111111
127
127
10000000
-128
128
10000001
-127
129
10000010
-126
130
...
...
...
11111110
-2
254
11111111
-1
255

Pengurangan Bilangan Biner Melalui Komplement dan Penjumlahan

Contoh pengurangan dengan komplemen 1 :

Komplemen 1 di sistem bilangan binari dilakukan dengan mengurangkan setiap bit dari nilai 1, atau dengan cara mengubah setiap bit 0 menjadi 1 dan bit 1 menjadi 0. Dengan komplemen 1, hasil digit paling kiri dipindahkan untuk ditambahkan pada bit paling kanan.

Contoh pengurangan dengan komplemen 2 :


Komplemen 2 adalah hasil dari komplemen 1 ditambah 1, misalnya komplemen 2 dari bilangan binari 10110 adalah 01010 (dari komplemen 1 yaitu 01001 ditambah 1). Dengan komplemen 2, hasil digit paling kiri dibuang (tidak digunakan).

Tidak ada komentar:

Posting Komentar