Kamis, 05 September 2013

PENGKODEAN BINER



5.1.       Kode BCD (Binary coded decimal)

Pada kegiatan belajar sebelumnya kita hanya melakukan  konversi  dari bilangan desimal ke bilangan biner murni (pengkodean biner langsung).  Untuk beberapa aplikasi sistem digital, misalnya  pada sistem mikroprosesor, setiap digit bilangan desimal perlu diubah menjadi bilangan ekivalen biner 4 bit. Oleh karena itu  suatu bilangan desimal 2 digit akan berubah menjadi dua kelompok empat digit bilangan biner, sehingga keseluruhannya menjadi 8 bit, yang tidak bergantung pada nilai bilangan desimalnya sendiri. Hasil pengkodean ini disebut sebagai binary-coded decimal (BCD). Penyandian ini sering dikenal sebagai sandi 8421BCD. Selain penyandian 8421BCD, juga dikenal sejumlah pengkodean yang lain yaitu, kode  Excess-3 , kode Gray dan kode-kode Alfanumerik.
Seperti yang terlihat pada tabel. 5.1., karena bilangan desimal hanya mempunyai 10 simbul  kode 0 sampai 9 maka kode BCD tidak menggunakan bilangan-bilangan 1010, 1011, 1100, 1101, 1110, dan 1111.
Tabel 5.1. Ekivalen  bilangan Desimal  menjadi kode BCD
Digit Desimal
Kode BCD
0
0000
1
0001
2
0010
3
0011
4
0100
5
0101
6
0110
7
0111
8
1000
9
1001
13
0001    0011
45
0100    0101
260
0010    0110    0000
Sebagai contoh, bilangan desimal 13710 akan diubah menjadi bilangan dengan pengkodean langsung (straight binary coding) dan diubah dengan pengkodean BCD. sebagai berikut:
13710     =  100010012                          Hasil pengkodean biner langsung
13710    =  0001  0011  01112             Hasil pengkodean BCD
Dari contoh, bilangan desimal 13710 bila dinyatakan dalam  pengkodean biner langsung hanya memerlukan 8 bit sedangkan dengan pengkodean BCD memerlukan 12 bit. Oleh sebab itu pengkodean dengan BCD dianggap kurang efisien karena, tidak menggunakan bilangan-bilangan 1010, 1011, 1100, 1101, 1110, dan 1111.

5.2.       KODE EXCESS-3

Pengkodean Excess-3 sering  digunakan untuk menggantikan kode BCD karena mempunyai keuntungan-keuntungan tertentu dalam operasi aritmatik. Pengkodean Excess-3 untuk bilangan desimal dapat dilakukan dengan cara menambah 3  setiap digit bilangan desimal sebelum diubah menjadi biner.
Tabel 5.2. menunjukan ekivalen  dari bilangan Desimal  menjadi kode Excess-3.
Tabel 5.2. Ekivalen  bilangan Desimal  menjadi kode Excess-3
Digit Desimal
Kode Excess-3
0
0011
1
0100
2
0101
3
0110
4
0111
5
1000
6
1001
7
1010
8
1011
9
1100
27
0101    1010
38
0110    1011
459
0111    1000    1100
Sebagai contoh, bilangan heksadesimal 4610 dapat dikodekan dengan Excess-3 dengan cara sebagai berikut:
4                6
3  +            3  +                  Setiap digit bilangan desimal ditambah 3
7               9
0111          1001                    Hasilnya diubah menjadi bilangan biner 4 bit.
Sehingga bilangan desimal 4610 dikodekan dalam Excess-3 = 0111  1001.

5.3.       KODE GRAY

Kode Gray digolongkan dalam  kode perubahan minimum, kode Gray hanya mengubah satu bit dalam grup kodenya apabila pindah dari satu step ke step berikutnya. Kode Gray merupakan kode tak berbobot, posisi-posisi bit dalam grup kode tidak mempunyai bobot tertentu oleh karena itu  kode Gray tidak sesuai untuk  operasi aritmatik. Kode Gray digunakan pada alat-alat input –output  dan konverter analog ke digital.
Tabel 5.3. menunjukan ekivalen  dari bilangan Desimal  ke biner dan kode Gray
Tabel 5.3. Ekivalen  bilangan Desimal  ke biner dan  kode Gray
Digit Desimal
Kode Biner
Kode Gray
0
0000
0000
1
0001
0001
2
0010
0011
3
0011
0010
4
0100
0110
5
0101
0111
6
0110
0101
7
0111
0100
8
1000
1100
9
1001
1101
10
1010
1111
11
1011
1110
12
1100
1010
13
1101
1011
14
1110
1001
15
1111
1000
Mengubah dari kode biner ke kode Gray dapat dilakukan dengan langkah-langkah sebagai berikut:
  1. Bit pertama dari kode Gray sama dengan bit pertama bilangan biner.
  2. Bit kedua kode Gray sama dengan Exclusive OR, bit pertama dan bit kedua bilangan biner.
  3. Bit ketiga  kode Gray sama dengan Exclusive OR, bit kedua dan bit ketiga bilangan biner, dan seterusnya.
Sebagai contoh, bilangan biner 101102 dapat dikodekan dengan kode Gray dengan cara sebagai berikut:
1   0   1   1  0                    Kode Biner
1   1   1   0  1                    Kode Gray

5.4.       KODE Alfanumerik.

Kode Alfanumerik digunakan untuk menyatakan data numerik,data alpabetik, simbol dan tanda baca pada sistem-sistem digital dan komputer. Tabel 5.4  menunjukkan sebagian dari dua macam kode alfanumerik kode internal 6 bit  yang dapat menyatakan 64 tanda yang berbeda 26=64 dan kode 7 bit ASCII yang dapat menyatakan 27=128 tanda yang berbeda.
Tabel 5.4. Sebagian Kode Alfanumerik Internal 6 bit dan ASCII 7 bit
Tanda
Kode Internal 6-Bit
Kode ASCII 7-Bit
A
010    001
100    0001
B
010    010
100    0010
C
010    011
100    0011
D
010    100
100    0100
E
010    101
100    0101
F
010    110
100    0110
G
010    111
100    0111
H
011    000
100    1000
I
011    001
100    1001
J
100    001
100    1010
K
100    010
100    1011
L
100    011
100    1100
Tabel 5.4. Sebagian Kode Alfanumerik Internal 6 bit dan ASCII 7 bit
(lanjutan)
Tanda
Kode Internal 6-Bit
Kode ASCII 7-Bit
M
100    100
100    1101
N
100    101
100    1110
O
100    110
100    1111
P
100    111
101    0000
Q
101    000
101    0001
R
101    001
101    0010
S
110    010
101    0011
T
110    011
101    0100
U
110    100
101    0101
V
110    101
101    0110
W
110    110
101    0111
X
110    111
101    1000
Y
111    000
101    1001
Z
111    001
101    1010
0
000    000
011    0000
1
000    001
011    0001
2
000    010
011    0010
3
000    011
011    0011
4
000    100
011    0100
5
000    101
011    0101
6
000    110
011    0110
7
000    111
011    0111
8
001    000
011    1000
9
001    001
011    1001
blank
110    000
010    0000
.
011    011
010    1110
(
111    100
010    1000
+
010    000
010    1011
$
101    011
010    0100
*
101    100
010    1010
)
011    100
010    1001
-
100    000
010    1101
/
110    001
010    1111
,
111    011
010    1100
=
001    011
011    1101