Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Turbo Assembler TASM
2
Lembar Kerja Untuk menuliskan source file untuk program assembly bisa mengunakan berbagai aplikasi text editor, misalkan Notepad. Source file yang diketikkan harus berupa file ASCII. Source file untuk assembly harus berektensi .ASM.
3
Compiler Source file ASCII yang telah anda ketikkan perlu dicompile ke bentuk file object dengan extensi .OBJ, dari file object inilah nantinya dapat dijadikan ke bentuk file .EXE atau .COM.
4
PERBEDAAN PROGRAM COM DAN EXE
Lebih pendek dari file EXE Lebih cepat dibanding file EXE Hanya dapat menggunakan 1 segmen Ukuran file maksimum 64 KB (ukuran satu segment) sulit untuk mengakses data atau procedure yang terletak pada segment yg lain. 100h byte pertama merupakan PSP(Program Segment Prefix) dari program tersebut. Bisa dibuat dengan DEBUG
5
PERBEDAAN PROGRAM COM DAN EXE
PROGRAM EXE : Lebih panjang dari file COM Lebih lambat dibanding file COM Bisa menggunakan lebih dari 1 segmen Ukuran file tak terbatas sesuai dengan ukuran memory. mudah mengakses data atau procedure pada segment yang lain. Tidak bisa dibuat dengan DEBUG
6
BENTUK ANGKA Desimal Untuk menuliskan angka dalam bentuk desimal, bisa digunakan tanda 'D' pada akhir angka tersebut atau bisa juga tidak diberi tanda sama sekali, contoh : 298D atau 298 saja.
7
BENTUK ANGKA Biner Untuk menuliskan angka dalam bentuk biner(0..1), harus ditambahkan tanda 'B' pada akhir angka tersebut, contoh : B.
8
BENTUK ANGKA Hexadesimal
Untuk menuliskan angka dalam bentuk hexadesimal(0..9,A..F), harus ditambahkan tanda 'H' pada akhir angka tersebut. Perlu diperhatikan bahwa bila angka pertama dari hexa berupa karakter(A..F) maka angka nol harus ditambahkan didepannya. Bila hal ini tidak dilakukan, assembler akan menganggapnya sebagai suatu label, bukannya sebagai nilai hexa. Contoh penulisan yang benar: 0A12H, 2A02H.
9
BENTUK ANGKA Karakter Penulisan karakter atau string diapit oleh tanda petik dua (") atau tanda petik satu('), Contoh: ' Ini adalah karakter '.
10
Label Label bisa anda definisikan dengan ketentuan akhir dari nama label tersebut harus berupa tanda titik dua (:). Pemberian nama label bisa digunakan: - Huruf : A..Z (Huruf besar dan kecil tidak dibedakan) - Angka : 0..9 - Karakter khusus . _ $ Nama pada label tidak boleh terdapat spasi dan didahului oleh angka, Contoh dari penulisan label yang benar: mulai: MOV CX,7. Nama label terpanjang yang dapat dikenali oleh assembler adalah 31 karakter.
11
Komentar Untuk memberikan komentar pada source file digunakan tanda ';'. Apapun yang dtuliskan dibelakang tanda ';' akan dianggap sebagai komentar, Contoh : mulai: MOV BX,7 ; berikan nilai 7 pada BX
12
Interupt Didalam pemrograman assambler, kita akan banyak sekali menggunakan interupsi untuk membantu kita dalam mengerjakan suatu pekerjaan. Untuk menghasilkan suatu interupsi digunakan perintah INT dengan syntax : INT noINT Dengan noINT adalah nomor interupsi yang ingin dihasilkan. Sebagai contohnya bila kita ingin menghasilkan interupsi 21h, bisa dituliskan dengan: INT 21h, maka interupsi 21h akan segera terjadi.
13
Model Program .COM .MODEL SMALL .CODE ORG 100H Label1 : JMP Label2 | TEMPAT DATA PROGRAM | Label2 : | TEMPAT PROGRAM | INT 20H END Label1
14
Model Tanda directive ini digunakan untuk memberitahukan kepada assembler bentuk memory yang digunakan oleh program kita. Supaya lebih jelas model-model yang bisa digunakan adalah :
15
Model Tiny Jika program anda hanya menggunakan 1 segment seperti program COM. Model ini disediakan khusus untuk program COM. Small Jika data dan code yang digunakan oleh program kurang dari ukuran 1 segment atau 64 KB.
16
Model Medium Jika data yang digunakan oleh program kurang dari 64 KB tetapi code yang digunakan bisa lebih dari 64 KB. Compact Jika data yang digunakan bisa lebih besar dari 64 KB tetapi codenya kurang dari 64 KB.
17
Model Large Jika data dan code yang dipakai oleh program bisa lebih dari 64 KB. Huge Jika data, code maupun array yang digunakan bisa lebih dari 64 KB.
18
Code Tanda directive ini digunakan untuk memberitahukan kepada assembler bahwa kita akan mulai menggunakan Code Segment-nya disini. Code segment ini digunakan untuk menyimpan program yang nantinya akan dijalankan.
19
ORG 100h Pada 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 (256) byte. 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.
20
JMP Perintah 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.
21
INT 20h Interupsi 20h berfungsi untuk mengakhiri program dan menyerahkan kendali sepenuhnya kepada Dos. Pada program COM cara ini bukanlah satu-satunya tetapi cara 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.
22
Program ;============================================ ====;
; PROGRAM : A0.ASM ; ; FUNGSI : MENCETAK KARATER 'A' DENGAN INT 21 ; .MODEL SMALL .CODE ORG 100h Proses : MOV AH,02h ; Nilai servis ntuk mencetak karakter MOV DL,'A' ; DL = Karakter ASCII yang akan dicetak INT 21h ; Cetak karakter !! INT 20h ; Selesai ! kembali ke DOS END Proses
23
Cara Compile Source file ASCII yang telah anda ketikkan perlu dicompile ke bentuk file object dengan extensi .OBJ, dari file object inilah nantinya dapat dijadikan ke bentuk file .EXE atau .COM.
24
Cara Compile C:\>tasm coba
Turbo Assembler Version 2.0 Copyright (c) 1988, 1990 Borland International Assembling file: coba.ASM Error messages: None Warning messages: None Passes: Remaining memory: 307k C:\>dir coba.* Volume in drive C is S’to Directory of C:\ COBA OBJ :42p COBA ASM :41p 2 file(s) bytes 1,085,952 bytes free
25
Linking File object yang telah terbentuk dengan TASM, belum dapat dieksekusi secara langsung. Untuk membuat file object ke bentuk file yang dapat dieksekusi (ektensi .COM atau .EXE) bisa anda gunakan file TLINK.EXE.
26
Linking .EXE .COM C:\>tlink coba
Turbo Link Version 3.0 Copyright (c) 1987, 1990 Borland International .COM C:\>tlink/t coba
27
Program 2 ;=================================; ; PROGRAM : A1.ASM ;
; FUNGSI : MENCETAK KARATER 'A'; ; BESERTA ATRIBUTNYA ; ; DENGAN INT 10h ; .MODEL SMALL .CODE ORG 100h Proses : MOV AH,09h ; Nilai servis untuk mencetak karakter MOV AL,'A' ; AL = Karakter yang akan dicetak MOV BH,00h ; Nomor Halaman layar MOV BL,93h ; Warna atau atribut dari karakter MOV CX,03h ; Banyaknya karakter yang ingin dicetak INT 10h ; Laksanakan !!! INT 20h ; Selesai ! kembali ke DOS END Proses
28
Program 3 ;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~; ; PROGRAM : ABC0.ASM ;
; FUNGSI : MENCETAK 16 BUAH ; ; KARAKTER DENGAN ; ; INT 21h SERVIS 02 ; ;==========================S’to=; .MODEL SMALL .CODE ORG 100h Proses : MOV AH,02h ; Nilai servis MOV DL,'A' ; DL=karakter 'A' atau DL=41h MOV CX,10h ; Banyaknya pengulangan yang akan Ulang : INT 21h ; Cetak karakter !! INC DL ; Tambah DL dengan 1 LOOP Ulang ; Lompat ke Ulang INT 20h END Proses
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.