Rakitan-5.ppt
-
Upload
sugangga-geor -
Category
Documents
-
view
32 -
download
0
Transcript of Rakitan-5.ppt
Program Bahasa RakitanTanpa DEBUG.COM
Mata Kuliah : Bahasa RakitanMateri ke- 5
2
Konsep Assembler/Linker
File.asm File.obj File.exe
File.com
AssemblerLinker
• Assembler menterjemahkan file program bahasa rakitan (.asm) ke bentuk file objek (.obj)
• Linker menterjemahkan file program objek ke bentuk program eksekusi (.com atau .exe)
Contoh : TASM LatihanTLINK Latihan.asm Latihan.exeTLINK/T Latihan.asm Latihan.com
Microsoft Macro AssemblerTurbo Assembler
3
Struktur Program
[nama segment]SEGMENTASSUME CS:[SEGMENT] DS[SEGMENT] SS:[SEGMENT] ES:[SEGMENT]ORG 100H[LABEL] : -
- Program ASM - -
[nama segment] ENDSEND [label]
Catt : [nama segment] : CODE_SEG [segment] : CODE_SEG [label] : START
4
INTERRUPT
Perintah Interrupt akan memanggil subroutine yang sudah tersedia dalam memori komputer
Ada dua jenis subroutine yang dapat dipanggil dengan perintah Interrrupt :
1. BIOS Interrupt, yaitu interrupt yang disediakan oleh BIOS. Yang termasuk dalam interrupt ini adalah INT 0H s/d INT 1FH
2. DOS Interrupt, yaitu interrupt yang disediakan oleh DOS.Yang termasuk dalam interrupt ini adalah INT di atas 1FH
5
Procedure dan Macro Macro pada dasarnya tidak berbeda jauh dengan
Procedure/Subroutine. Bedanya hanya pada pemakaian memori
Format Procedure :CODE_SEG SEGMENT
ASSUME CS:CODE_SEGORG 100H
START : …..CALL[LABEL]….
[LABEL] PROC [NEAR/FAR]………..RET
[LABEL] ENDP
6
Procedure dan Macro (cont.)
Format Macro :[LABEL] MACRO
…..ENDMCODE_SEG SEGMENT
ASSUME CS:CODE_SEGORG 100H
START :[LABEL]…..
7
Procedure dan Macro (cont.)
Perbedaan Procedur dan Macro : Procedure:
Pemanggilannya akan menuju alamat dimana procedur berada. Dengandemikian program dalam procedure hanya muncul satukali, yaitu hanya dalam procedure-nya saja
MacroPemanggilannya akan mengakibatkan penulisan
kembali program macro sebagai engganti kata macro. Dengan demikianprogram dalam macro akan selalu muncul dan disisipkan disetiap pemanggilannya.
8
Procedure dan Macro (cont.)
Contoh Macro dng Turbo Assembler
CETAK 1 MACROMOV AH,02MOV DL,30HINT 21H
ENDM CETAK2 MACRO
MOV AH,02MOV DL,31HINT 21H
ENDM CODE_SEG SEGMENT
ASSUME CS:CODE_SEGORG 100H
START : CETAK1CETAK1MOV AH,02MOV DL,41HINT 21HCETAK2CETAK2INT 20H
CODE_SEG ENDSEND START
Contoh Procedure dng Turbo Assembler
CODE_SEG SEGMENT
ASSUME CS:CODE_SEG ORG 100HSTART : CALL CETAK1
CALL CETAK1MOV AH,02MOV DL,41HINT 21HCALL CETAK2CALL CETAK2INT 20H
CETAK1 PROC NEAR MOV AH,02 MOV DL,30H INT 21H RETCETAK1 ENDP
CETAK2 PROC NEARMOV AH,02MOV DL,31HINT 21HRET
CETAK2 ENDP CODE_SEG ENDS
END START
9
Procedure dan Macro (cont.)
Contoh Macro dng Debug MOV AH,02MOV DL,30INT 21MOV AH,02MOV DL,30INT 21MOV AH,02MOV DL,41INT 21MOV AH,02MOV DL,31INT 21MOV AH,02MOV DL,31INT 21INT20
Contoh Procedure dng DebugCALL *CALL *MOV AH,02MOV DL,41INT21CALL **CALL **INT20
* * MOV AH,02MOV DL,30INT21RET
** ** MOV AH,02MOV DL,31INT21RET