Operasi Aritmatika Dalam BCD

A.  Penjumlahan Bilangan dalam BCD

BCD  merupakan  penetapan  langsung  dari  setara  binernya.  Kode  tersebut  juga
dikenal  sebagaikode  BCD  8421  yang  menunjukkan  bobot  untuk  masing-masing
kedudukan bitnya.
Sebagai contoh, bilangan desimal 1996 dapat dikodekan menurut BCD sebagai:
1996 = 0001    1001     1001      0110
1          9            9           6
Perlu  diperhatikan  bahwa  pengubahan  suatu  bilangan  desimal  ke  bilangan  biner
berbeda  dengan  pengkodean  suatu  bilangan  desimal  meskipun  hasilnya  sama-sama
berupa suatu deretan bit. Untuk kode BCD ini, kode bilangan desimal 0 sampai dengan 9
sama dengan bilangan biner setaranya.

Namun  untuk  bilangan  di  atas  9,  kode  BCD  berbeda  dengan  bilangan  biner
setaranya. Misalnya biner untuk angka 11 adalah 1011, Letapi kode BCD untuk 11 adalah
0001 0001. Oleh karena itu, perlu diingat bahwa suatu deretan bit (angka) 0 dan 1 dalam
suatu sistem digital kadang-kadang mewakili suatu bilangan biner dan pada saat yang lain
merupakan  informasi  diskrit  yang  ditentukan  oleh  suatu  kode  biner  tertentu.  Keunggulan
utama kode BCD adalah mudahnya mengubah ke bilangan desimal. Kerugiannya adalah
sandi tidak akan berlaku untuk operasi matematika yang hasilnya melebihi 9.

Kode  BCD  hanya  menggunakan  10  dari  16  kombinasi  yang  tersedia.  Enam
kelompok  bit  yangtidak  terpakai  adalah  1010,  1011,  1100,  1101,  1110,  dan  1111.  Kode
BCD  merupakan  kode  radiks  campuran,  dalam  setiap  kelompok  4  bitnya  merupakan
sistem biner, tetapi merupakan decimal untuk kelompok demi kelompoknya.

Bentuk  biner  jika  dinyatakan  dalam  bilangan  desimal  memerlukan  4  bit  data.
Kombinasi  4  bitdata  jika  dimanfaatkan  seluruhnya  akan  didapatkan  kemungkinan  16
informasi  yang  berbeda.  Dan  16  informasi  ini  untuk  kode  BCD  hanya  digunakan  10
informasi,  sedangkan  6  informasi  yang  lain  tidak  diperlukan.  Tabel  3.13  memperlihatkan
bilangan biner, desimal dan heksadesimal dibandingkan terhadap bentuk kode BCD.
Tabel 3.13 Kode BCD



Keterangan:
1) Echte Tetraden (8421 Kode)
2) Pseudotetrades
*) Dinyatakan pada tempat kedua (dikoreksi sebagai puluhan dan satuan)

Jika  kita  bandingkan  bentuk  bilangan  di  atas  dengan  bentuk  BCD,  tampak  bahwa
setiap tempat dari bilangan desimal memerlukan 4 grup (tetrade) dan  bilangan biner dan
tetrade  ini  tidak  lagi  dinyatakan  dalam  bilangan  heksadesimal  tetapi  dalam  bilangan
desimal.  Kombinasi  yang  termasukdalam  BCD  Kode  dinyatakan  sebagai  Echte  Tetraden
sedangkan  informasi  yang  tidak  termasuk  dalam  BCD  Kode  dinyatakan  sebagai
Pseudotetrades.  Keheradaan  Pseudotetrades  dalam  operasi  aritmetika  mempunyai  arti
yang sangat penting, yaitu bahwa hasil operasi aritmetika tidak diizinkan berada di daerah

Pseudotetrades.  Jika  hasil  operasi  aritmetika  dalam  BCD  Kode  berada  pada  daerah
Pseudotetrades maka hasil operasi tersebut harus dikoreksi.

Penjumlahan  bilangan  dalam  kode  BCD  dikerjakan  seperti  halnya  penjumlahan
bilangan  biner.  jika  hasil  penjumlahan  berada  pada  daerah  Pseudotetrade,  maka  harus
dilakukan koreksi dengan cara menambahkan hasil dengan 610 = 01102.

Contoh :
Bilangan A = 0011 dan B = 0110 dalam bentuk BCD akan ditambahkan,
Bilangan A     = 00112
BilanganB     = 01102
        ---------- +
Hasil Sementara  = 10012
Koresksi     = tidak diperlukan karena hasilnya berada di Pseudotetrades
Hasil      = 10012  (bentuk BCD)

