Gambar 3.3 : Pengubah bit-bit sandi Gray ke dalam sandi Biner.
Contoh berikutnya mengubah sandi Gray 1101 ke dalam biner yang hasilnya adalah 1001.
1 1
1 sandi Gray
1 1
sand I biner
4. Sandi ASCII
Jika diperhatikan tombol kunci keyboard pada komputer, sedikitnya terdapat 87 tombol kunci baik yang berupa huruf besar dan kecil, angka, tanda
khusus, maupun tombol dengan fungsi khusus. Komputer harus mampu menangani informasi numerik maupun non numerik, sehingga komputer harus
mampu menganalisis berbagai sandi yang mencakup angka, huruf, tanda, dan fungsi tertentu. Sandi-sandi ini dikelompokkan sebagai sandi alpanumerik
alphabed and numeric. Sejumlah tombol yang lengkap dan memadai yang diperlukan itu meliputi 26 tombol untuk huruf kecil, 26 tombol untuk huruf besar,
10 tombol untuk digit angka, dan sedikitnya 25 tombol untuk tanda maupun fungsi khusus seperti +, , , , , , Esc, Insert, Page Up, dan seterusnya.
Untuk menampilkan 87 karakter yang berbeda tersebut dengan sandi biner setidaknya diperlukan 7 bit. Dengan 7 bit tersebut akan diperoleh 2
7
= 128 sandi biner yang berbeda.
Sandi Biner, Kecuali bit pertama
Sandi Gray
Bit ke n-1 Sandi biner
Bit ke n Sandi Gray
Bit ke n
Sandi alpanumerik yang paling terkenal adalah sandi ASCII American Standard Code for Information Interchange yang digunakan oleh hampir
seluruh komputer. Pada Tabel 3.2 berikut ini dikemukakan sandi ASCII.
Tabel 3.2 : Sandi ASCII 7 bit
LSB MSB
000 001
010 011
100 101
110 111
0000
NUL DLE
SP P
p
0001
SOH DC
1
1 A
Q A
q
0010 STX
DC
2
“ 2
B R
B r
0011 ETX
DC
3
3 C
S C
s
0100 EOT
DC
4
4 D
T D
t
0101
ENQ NAK
5 E
U E
u
0110
ACK SYN
6 F
V F
v
0111 BEL
ETB „
7 G
W G
w
1000 BS
CAN 8
H X
H x
1001 HT
EM 9
I Y
I y
1010
LF SUB
: J
Z J
z
1011
VT ESC
+ ;
K [
K {
1100 FF
FS ,
L \
L
1101 CR
GS -
= M
] M
}
1110
SO RS
. N
N
1111 SI
US ?
O
O DEL
Sandi ASCII selengkapnya dapat dilihat pada daftar di luar buku ini. Sebagai contoh, seorang operator komputer memasukkan suatu pernyataan dari papan
kunci berupa tulisan STOP yang maksudnya memerintah komputer untuk menghentikan suatu program, maka sandi biner yang dikenali komputer adalah
sebagai berikut :
101 0011 101 0100 100 1111 101 0000 S
T O
P
5. Bit Paritas
Pemindahan data dari satu tempat ke tempat lain pada umumnya dalam bentuk biner. Misalnya pemindahan data dari komputer ke disket, pemindahan
informasi melalui jalur telepon, pengambilan data dari memori komputer untuk ditempatkan pada unit aritmatik, dan sebagainya. Proses pemindahan data
tersebut dapat mengalami kesalahan sekalipun pirantinya telah dirancang sedemikian canggih. Meskipun terjadinya kesalahan itu relatif kecil, tetapi dapat
menghasilkan sesuatu yang tidak berguna dan bahkan sangat fatal. Sehingga diperlukan mekanisme pemeriksaan data untuk memperkecil kemungkinan
terjadinya kesalahan data. Salah satu cara yang sangat terkenal untuk mendeteksi kesalahan adalah adalah metode paritas. Di dalam sekelompok
data ditambahkan bit yang disebut bit paritas. Jadi bit paritas merupakan bit tambahan yang disertakan ke dalam sekelompok sandi yang sedang
dipindahkan dari satu tempat ke tempat lain. Bit paritas dapat berupa 0 atau 1 tergantung pada benyaknya angka 1 yang dimuat di dalam kelompok sandi itu,
sehingga dikenal paritas genap dan paritas ganjil. Pada metode paritas genap, nilai bit paritas dipilih sedemikian hingga
banyaknya angka 1 dalam suatu kelompok sandi termasuk bit paritas berjumlah genap. Sebagai contoh suatu kelompok sandi 100 0011 yang
merupakan huruf C pada sandi ASCII. Kelompok sandi itu memiliki 1 sebanyak 3 buah ganjil, tidak termasuk bit paritas. Selanjutnya akan ditambahkan bit
paritas 1 untuk membuat banyaknya angka 1 berjumlah genap 4 termasuk bit pritasnya. Kelompok sandi yang baru, termasuk bit paritas, kemudian menjadi
1 100 0011
Jika suatu kelompok sandi berisi 1 dalam jumlah genap, maka bit paritas yang ditambahkan bernilai 0. Sebagai contoh, suatu kelompok sadi 100 0001 sandi
Bit paritas yang ditambahkan
ASCII untuk huruf A akan ditandai dengan bit paritas 0, sehingga diperoleh sandi yang baru termasuk bit paritas yaitu 0 100 0001.
Metode paritas ganjil digunakan dengan cara yang persis sama kecuali bahwa bit paritas dipilih sedemikian jumlah angka 1 termasuk bit paritas
adalah ganjil. Sebagai contoh, untuk kelompok sandi 100 0001 diberi bit paritas 1 sehingga diperoleh sandi baru sebagai 1 100 0001. Untuk kelompok sandi
100 0011 dikenai bit paritas 0 dan diperoleh sandi baru yakni 0 100 0011. Terlepas dari paritas genap atau ganjil yang digunakan, bit paritas
menjadi bagian yang nyata dari suatu sandi. Penambahan bit paritas kepada sandi ASCII 7 bit menghasilkan sandi 8 bit. Sehingga bit paritas diperlakukan
seperti bit-bit lain di dalam sandi tersebut. Bit paritas digunakan untuk mendeteksi kesalahan bit tunggal yang terjadi selama pemindahan data dari
satu tempat ke tempat lain. Sebagai ilustrasi akan dipindahkan huruf A dan digunakan paritas ganjil. Kode yang dipindahkan berupa :
1 100 0001 Ketika rangkaian penerima menerima sandi ini, ia akan memeriksa untuk
mengetahui bahwa sadi itu berisi 1 dalam jumlah ganjil termasuk bit paritas. Sehingga penerima akan menganggap bahwa sandi itu diterima benar.
Selanjutnya dianggap bahwa karena suatu gangguan atau kegagalan, maka penerima sebenarnya menerima sandi sebagai :
1 100 0000 Penerima akan mendapatkan bahwa sandi tersebut berisi 1 dalam jumlah
genap. Hal ini memberitahu penerima bahwa pasti terjadi kesalahan sandi, karena sebelumnya antara pengirim dan penerima sandi telah setuju untuk
menggunakan paritas ganjil. Tidak ada cara bahwa penerima dapat memberitahukan bit mana yang mengalami kesalahan, karena ia tidak tahu
sandi apa yang dimaksudkan. Selanjutnya menjadi jelas bahwa metode paritas ini tidak akan bekerja
jika terjadi 2 bit yang salah, sebab dua keslahan tidak akan mengubah genap- ganjilnya jumlah 1 dalam sandi itu. Metode paritas hanya digunakan dalam
keadaan di mana kemungkinan kesalahan satu bit sangat kecil dan kemungkinan kesalahan dua bit boleh dikatakan tidak ada.