Konversi bilangan ASCII dan Perumusan
ASCII singkatan dari American Standard Code for Information Interchange (Kode Standar Amerika untuk Pertukaran Informasi). Merupakan kode standar yang digunakan dalam pertukaran informasi pada Komputer Komputer hanya dapat memahami nomor, maka kode ASCII adalah representasi numerik dari karakter seperti 'a' atau '@' atau tindakan dari beberapa macam.
Jumlah kode ASCII adalah 255 kode. Kode ASCII 0 – 127 merupakan kode ASCII untuk manipulasi teks; sedangkan kode ASCII 128..255 merupakan kode ASCII untuk manipulasi grafik. Sedangkan yang akan kita bahas kali ini mengenai kode ASCII 0 – 127 untuk manipulasi teks. Setiap simbol yang ada di keyboard memiliki kode ASCII. Sebagai contoh Huruf A memiliki kode ASCII 65; huruf a memiliki kode ASCII 97. Kode ASCII 65 dalam implementasinya diterjemahkan ke kode Biner (penjelasan terdapat dalam tabel dibawah). Kode ASCII dalam implementasinya diterjemahkan ke kode biner. Kode ASCII sebenarnya memiliki komposisi bilangan biner sebanyak 8 bit. Dimulai dari 0000 0000 hingga 1111 1111.
Kode ASCII sendiri dapat dikelompokkan lagi kedalam beberapa bagian:
· Kode yang tidak terlihat simbolnya seperti Kode 10(Line Feed), 13(Carriage Return), 8(Tab), 32(Space)
· Kode yang terlihat simbolnya seperti abjad (A..Z), numerik (0..9), karakter khusus (~!@#$%^&*()_+?:”{})
· Kode yang tidak ada di keyboard namun dapat ditampilkan. Kode ini umumnya untuk kode-kode grafik
Kode bernilai sampai dengan 31 dinamakan kode control, sedangkan 32 sampai dengan 126 adalah kode ASCI yang dapat ditampilkan. Alfabet A sampai Z diwakili oleh kode desimal 65 sampai 90. Untuk kode ASCII yang lain mari kita lihat tabel dibawah ini :
Untuk tabel manipilasi grafiknya ada dibawah ini:
Setiap kode ASCII itulah yang kemudian akan dikonfersi kebilangan biner sehingga terbentuk bit-bit yang terdiri dari bit ‘0’ dan bit ‘1’. Bit inilah yang akan dikirimkan dan pada penerima akan dikodekan kembali. Kemudian bit-bit tadi yang dikirimkan dan akan dikodekan kembali kedalam teks aslinya. Proses inilah yang dinamakan decoding. Misalnya kita ingin mengirimkan pesan “lidya”. Maka setiap huruf yaitu l,i,d,y,a akan dikodekan menjadi biner.
Kode ASCII untuk setiap huruf :
- l = 108 = 0110 1100 (yang dikirim pertama)
- i = 105 = 0110 1001
- d = 100 = 0110 0100
- y = 121 = 0111 1001
- a = 97 = 0110 0001 (yang dikirim terakhir)
Kemudian bit-bit tadi yang dikirimkan dan akan dikodekan kembali kedalam teks aslinya. Asumsikan pengiriman tanpa gangguan. Maka, pada penerima akan diterima kode-kode bit
01101101 01101001 01110010 01101001 01101011
Kemudian kode-kode bit itu akan diterjemahkan dengan memisah menjadi 8 bit.
0110 0001 = 97 = a (yang diterima terakhir)
0111 1001 = 121 = y
0110 0100 = 100 = d
0110 1001 = 105 = i
0110 1100 = 108 = l (yang diterima pertama)
Maka diterjemahkan bahwa pesannya adalah kata “lidya”
Perumusan Sistem Bilangan
1. BINER (basis 2) dengan simbol bilangan 0 dan 1.
2. OKTAL (basis 8) dengan simbol bilangan 0, 1, 2, 3, 4, 5, 6, 7.
3. DESIMAL (basis 10) dengan simbol bilangan 0, 1, 2, 3, 4, 5, 6, 7, 8, 9
4. HEKSADESIMAL (basis 16) dengan simbol bilangan 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F
KONVERSI SISTEM BILANGAN
1. Basis X ke DESIMAL
· Untuk bilangan bulat, kalikan bilangan tersebut dengan pangkat basis X sesuai dengan nilai tempat/bobot
- Contoh : 1458 = ……..10
1458 = 1x82 + 4x81 + 5x80 = 64 + 32 + 5 = 10110
· Untuk bilangan pecahan, kalikan bilangan tersebut dengan pangkat negatif basis X sesuai dengan nilai tempat/bobot
- Contoh : 0, 128 = ……..10
0,12 = 1 x 1/81 + 2 x 1/82 = 1/8 + 2/64
=1/8 + 1/32 =4/32 + 1/32 = 5/32
2. DESIMAL ke Basis X
· Untuk bilangan bulat, bilangan tersebut dibagi dengan basis X
· Untuk bilangan pecahan, kalikan bilangan tersebut dengan basisnya
3. BASIS X ke BASIS Y
· Bilangan tersebut diubah ke desimal (lihat no. 1) kemudian ubah desimal tersebut ke basis Y (lihat no. 2).
4. BINER ke OKTAL dan sebaliknya
· 3 bit biner (dimulai dari titik radiks) = 1 digit oktal
5. BINER ke HEKSADESIMAL dan sebaliknya
· 4 bit biner (dimulai dari titik radiks) = 1 digit heksadesimal
6. KODE BINER
Kode Biner yg berbobot ®BCD (Binary coded Decimal)
Contoh : kode BCD 8421 artinya MSB = Most Significant Bit mempunyai bobot 8, sedang LSB = Least Significant Bit mempunyai bobot 1.
* Konversi BCD ke sistem bilangan basis yang lain :
- BCD ke basis X ® ubah BCD ke Desimal kemudian ubah Desimal ke basis X.
Contoh : 000101011 . 00100101BCD = …… 2
0 0010 1001 . 0010 0101 = 29,2510 =11101, 012 0 2 9 , 2 5
2. Kode Biner yang tidak berbobot
- Kode Excess-3 ® kode yang tiga angka lebih besar dari BCD 8421.
Contoh : 6210 = …….xs3
Caranya : Tambah desimal 3 di setiap digit desimalnya kemudian ubah des. tersebut ke BCD, sehingga hasilnya menjadi 6 2 3 3 + 9 5 ® 1001 0101(xs3)
- Kode Gray ® kenaikan hitungan (penambahan) dilakukan hanya dengan pengubahan keadaan satu bit saja.
Contoh : 210 = …..kode gray
Caranya : ubah des. ke biner dahulu ® 0010
0 0 1
BINER ® 0 0 1 0 +
KELABU® 0 0 1 1
Kode Gray sering digunakan dalam situasi dimana kode biner yang lainnya mungkin menghasilkan kesalahan atau kebingungan selama dalam transisi dari satu word kode ke word kode yang lainnya, dimana lebih dari satu bit dari kode diubah.
· KODE ASCII termasuk kode Alfanumerik .
Contoh : cari kode heksadesimal dan desimal untuk huruf b dalam kode ASCII.
- Cari b dalam tabel 2.9 Kode ASCII (Pengantar Organisasi Komputer, GUNADARMA, halaman 68) nilai barisnya adalah (6)16 = (0110)2 dan nilai kolomnya adalah (2)16 = (0010)2. Jadi kode ASCII untuk b adalah (62)16 atau (01100010)2.
· REPRESENTASI FLOATING-POINT
- Menyatakan suatu bilangan yang sangat besar/sangat kecil dengan menggeser titik desimal secara dinamis ke tempat yang sesuai dan menggunakan eksponen 10 untuk menjaga titik desimal itu.
- Sehingga range bilangan yang sangat besar dan sangat kecil untuk direpresentasikan hanya dengan beberapa digit saja.
- Dinyatakan dengan notasi ® a = (m,e) , dimana :
a= m x re r = radiks
m = mantissa
e = eksponen
Contoh : Tunjukkan bilangan-bilangan berikut ini dalam notasi floating point.
a. (45.382)10® 0.45382 x 102 = (0.45382,2)
b. (-21,35)8 ® -2135,0 x 8-2 = (-2135.0,-2)
ARITMATIKA FLOATING POINT
- Penambahan 0,63524 x 103
0,63215 x 103 +
1,26739 x 103 ® 0,126739 x 104
- Pengurangan 0,63524 x 103
0,63215 x 103 -
0,00309 x 103® 0,309 x 101
- 0,10100 x 22 ® 0,01010 x 23
0,11000 x 23 ® 0,11000 x 23 +
1,00010 x 23 ® 0,10001 x 24
- Perkalian
(0,253 x 102) x (0,124 x 103) = (0,253) x (0,124) x 102+3 = 0,031 x 105 ® 0,31 x 104 normalize
- Pembagian 0,253 x 102 = 0,253 x 102-3
0,124 x 103 0,124
= 2,040 x 10-1 ® 0,204 x 100 overflow
· REPRESENTASI FIXED POINT
Radiks point/binary point tetap dan diasumsikan akan berada di sebelah kanan dari digit yang paling kanan.
1. Representasi Sign-Magnitude/Nilai tanda
Untuk merepresentasikan bilangan integer negatif dan positif. Dengan menggunakan MSB sebagai bit tanda ®0 = positif, 1 = negatif
Contoh :
Sign-Magnitude +9 dalam 8 bit = 00001001
Sign-Magnitude –4 dalam 4 bit = 1100
Magnitude dari bilangan positif dan negatif sama hanya beda pada sign digitnya/MSB.
2. Representasi Komplemen-1
Untuk mendapat komplemen-1 maka bilangan nol diubah menjadi satu dan satu menjadi nol.
3. Representasi Komplemen-2
Langkah-langkah : Pengubahan bilangan desimal bertanda ke bilangan komplemen-2 (8-bit)
· Tentukan bit tanda/MSB ® 0 = positif, 1 = neg.
· Ubah desimal ke biner (7-bit)
· Ubah ke kompl-1 (setiap 0 diubah ke 1 dan setiap
1 diubah ke 0)
· Ubah ke kompl-2 (tambahkan +1 ke kompl-1
untuk mendapat bil. kompl-2)
· Gabung menjadi satu yaitu MSB sebagai tanda
bit dan 7-bit sebagai besarannya.
Langkah-langkah : Pengubahan bil. kompl-2 (8-bit) ke bil. des. bertanda
· Tentukan bit tanda/MSB
· Ubah 7-bit kompl-2 tersebut ke kompl-1
· Ditambah +1 ke kompl-1
· Ubah biner ke desimal
ARITMATIKA FIXED POINT
Penambahan positif, negatif, dan secara kebalikan bil-bil. biner yang diberi tanda yang direpresentasikan dalam komplemen-2.
001110 (+14) 110010 (-14)
+ 001100 (+12) end carry + 110100 (-12)
011010 (+26) 1 100110 (-26)
Assalamu'alaikum. saya melakukan operas matematika misal 2 x 5 semestinya hasilnya kan 10, tp yg malah muncul simbol ":" yg mgkin mewakili angka 10.. Untk nampilin 10 gmna cranya, Bang?
BalasHapusSalam