MASIGNALPHAS2101
6680671983845063762

Pemrograman dengan Bahasa Assembly - Bagian 5 - MEMULAI DENGAN ASSEMBLY

Pemrograman dengan Bahasa Assembly - Bagian 5 - MEMULAI DENGAN ASSEMBLY
Add Comments
8/03/2016


MEMULAI DENGAN ASSEMBLY

1. TEXT EDITOR
Untuk menuliskan source file untuk program assembly bisa anda gunakan berbagai editor, misalkan SideKick, WordStar dan Word Perfect. Source file yang diketikkan harus berupa file ASCII, file ini bisa anda hasilkan melalui WordStar dengan file 'NON DOCUMEN', atau dengan SideKick.

Untuk meyakinkan bahwa source file yang anda buat adalah file ASCII, bisa anda coba ketikkan perintah Type pada A>. Bila file yang terlihat dengan perintah type sama persis dengan yang anda ketikkan pada editor, tanpa tambahan karakter-karakter yang acak, maka file tersebut adalah file ASCII. Source file untuk assembly harus berektensi .ASM.

2. COMPILER
Source file ASCII yang telah anda ketikkan perlu dicompile kebentuk file object dengan extensi .OBJ, dari file object inilah nantinya dapat dijadikan kebentuk file .EXE atau .COM. Untuk mengcompile source file, misalnya file COBA.ASM menjadi file object dengan extensi .OBJ bisa anda gunakan file TASM.EXE dengan mengetikkan:
C:\>tasm cobaTurbo Assembler Version 2.0 Copyright (c) 1988,1990 Borland InternationalAssembling file: coba.ASM Error messages: None Warning messages: None Passes:Remaining memory: 307kC:\>dir coba.*Volume in drive C is S’toDirectory of C:\COBA OBJ 128 08-12-94 10:42pCOBA ASM 128 08-12-94 10:41p2 file(s) 246 bytes1,085,952 bytes free
3. LINGKING
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. Bila source program yang anda buat dalam bentuk EXE maka untuk membentuk file dengan ektensi EXE bisa anda ketikkan :
C:\>tlink cobaTurbo Link Version 3.0 Copyright (c) 1987,1990 Borland Internationalila source program yang dibuat adalah file COM, maka bisa anda ketikkan:C:\>tlink/t cobaTurbo Link Version 3.0 Copyright (c) 1987,1990 Borland International

4. PERBEDAAN PROGRAM COM DAN EXE
Program dengan ektensi COM dan EXE mempunya berbagai perbedaan yang menyolok, antara lain :

PROGRAM COM
  • 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 yang lain.
  • 100h byte pertama merupakan PSP(Program Segment Prefix) dari program tersebut.
  • Bisa dibuat dengan DEBUG
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

5. BENTUK ANGKA
Assembler mengizinkan penggunaan beberapa bentuk angka , yaitu :
  1. 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.
  2. BINER, untuk menuliskan angka dalam bentuk biner(0..1), harus ditambahkan tanda 'B' pada akhir angka tersebut, contoh : 01100111B.
  3. HEXADECIMAL, 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.
  4. KARAKTER, penulisan karakter atau string diapit oleh tanda petik dua (") atau tanda petik satu('), Contoh: ' Ini adalah karakter '.
  5. 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.

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
PERINTAH MOV
Perintah MOV digunakan untuk mengcopy nilai atau angka menuju suatu register,variabel atau memory. Adapun syntax untuk perintah MOV ini adalah :

MOV Tujuan,Asal

Sebagai contonya :
  • MOV AL,9 ; masukkan nilai 9 pada AL.
  • MOV AH,AL ; nilai AL=9 dan AH=9
  • MOV AX,9 ; AX=AH+AL hingga AH=0 dan AL:=9
Pada baris pertama(MOV AL,9), kita memberikan nilai 9 pada register AL. Kemudian pada baris kedua(MOV AH,AL) kita mengcopykan nilai register AL untuk AH. Jadi setelah operasi ini register AL akan tetap bernilai 9, dan register

AH akan sama nilainya dengan AL atau 9. Pada baris ketiga(MOV AX,9), kita memberikan register AX nilai 9. Karena AX terdiri atas AH dan AL, maka register AH akan bernilai 0, sedangkan AL akan bernilai 9.

Perintah MOV akan mengcopykan nilai pada sumber untuk dimasukan ke Tujuan, nilai sumber tidaklah berubah. Inilah sebabnya MOV(E) akan kita terjemahkan disini dengan mengcopy, dan bukannya memindahkan.

PERINTAH INT
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.

Hestech Indonesia

Innovasi di bidang Teknologi, Listrik, Teknik Komputer dan gaya Hidup. Info lainnya tentang praktik konservasi berbasis Sains, inovasi, dan kearifan lokal