Bahasa Rakitan - Pertemuan 3

download Bahasa Rakitan - Pertemuan 3

of 12

description

Bahasa Rakitan - Pertemuan 3

Transcript of Bahasa Rakitan - Pertemuan 3

Slide 1

MEMULAI BAHASA RAKITAN Sugiartowo, M.KomTeknik InformatikaUniversitas Muhammadiyah JakartaModel Program Assembly.MODEL SMALL.CODEORG 100HLabel1 : JMP Label2

Label2 :

INT 20HEND Label1TEMPAT DATA PROGRAMTEMPAT DATA PROGRAM.MODEL XXXX

Tanda directive ini digunakan untuk memberitahukan kepada assembler bentuk memory yang digunakan oleh program kita. Supaya lebih jelas model-model yang bisa digunakan adalah :- TINYJika program anda hanya menggunakan 1 segment seperti program COM. Model ini disediakan khusus untuk program COM.

- SMALLJika data dan code yang digunakan oleh program kurang dari ukuran 1 segment atau 64 KB.

- MEDIUMJika data yang digunakan oleh program kurang dari 64 KB tetapi code yang digunakan bisa lebih dari 64 KB.- COMPACTJika data yang digunakan bisa lebih besar dari 64 KB tetapi codenya kurang dari 64 KB.

- LARGEJika data dan code yang dipakai oleh program bisa lebih dari 64 KB.

- HUGEJika data, code maupun array yang digunakan bisa lebih dari 64 KB. Mungkin ada yang bertanya-tanya mengapa pada program COM yang dibuat digunakan model SMALL dan bukannya TINY ? Hal ini disebabkan karena banyak dari compiler bahasa tingkat tinggi yang tidak bisa berkomunikasi dengan model TINY, sehingga kita menggunakan model SMALL sebagai pemecahannya..CODE

Tanda directive ini digunakan untuk memberitahukan kepada assembler bahwakita akan mulai menggunakan Code Segment-nya disini. Code segment ini digunakan untuk menyimpan program yang nantinya akan dijalankan.. ORG 100hPada program COM perintah ini akan selalu digunakan. Perintah ini digunakan untuk memberitahukan assembler supaya program pada saat dijalankan(diload ke memory) ditaruh mulai pada offset ke 100h. Dapat dikatakan juga bahwa kita menyediakan 100h byte kosong pada saat program dijalankan. 100h byte kosong ini nantinya akan ditempati oleh PSP(Program Segment Prefix) dari program tersebut. PSP ini digunakan oleh DOS untuk mengontrol jalannya program tersebut.JMPPerintah JMP(JUMP) ini digunakan untuk melompat menuju tempat yang ditunjukkan oleh perintah JUMP. Adapun syntaxnya adalah:JUMP Tujuan

Dimana tujuannya dapat berupa label seperti yang digunakan pada bagan diatas. Mengenai perintah JUMP ini akan kita bahas lebih lanjut nantinya. Perintah JUMP yang digunakan pada bagan diatas dimaksudkan agar melewati tempat data program, karena jika tidak ada perintah JUMP ini maka data program akan ikut dieksekusi sehingga kemungkinan besar akan menyebabkan program anda menjadi Hang.INT 20hPerintah INT adalah suatu perintah untuk menghasilkan suatu interupsi. Adapun syntaxnya adalah:INT No Intrupsi

Interupsi 20h berfungsi untuk mengakhiri program dan menyerahkan kendali sepenuhnya kepada Dos. Pada program COM cara ini bukanlah satu-satunya tetapicara inilah yang paling efektif untuk digunakan. Bila anda lupa untuk mengakhiri sebuah program maka program anda tidak akan tahu kapan harus selesai, hal ini akan menyebabkan komputer menjadi hang.Contoh Program Mencetak Karakter;=======================================;; PROGRAM : latihan1.ASM ;; FUNGSI : MENCETAK KARATER A ;; DENGAN INT 21h dan SERVICE NUMBER 02h ; ;=======================================;.MODEL SMALL.CODEORG 100hProses :MOV AH,02h ; Nilai servis ntuk mencetak karakterMOV DL,41h ; DL = Karakter ASCII yang akan dicetakINT 21h ; Cetak karakter !!INT 20h ; Selesai ! kembali ke DOSEND ProsesProsedur MengkompilasiSimpan Program yang sudah anda ketik dengan nama file Latihan1.asm kedalam folder tasm

Gunakan TASM untuk membuat program obyek C:\>tasm \tasm latihan1.asm

3. Gunakan TLINK untuk membangun excutable program C:\>tasm\tlink/t latihan1.obj

4. Jalan program yang sudah anda buat C:\>tasm>latihan1TERIMA KASIH