SISTEM SANDI
A. Sandi Biner
Sebuah bit, menurut definisi adalah sebuah angka biner
(binary digit). Bila digunakan dalam hubungan dengan suatu sandi biner, sebuah
bit merupakan suatu besaran biner yang sama dengan 0 atau 1. Untuk mewakili
suatu kelompok yang terdiri dari 2n unsure yang berbeda dalam suatu
sansi biner akan memerlukan paling sedikit n bit itu. Hal itu adalah karena
dimungkinkan untuk menyusun n bit itu dalam 2n cara yang berlainan.
Meskipun banyaknya bit minimum yang diperlukan untuk menjadikan 2n
besaran yang berbeda itu adalah n, tidak ada batas maksimum banyaknya bit yang
dapat dipergunakan untuk suatu sandi biner. Jadi untuk m karakter yang diwakili
sebagai sandi biner, diperlukan sekurang-kurangnya n bit yang diperoleh menurut
hubungan berikut : 2n ³ m.
Berbagai macam sandi untuk bilangan decimal dapat diperoleh dengan mengatur 4
bit atau lebih dalam 10 kombinasi yang berlainan. Beberapa diantaranya
ditunjukkan seperti pada tabel berikut :
Bilangan
Decimal
|
BCD 8421
|
XS-3
|
8-4-2-1
|
2421
|
Bikuiner
5043210
|
Sandi gray
|
0
|
0000
|
0011
|
0000
|
0000
|
0100001
|
0000
|
1
|
0001
|
0100
|
0111
|
0001
|
0100010
|
0001
|
2
|
0010
|
0101
|
0110
|
0010
|
0100100
|
0011
|
3
|
0011
|
0110
|
0101
|
0011
|
0101000
|
0010
|
4
|
0100
|
0111
|
0100
|
0100
|
0110000
|
0110
|
5
|
0101
|
1000
|
1011
|
1011
|
1000001
|
0111
|
6
|
0110
|
1001
|
1010
|
1100
|
1000010
|
0101
|
7
|
0111
|
1010
|
1001
|
1101
|
1000100
|
0100
|
8
|
1000
|
1011
|
1000
|
1110
|
1001000
|
1100
|
9
|
1001
|
1100
|
1111
|
1111
|
1010000
|
1101
|
10
|
-
|
-
|
-
|
-
|
-
|
1111
|
11
|
-
|
-
|
-
|
-
|
-
|
1110
|
12
|
-
|
-
|
-
|
-
|
-
|
1010
|
13
|
-
|
-
|
-
|
-
|
-
|
1011
|
14
|
-
|
-
|
-
|
-
|
-
|
1001
|
15
|
-
|
-
|
-
|
-
|
-
|
1000
|
B. Sandi BCD
BCD (Binary Coded Decimal-desimal yang disandikan biner)
merupakan penetapan langsung dari setara binernya. Sandi tersebut juga dikenal
sebagai sandi BCD 8421 yang menunjukkan bobot untuk masing-masing kedudukan
bitnya. Oleh sebab itu, seringkali sandi BCD dikatakan sebagai sandi berbobot.
Kolom kedua pada tabel diatas menunjukkan tabel sandi BCD itu. Sebagai contoh,
bilangan decimal 1996 dapat disandikan menurut BCD sebagai : 1996 = 0001 1001
1001 0110. Perlu diperhatikan
bahwa pengubahan suatu bilangan decimal ke bilangan biner berbeda dengan
penyandian suatu bilangan decimal, meskipun dalam kedua hal tersebut hasilnya
sama-sama berupa suatu deretan bit. Untuk sandi BCD ini, sandi bilangan decimal
0 sampai 9 sama dengan bilangan biner setaranya. Namun untuk diatas 9, sandi
BCD berbeda dengan bilangan biner setaranya. Misalnya setar biner untuk 11
adalah 1011, tetapi sandi BCD untuk 11 adalah 0001 0001. Oleh karena itu, perlu diingat bahwa
suatu deretan bit (angka) 0 dan 1 dalam suatu system digital kadang-kadang
mewakili suatu bilangan biner dan pada saat yang lain merupakan informasi
diskrit yang ditentukan oleh suatu sandi biner tertentu. Keunggulan utama sandi
BCD adalah mudahnya mengubah dari dan ke bilangan decimal. Sedangkan
kerugiannya adalah sandi yang tidak akan berlaku untuk operasi metematika yang
hasilnya melebihi 9. Sandi BCD hanya menggunakan 10 dari 16 kombinasi yang
tersedia. 6 kelompok bit yang tidak terpakai adalah 1010, 1011, 1100, 1101,
1110, dan 1111. Sandi BCD merupakan sandi radiks campuran, dalam setiap
kelompok 4 bitnya merupakan sistem biner, tetapi merupakan decimal untuk
kelompok demi kelompoknya.
C. Sandi Excess-3 (XS-3)
Sandi XS-3 (yang berasal dari excess-3, artinya
kelebihan 3) merupakan sandi penting lainnya yang erat hubungannya dengan sandi
BCD. Sesuai dengan namanya, penetapannya diperoleh dari nilai binernya, sama
seperti pada sandi BCD dan menambahnya dengan 3. Kolom ketiga pada tabel diatas
menunjukkan sandi XS-3 tersebut. Sebagai contoh, untuk mengubah 23 menjadi
sandi XS-3 adalah sebagai berikut : 23 = 0101
0110 , dengan ditambah 3 untuk setiap angka decimal yang diketahui dan
hasilnya diubah menjadi bilangan biner setaranya akan menghasilkan sandi XS-3
yang diminta. Seperti halnya pada BCD, sandi XS-3 hanya menggunakan 10 dari 16
kombinasi yang tersedia. 6 kelompok bit yang tidak digunakan adalah 0000, 0001,
0010, 1101, 1110, dan 1111. Sandi XS-3 adalah sandi tidak berbobot karena tidak
seperti halnya pada sandi BCD yang kedudukan bitnya mempunyai bobot tertentu.
Sandi XS-3 merupakan sandi yang mengkomplemenkan dirinya sendiri. Hal itu
terjadi karena setiap komplemen-1 dari bilangan XS-3 adalah komplemen-9 dari
bilangan desimalnya. Misalnya, 0101 dalam sandi XS-3 mewakili angka decimal 2.
Komplemen-1 0101 adalah 1010 yang merupakan angka decimal 7 dan 7 adalah
komplemen-9 dari 2. Sandi XS-3 mempunyai keunggulan dibandingkan dengan sandi
BCD karena semua operasi penjumlahan untuk XS-3 berlangsung seperti penjumlahan
biner biasa dan juga karena XS-3 merupakan sandi yang mengkomplemenkan dirinya
sendiri. Pengurangan dengan komplemen-1 dan komplemen-2 dapat dilakukan untuk
sandi XS-3.
D. Sandi Gray
Sandi Gray merupakan suatu sandi 4 bit tanpa bobot dan
tidak sesuai untuk operasi aritmatika. Sandi Gray ini sangat berguna untuk
peralatan masukan/keluaran (input/output devices), pengubah analog ke digital
dan peralatan tambahan lainnya. Pada tabel diatas kolom paling kanan
menunjukkan perwakilan sandi gray untuk bilangan 0 sampai 15. Terlihat bahwa
setiap perubahan dari 1 bilangan decimal yang 1 dengan yang berikutnya hanya 1
bit dalam sandi gray itu yang berubah. Itulah sebabnya sandi gray digolongkan
ke kelompok sandi perubahan-minimum (minimum-change code).
1. Perubahan Biner ke Gray
Inilah cara untuk mengubah dari biner ke Gray :
Desimal
|
Sandi Gray
|
Biner
|
0
|
0000
|
0000
|
1
|
0001
|
0001
|
2
|
0011
|
0010
|
3
|
0010
|
0011
|
4
|
0110
|
0100
|
5
|
0111
|
0101
|
6
|
0101
|
0110
|
7
|
0100
|
0111
|
8
|
1100
|
1000
|
9
|
1101
|
1001
|
10
|
1111
|
1010
|
11
|
1110
|
1011
|
12
|
1010
|
1100
|
13
|
1011
|
1101
|
14
|
1001
|
1110
|
15
|
1000
|
1111
|
…
|
…
|
…
|
Angka Gray pertama sama dengan angka biner pertama.
Tambahkan masin-masing pasangan bit berdampingan untuk mendapatkan angka Gray
berikutnya.
Abaikan setiap bawaan 5.
Contoh merupakan cara terbaik untuk menjelaskan
perubahan dari biner ke Gray. Ambilah bikangan biner 1100. Inilah cara untuk
mencari bilangan sandi Gray yang bersangkutan :
Ø LANGKAH 1 Angka Gray pertama sama dengan angka biner pertama.
1 1 0 1 biner
1 Gray
Ø LANGKAH 2 Selanjutnya, tambahkan 2 bit pertama
pada bilangan biner, dengan mengabaikan setiap bawaan. Jumlahnya merupakan
angka Gray berikutnya.
1 1 0 0 biner
1 0 Gray
ket : 5 hal ini secara formal disebut penambahan mod-2,
atau penambahan OR-eksklusif. Keempat kaidah bagi penambahan jenis ini adalah :
0 + 0 = 0, 0 + 1 = 1, 1 + 0 =1, 1 + 1 = 0
Dengan perkataan lain, tambahkan 2 bit pertama pada bilangan biner
untuk mendapatkan 1 + 1 = 0 dengan bawaan 1. Tuliskan angka 0, namun abaikan
angka 1.
Ø LANGKAH 3 Tambahkan 2 angka biner
berikutnya untuk mendapatkan angka Gray berikutnya.
1 1 0 0 biner
1 0 1 Gray
Ø LANGKAH 4 Tambahkan 2 angka biner terakhir untuk mendapatkan angka Gray.
1 1 0 0 biner
1 0 1 0 Gray
Oleh karenanya, 1010 adalah ekivalen sandi-Gray bagi
bilangan biner 1100.
2. Perubahan Gray ke biner
Untuk mengubah dari sandi Gray ke biner, kita
menggunakan metoda yang serupa, tetapi tidak tepat sama. Sekali lagi, contoh
merupakan cara yang terbaik untuk metode ini. Marilah kita mengubah sandi Gray
101110101 kembali ke ekivalen binernya.
Ø LANGKAH 1 Ulangilah angka paling berbobot
1 0 1 1 1
0 1 0 1 Gray
1
biner
Ø LANGKAH 2 Tambahkan secara diagonal seperti terliha di bawah ini
untuk mendapatkan angka biner berikutnya.
1
0 1 1 1 0 1 0 1 Gray
1
1 biner
( 1 + 0 = 1)
Ø LANGKAH 3 Lanjutkan menambahkan secara
diagonal untuk mendapatkan angka-angka biner selanjutnya.
1 0 1 1 1 0 1 0 1 Gray
1 1 0 1 0 0 1 1 0 biner
Dengan metode ini,
Anda dapat ,engubah Gray ke biner dan sebaliknya bilamana dibutuhkan
E. Parity Bit
Parity Bit adalah digit “1” atau yang ditempatkan pada
kelompok bit dari suatu sandi yang berfungsi untuk mengetahui adanya kecacatan
(validasi) atau kesalahn dari kelompok bit yang berupa data input. Parity Bit
dapat dibagi menjadi 2, yaitu :
1.
Parity genap (Odd Parity),
dipakai untuk membuat agar jumlah dari digit 1 pada kelompok sandi menjadi
genap. Misalnya bila jumlah digit 1 semula sudah genap, maka paritynya adalah
0. Jika jumlah digit 1 semula ganjil, maka bit paritynya adalah 1 sehingga
jumlah digit 1 akan menjadi genap.
2.
Parity Ganjil (Even
Parity), dipakai untuk membuat agar
jumlah dari digit 1 pada kelompok bit menjadi ganjil. Misalnya bila jumlah
digit 1 semula sudah ganjil, maka paritynya adalah 0. Jika jumlah digit 1
semula genap, maka bit paritynya adalah 1 sehingga jumlah digit 1 akan menjadi
ganjil
Tabel Parity pada sandi BCD 8421
Decimal
|
Parity Genap
|
Parity Ganjil
|
0
|
00000
|
10000
|
1
|
10001
|
00001
|
2
|
10010
|
00010
|
3
|
00011
|
10011
|
4
|
10100
|
00100
|
5
|
00101
|
10101
|
6
|
00110
|
10110
|
7
|
10111
|
00111
|
8
|
11000
|
01000
|
9
|
01001
|
11001
|
No comments:
Post a Comment