.MODEL SMALL
.CODE
ORG 100h
MODEL SMALL digunakan untuk
memberitahukan kepada assembler bentuk memory yang digunakan oleh program kita,
pada program ini kita menggunakan SMALL yaitu data dan code yang digunakan oleh
program kurang dari ukuran 1 segment atau 64 KB.
.CODE 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.
ORG 100h 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.
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.
TData :
JMP Proses
T_ASCII DB 13,10,'Ini adalah tombol ASCII : $'
T_Extended DB
13,10,'Ini adalah tombol Extended : $'
Blok
program dari Tdata , Memanggil
fungsi Proses lalu di berikan sebuah tanda yaitu T_ASCII DB
13,10,'Ini adalah tombol ASCII : $' dan T_Extended DB 13,10,'Ini adalah tombol Extended : $'
Proses :
MOV AH,0
INT 16h
PUSH AX
CMP AL,00
JE Extended
Di sini adalah fungsi dari proses
yaitu MOV Ah,0 mengisi register
servis dengan 0 ,INT 16h Melakasanakn perintah , PUSH AX menyimpan hasil pembicaraan pada
suatu STACK , CMP AL,00 sebuah kondisi dan JE Extended untuk
melompat.
ASCII:
LEA
DX,T_ASCII
MOV AH,09
INT 21h
POP AX
MOV DL,AL
MOV AH,2
INT 21h
CMP AL,'Q'
JE exit
CMP AL,'q'
JE exit
JMP Proses
Di sini
adalah merupakan fungsi dari ASCII T_ASCII.
Yang semua intinya adalah mencetak sebuah kode ASCII dan sebuah kondisi.
Pada CMP adalah untuk sebuah kondisi
di mana jika benar maka akan melompat dengan adanya JE.
Extended:
LEA DX,T_Extended
MOV AH,09
INT 21h
JMP Proses
Di sini adalah merupakan fungsi dari
Extended.Yang semua intinya adalah mencetak sebuah kode
Extended , Di mana MOV AH,09 masuk ke servis 9 , INT 21h adalah mencetak lalu lompat ke fungsi Proses.
exit:
INT 20h
END TData
Di sini adalah fungsi dari exit. INT 20h Kembali ke CMD/DOS lalu END Tdata mengakhiri program.
OUTPUT
PROGRAM
RANGKUMAN
Register AX merupakan register
aritmatik, karena register ini selalu dipakai dalam operasi penambahan,
pengurangan, perkalian dan pembagian.
Setiap register general purpose
mempunyai Register Low dan Register High, maka untuk AX register low-nya adalah
AL dan register high-nya adalah AH.
Tidak ada komentar:
Posting Komentar