Soal Arsitektur dan Organisasi Komputer
Soal Arsitektur dan Organisasi Komputer
by rahmadya
Berapakah konversi bilangan 75.5 desimal menjadi floating point single precision?
Jawab:
Untuk menjawab soal di atas kita buat menjadi beberapa tahap:
Tahap pertama mengkonversi 75.5 desimal menjadi biner
Bagi 75 dengan 2 terus menerus hingga bilangan terkecil hasilnya -> 1001011
Bilangan di belakang koma biner adalah 0.5, 0.25, 0.125, dan seterusnya. Berarti 75.5 dalam biner= 1001011.1
Tahap kedua merubah menjadi bilangan berpangkat. Ambil harga 1.xxxx. Jadi 1001011.1 dirubah menjadi: 1.0010111 x 26.
Tahap ketiga adalah mengkonversi pangkat (dalam hal ini 6) menjadi exponent terbias:
Rubah dulu 6 desimal menjadi biner: 110(b). Setelah itu jumlahkan dengan 07FH atau 0111111(b). Hasilnya: 10000101.
Tahap keempat adalah mengatur komposisi bilangan floating point.
Bilangan floating point single precision terdiri dari 32 bit dengan komposisi bit pertama adalah tanda (0 untuk positif dan 1 untuk negatif), komposisi berikutnya adalah exponen terbias, dan dilanjutkan dengan sisa (angka di belakang koma) hingga seluruhnya 32 bit.
Sign (tanda) : 0
Exponent terbias : 10000101
Mantisa : 0010111 ditambahkan nol hingga seluruhnya 32 bit.
Jadi bilangan floating pointnya adalah:
01000010 10010111 00000000 00000000
Berapakah konversi dari bilangan floating point berikut ini menjadi desimal?
11000000 11110000 00000000 00000000
Jawab:
Prinsipnya adalah sama dengan soal A, hanya dibalik langkahnya. Pertama pecah menajdi seperti langkah 4 soal A.
Sign (tanda) : 1 (berarti negatif)
Exponent Terbias : 10000001
Mantisa : 11100000
Langkah kedua, kita mencari pangkat (exponent) dari exponen terbiasnya.
Exponent tak terbias = Exponen terbias – 07FH. Disini dikurangi karena pada langkah 3 soal A ditambah. Jadi 10000001 – 01111111 = 10 (b) dan dalam desimalnya = 2. Jadi pangkatnya adalah 2.
Langkah berikutnya adalah memasukan mantisa ke dalam pangkat yang telah dihitung di langkah 2. Mantisanya adalah 11100000 berarti pangkat lengkapnya:
1.11100000 x 22 atau tanpa menggunakan pangkat: 111.100000.
Langkah terakhir dan yang termudah adalah mengkonversi hasil perhitungan 3 menjadi desimal. Perhatikan ada angka di belakang koma. Jadi bilangan tersebut adalah pecahan. Kita konversi terlebih dahulu yang di sebelah kiri koma, 111(b) = 7 dan di sebelah kanan koma: 0.1(b) = 0.5. Awas, jangan lupa karena tandanya negatif, maka jawabannya adalah -7.5.
Berikutnya soal yang lebih rumit, yaitu rubah menjadi desimal bilangan floating point single precision berikut ini:
00111111 00010000 00000000 00000000
Jawab:
Seperti biasa pecah menajdi seperti langkah 4 soal A.
Sign (tanda) : 0 (berarti positif)
Exponent Terbias : 01111110
Mantisa : 00100000
Langkah kedua, kita mencari pangkat (exponent) dari exponen terbiasnya.
Exponent tak terbias = Exponen terbias – 07FH. Disini dikurangi karena pada langkah 3 soal A ditambah. Jadi 01111110 – 01111111 = 11111111(b) dan dalam desimalnya = -1. Jadi pangkatnya adalah -1. Di sinilah yang tersulit.
Langkah berikutnya adalah memasukan mantisa ke dalam pangkat yang telah dihitung di langkah 2. Mantisanya adalah 11100000 berarti pangkat lengkapnya:
1. 00100000 x 2-1 atau tanpa menggunakan pangkat: 0.100100000.
Langkah terakhir dan yang termudah adalah mengkonversi hasil perhitungan 3 menjadi desimal. Perhatikan ada angka di belakang koma. Jadi bilangan tersebut adalah pecahan. Di sebelah kanan koma: 0.100100000(b) = 0.5 + 0.0625. maka jawabannya adalah 0.5625.
Berapakah Konversi data ke sinyal enkode Modified Frequency Modulation (MFM)
1001011 dan berapa dalam Run-Length Limited (RLL)
Jawab:
Perhatikan aturan main:
pulsa berisi data harus logika 1 (sinyal naik ke atas).
Walau ada nol berurutan, tetap nol di sinyal data (d).
Jika ada nol berurutan, menjadi 1 di sinyal clock (c) tetapi tetap 0 di sinyal data (d). Gunanya untuk sinkronisasi saat pembacaan harddsik.
Gunakan grafik dengan membagi menjadi C dan D.
Isi bagian data sesuai dengan soal (jika nol berada di bawah dan 1 berada di atas). Dilanjutkan dengan mengisi bagian clock (C). Perhatikan jika data=0 dilanjutkan dengan clock 0 maka harus naik, lihat aturan C.
RLL membagi tiap MFM menjadi 3 bagian. Lihat tabelnya untuk misalnya jenis encode 2,7
Kelompokkan menjadi data yang sesuai Input Data Stream. Jadi 1001011 akan dikelompokan menjadi (10)(010)(11) yang akan dikonversi menjadi:01001001001000 pada tabel di atas. Cara menggambar mudah, nol di bawah, satu naik.
Berapakah nilai desimal:
01011101 10010011 0000000 00000000
0 10111011 00100110 à lanjutkan.