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:
- Bit pertama dari kode Gray sama dengan bit pertama bilangan biner.
- Bit kedua kode Gray sama dengan Exclusive OR, bit pertama dan bit kedua bilangan biner.
- 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
|