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:
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
7 9
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:
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
|