Contoh :
Bilangan A = 0111 dan B = 1000 dalam bentuk BCD akan ditambahkan,
Bilangan A     =  01112
Bilangan B     =  10002
         ---------- +
Hasil Sementara  =  11112
Koreksi     =  01102  diperlukan karena berada di Pseudotetrades
Hasil      =101012
Jadi: penjumlahan di atas menghasilkan 0001 ( puluhan) 0101 (satuan) (bentuk BCD)

Koreksi  pada  contoh  2  menghasilkan  simpanan  untuk  tempat  yang  lebih  tinggi
(puluhan),sehingga hasil penjumlahan setelah dikoreksi menghasilkan bilangan desimal 2
tempat yaitu 1(satu) puluhan dan 5 (lima) satuan yang dalam bilangan desimal disebut 15
(lima  belas)  sebagaihasil  penjumlahan  antara  710  (tujuh)  dengan  810  (delapan).  Untuk
penjumlahan  bilangan  yang  lebih  besar  dapat  dilakukan  seperti  pada  contoh  di  atas.
Hanya saja harus diperhatikan cara-cara mengoreksi setiap hasil sementaranya.
Contoh
Bilangan A dan B dalam bentuk BCD akan ditambahkan,
Bilangan A     =    01112    00112    10002
Bilangan B    =    01012    01002    10012
Simpanan     =    111    1111
Hasil Sementara  =    11002    10002           1 00012
Koreksi    =    01102    00002    01102
Simpanan    =    1
Hasil      =  12  00102    10002    01112
          110     210       810       710

Dari  contoh  di  atas,  koreksi  tidak  hanya  terjadi  pada  hasil  yang  berada  di  daerah
Pseudotetrades  saja.  Akan  tetapi  juga  terjadi  pada  tetrade  yang  menghasilkan  simpanan
walaupun tetrade tersebut tidak berada pada daerah Pseudotetrades.

B.  Pengurangan Bilangan dalam BCD
Pengurangan  bilangan  dalam  kode  BCD  dikerjakan  seperti  pengurangan  pada
bilangan  biner,yaitu  dilakukan  melalui  langkah  terbalik  penjumlahan  komplemen.
Komplemen  satu  dan  komplemendua  pada  pengurangan  bilangan  dalam  kode  BCD  ini
dinyatakan  dalam  komplemen  sembilan  dankompleman  sepuluh.  Komplemen  sembilan
dibentuk  melalui  perbedaan  nilai  terhadap  nilai  tertinggidan  bilangan  desimal  yaitu  910.
Sedangkan  komplemen  sepuluh  dibentuk  melalui  increment  dankomplemen  sembilan
sehingga dapat dituliskan,

Komplemen sepuluh    =  Komplemen Sembilan + 1
K (10 )         =  K ( 9 ) + 1


Contoh 
Komplemen sembilan dan bilangan A = 0110 dalam bentuk BCD adalah,
Bilangan BCD tertinggi   = 10012
Bilangan A       = 01102
           ---------  -
K(9)dariA       = 00112

Contoh
Komplemen sepuluh dan Bilangan B = 0111 dalam bentuk BCD adalah,
Bilangan BCD tertinggi   =  10012
Bilangan B       =  01102
K(9) dari B       =  00102
K(10)dariB       = 00112

Bentuk komplemen untuk bilangan yang besar (mempunyai beberapa tempat) dalam
kode BCD dapat dilihat pada contoh di bawah ini.
Contoh
Dari  bilangan  A  =  0111  0100  100  =  74810  dalam  bentuk  BCD  akan  dibentuk  komplemen
Sembilan dan komplemen sepuluh,
Bilangan BCD tertinggi   =  10012  10012    10012
Bilangan A       =  01102  01002    10002
K(9) dari A       =  00102  01012    00012
K(10)dariA       =  00112  01012    00102

Contoh  di  atas  menunjukkan  bahwa  pembentukan  K(10)  dilakukan  dengan  cara
pembentukanK(9) pada setiap tempat terlebih dahulu dan terakhir baru di-increment untuk
mendapatkan K(10).
Proses  pengurangan  dapat  dilakukan  melalui  penambahan  dengan  komplemen
sepuluh  yangkemudian  hasilnya  masih  perlu  dikoreksi.  Jika  setelah  dikoreksi  masih
terdapat simpanan, makasimpanan tersebut tidak menunjukkan nilai bilangan tetapi hanya
menunjukkan  tanda  bilangan.  Simpanan  1  menunjukkan  tanda  +  (plus)  sedangkan
simpanan 0 (tanpa simpanan) menunjukkan tanda - (minus). Jika terdapat tanda - (minus),
maka hasilnya masih harus dilakukan komplemen sepuluh sekali lagi.

Komentar