Anda di halaman 1dari 6

LAPORAN PRAKTIKUM PENGANTAR ORGANISASI KOMPUTER

Oleh:

Billy Rizky Juristra (M0511014)

JURUSAN INFORMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SEBELAS MARET 2012

A. Tujuan Praktikum Dalam praktikum kali ini bertujuan untuk mengenalkan secara mendasar penggunaan bahasa assembly yang disebut juga sebagai bahasa mesin. Bahsa assembly adalah bahasa tingkat rendah sehingga diperlukan penulisan instruksi instruksi khusus untuk menampilkan sesuatu pada bahasa assembly. Praktikum ini menggunakan sebuah emulator bahasa assembly yang bernama emulator 8086. Namun selain itu kita juga dapat menggunakan debug.exe untuk melakukan praktikum ini.

B. Dasar Teori Sebagai dasar, bahasa assembly memiliki empat register yang terdiri dari register AX (terdiri dari AH dan AL) , register BX (terdiri dari BH dan BL) , register CX (terdiri CH dan CL) , dan register DX (terdiri dari DH dan DL). Masing masing register memilki panjang 16 bit bilangan biner, dimana H dan L memiliki masing masing panjang 8 bit. Masing masing register memiliki fungsi masing masing. Untuk memulai sebuah program , pertama kiata harus menuliskan syntax mov ah,02h yang memiliki maksud kita memanggil servis 02 yang akan dimasukkan diegister AH. Kemudian mov dl,41h yang berarti kita memindahkan bilangan heksadesimal 41 ke register DL. Kita tampilkan kode tersebut dengan menggunakan perintah int 21h dan diakhiri dengan perintah int 20h. Untuk lebih jelasnya kita simak masing - masing analisa dari case study 1 sampai case study 3 yang akan dibahas di bagian analisa percobaan.

C. Analisa Percobaan Percobaan 1 : Menampilkan huruf a ke layar menggunakan bahasa assembly Source code program:

Hasil eksekusi program:

Analisa Program Pertama tama dalam membuat program dengan menggunakan bahasa assembly

kita memanggil servis 02h yang dipindahkan ke register AH yang ditulis mov ah,02h. Kemudian kita akan menampilkan huruf a ke layar maka kita perlu mengetahui bilangan heksadesimal dari huruf a pada kode ascii. Huruf a pada kode ascii ternyata 41 , kemudian pada emulator kita tuliskan mov dl,41h (h maksudnya dheksadesimal). Setelah itu kita mulai program dengan menggunakan instruksi int 21h dan diakhiri dengan int 20h. Langkah akhir kita emulate program dan kita akan mendapatkan hasil seperti yang tertera pada screenshot hasil eksekusi program diatas. Percobaan 2 : Menampilkan huruf p ke layar menggunakan bahasa assembly Source code program :

Hasil eksekusi program :

Analisa Program Seperti sudah dijelaskan diatas bahwa untuk memulai program kita memanggil

servis 02h yang dipindahkan ke register AH dengan menggunakan perintah mov ah,02h. Karena kita akan menampilkan huruf p maka kita perlu mengetahui kode ascii dari hurufp. Huruf p pada kode ascii ternyata memiliki bilangan heksadesimal 70 , maka dari itu untuk menampilkannya kita tulis instruksi mov dl,70h. Kita mulai program dengan menggunakan perintah int 21h dan diakhiri dengan perintah int 20h. Langkah akhir kita emulate program diatas dan kita akan mendapatkan hasil seperti screenshot hasil eksekusi program diatas. Percobaan 3 : Menampilkan nama depan kita ke layar dengan menggunakan bahsasa assembly. Source code program :

Hasil eksekusi program :

Analisa Program Pada percobaan ketiga ini kita diminta menampilkan nama depan dari nama kita

yaitu BILLY . Seperti langkah langkah pembuatan program sebelumnya , pada awal program kita memanggil servis 02h yang akan dipindahkan ke register AH dengan perintah mov ah,02h. Kemudian kita perlu mengetahui kode ascii dari masing masing huruf yaitu huruf B , I , L , L , dan Y. Setelah kita converter kita mengetahui bahwa bilangan heksadesimal dari kelima huruf adalah sebagai berikut : Huruf B mempunyai bilangan heksadesimal 42 , maka dari itu untuik menampilkan huruf B kita gunakan instruksi mov dl,42h. Huruf I mempunyai bilangan heksadesimal 49 , maka dari itu untuk menampilkan huruf I kita gunakan instruksi mov dl,49h. Huruf L mempunyai bilangan heksadesimal 4c , maka dari itu untuk menampilkan huruf L kita gunakan instruski mov dl,4ch. Huruf Y mempunyai bilangan heksadesimal 59 , maka dari itu untuk menampilkan huruf Y kita gunakan instruksi mov dl,59h. Perlu diingat bahwa setiap kali menuliskan intruksi mov dl,xxh (xx diisi dengan bilangan heksadesimal dari setiap huruf) harus diikuti dengan perintah int 21h untuk menampilkannya ke layar , jika tidak maka instruksi tersebut tidak akan ditampilkan ke layar. Sebagai contoh kita menuliskan instruksi mov dl,4ch maka setelah itu kita tuliskan instruksi int 21h tepat dibawah dari instruksi mov dl,4ch seperti pada screenshot source code program diatas. Langkah akhir kita emulate program diatas dan jika benar kita akan mendapatkan hasil seperti screenshot hasil eksekusi program diatas.

D. Kesimpulan Kesimpulan yang kita dapat dari praktikum kali ini adalah sebagai berikut : 1. Untuk membuat program dengan bahasa assembly , kita dapat menggunakan emulator 8086 atau juga dapat menggunakan debug.exe. 2. Bahasa assembly mempunyai empat register yang terdiri dari register AX (terdiri dari AH dan AL) , register BX (terdiri dari BH dan BL) , register CX (terdiri CH dan CL) , dan register DX (terdiri dari DH dan DL). 3. Untuk memulai membuat program menggunakn bahasa assembly , kita harus memanggil servis 02h yang akan dipindahkan ke register AH. 4. Instruksi mov dl,xxh (xx diisi dengan bilangan heksadesimal dari setiap huruf) adalah digunakan untuk menampilkan huruf ke layar. Instruksi diikuti dengan instruksi int 21h. 5. Int 21h memiliki fungsi sebagai pembuka program dan untuk mencetak instruksi dari mov dl,xxh 6. Untuk mengakhiri program kita harus menuliskan instruksi int 20h pada setiap akhir program dengan menggunakan bahasa assembly