- Memahami penggunaan EMU 8086
- Mengetahui program mencetak 3 digit angka ke layar
Tujuan dari program assembler ini adalah untuk mempelajari cara menampilkan karakter angka dari 0 hingga 9 pada layar menggunakan instruksi assembler dan DOS interrupt. Program ini membantu memahami konsep penggunaan register, loop, dan interrupt dalam bahasa assembly, khususnya dalam menampilkan data ke layar.
- Emulate : untuk menjalankan emulator kode program yang kita buat
- Compile : untuk membuat (compile) “binary executable file” atau ekstensi “.com” atau “.exe” dari kode program.
- Run : menjalankan aplikasi dari emulator yang dihasilkan (execute).
- Single Step : Menjalankan aplikasi dengan cara tracing (diproses perbaris kode program).
3. Dasar Teori [Kembali]
1. Operasi Pertambahan
Ada dua macam perintah pertambahan, yaitu :
a. Pertambahan dengan 1
b. Pertambahan selain Satu Dengan
Tata penulisan: ADD [operand1],[operand2] dimana isi operand1 adalah register atau variabel dan operand2 berupa register, variabel atau bilangan. Hasil pertambahan disimpan di operand1 , seperti contoh berikut ini.
Contoh:
Untuk perintah ADD kedua operand harus mempunyai besar kemampuan yang sama seperti AH dan AL yang sama-sama 8 bit.
Emu8086 merupakan aplikasi emulator bagi pemrograman bahasa assembler atau mikrokontroler. Dengan menggunakan aplikasi emulator, kita dapat mensimulasikan apakah program kontrol hardware yang kita buat sudah benar atau masih salah.
Pada bahasa pemograman asembler terdapat beberapa perintah untuk aritmatik. Perintah aritmatik yang dapat digunakan untuk pembagian adalah DIV(divide).
- Emulate : untuk menjalankan emulator kode program yang kita buat
- Compile : untuk membuat (compile) “binary executable file” atau ekstensi “.com” atau “.exe” dari kode program.
- Run : menjalankan aplikasi dari emulator yang dihasilkan (execute).
- Single Step : Menjalankan aplikasi dengan cara tracing (diproses perbaris kode program).
4. Prosedur Percobaan [Kembali]
Listing Program :
MOV CX,0Ah
MOV DL,39h
ulangi:
MOV AH,02h
INT 21h
DEC DL
LOOP ulangi
MOV AH ,4Ch
INT 21
Penjelasan per baris program adalah:
1. Perintah program untuk menampilkan angka 9 sampai 0 kelayar monitor
2. MOV CX,0AH merupakan melakukan pengulangan sebanyak 0AH ( 10 kali) dimana register CX adalah 16 bit
3. MOV DL,39h merupakan melakukan mengisi register DL dengan karakter ASCII dari angka 9
4. Ulangi merupakan label semacam lokasi dimana alamat yang akan diulang dituju
5. MOV AH,02h merupakan mengisi nilai karakter AH dengan data 02H
6. INT 21h merupakan menjalankan interrupt 21 hexsa dengan mencetak kode ASCII karakter di DL ke layar
7. DEC DL dengan DL – 1 merupakan, untuk DEC adalah tata penulisan untuk pengurangan DL-1 adalah smbol untuk karakter berikutnya. 39-1 = 38, dimana 38 dala kode ASCII adalah 8
8. Loop Ulangi merupakan pengulangan sampai angka 0 karena CX=AH (10 kali)
9. MOV AH,4CH dan baris ke 10. INT 21h merupakan perintah untuk menghentikan program
Gambar Percobaan
c. Jalankan Program sehingga tampil pada layar
5. Rangkaian Simulasi dan Prinsip Kerja [Kembali]
Program tersebut dirancang untuk menampilkan angka dari 9 hingga 0 di layar menggunakan bahasa assembly dengan interrupt INT 21h pada sistem operasi DOS. Prinsip kerjanya dimulai dengan inisialisasi register CX dengan nilai 0Ah (10 desimal) yang menandakan jumlah pengulangan yang akan dilakukan. Register DL diisi dengan nilai 39h yang merupakan kode ASCII untuk angka '9'. Program kemudian masuk ke loop di mana setiap iterasi mencetak karakter yang tersimpan di DL ke layar dengan mengatur register AH ke 02h (fungsi untuk mencetak karakter) dan memanggil interrupt 21h. Setelah karakter ditampilkan, nilai DL dikurangi satu untuk mendapatkan karakter ASCII berikutnya, yaitu 8, 7, dan seterusnya hingga mencapai 0.
Loop ini akan terus berulang hingga register CX mencapai nol, yang artinya semua angka dari 9 hingga 0 telah ditampilkan. Setiap kali loop diulang, instruksi LOOP "ulangi" akan mengurangi nilai CX secara otomatis dan melompat kembali ke label "ulangi" jika CX tidak sama dengan nol. Setelah seluruh loop selesai dan semua angka ditampilkan, program akan mengakhiri eksekusinya dengan mengatur register AH ke 4Ch dan memanggil interrupt 21h lagi, yang merupakan perintah standar untuk mengakhiri program dan kembali ke DOS.
6. Video Simulasi [Kembali]
0 komentar:
Posting Komentar