Anda di halaman 1dari 30

TEKNIK INFORMATIKA

|| UNIBBA

PEMROGRAMAN ASSEMBLER
PEMROGRAMAN TINGKAT RENDAH

Yaya Suharya

yaya@cgy.co.id
PERTEMUAN KE-5 yaya@cdi.co.id
(3 SKS – 16 X PERTEMUAN)
08112031124
NOW …
Materi :
• Install GUI Turbo Assembler v 3.0.1
• Memulai Bahasa Rakitan
• Text Editor, compiler dan linking
• Perbedaan COM dan EXE
• Bentuk angka, label dan komentar dalam
bahasa rakitan
• Perintah MOV dan INT
• Model Program COM
DESKRIPSI MATA KULIAH
Pertemuan ke-5 :
Mahasiswa mampu mengoperasikan
perangkat lunak assembler dan
mampu memahami bahasa rakitan.
Install Perangkat Lunak
Assembler
GUI TURBO ASSEMBLER V 3.0.1 :
- https://sourceforge.net/projects/guitasm8086/
- https://www.microsoft.com/en-
us/download/confirmation.aspx?id=17851
- 32 BIT
- 64 BIT
- GUI Turbo Assembler v3.0.1
- dotNetFx40_Full_setup
Install Perangkat Lunak
Assembler
EMULATOR 8086:
- https://download.cnet.com/Emu8086-
Microprocessor-Emulator/3000-2069_4-
10392690.html

- https://softfamous.com/emu8086/
Interface GUI Turbo
Assembler
Menu GUI Turbo
Assembler
Menu GUI Turbo
Assembler
Interface EMU8086
Menu GUI EMU8086
Text Editor, Compiler &
Linking
Text Editor merupakan sebuah software
yang biasanya digunakan oleh seorang
programmer dalam menulis sebuah kode
program.Text Editor kadang digunakan
juga oleh seorang web designer untuk
menciptakan halaman web yang didesain
olehnya.
Text Editor, Compiler &
Linking
Text Editor, Compiler &
Linking
Kompilator (Inggris: compiler) adalah
sebuah program komputer yang berguna
untuk menerjemahkan program komputer
yang ditulis dalam bahasa pemrograman
tertentu menjadi program yang ditulis
dalam bahasa pemrograman lain.
Kompilator itu sendiri, yang menerima kode
sumber dan menghasilkan bahasa tingkat
rendah (assembly)
Text Editor, Compiler &
Linking
Text Editor, Compiler &
Linking

Linker adalah suatu program yang


menterjemahkanprogram objek
(bereksention OBJ) ke bentukprogram
eksekusi (berekstension EXE atau COM).
Sedangkan untuk membuat file object ke
bentuk fileyang dapat dieksekusi
(berekstension.COM atau.EXE) bisa anda
gunakan file TLINK.EXE.
Text Editor, Compiler &
Linking

An illustration of the linking process.


Object files and static libraries are
assembled into a new library or
executable In computing, a linker or
link editor is a computer utility
program that takes one or more
object files generated by a compiler
and combines them into a single An illustration of the linking process. Object
executable file, library file, or another files and static libraries are assembled into
'object' file. a new library or executable
Perbedaan COM & EXE
Program COM adalah salah satu jenis executable program.
Sebuah file-EXE (diucapkan “EKS”) adalah file computer yang
diakhiri dengan ekstensi [ .exe ] atau dikenal
sebagai executable-file. PROGRAM EXE :
PROGRAM COM : • Relatif lebih besar dibanding COM
• Relatif lebih kecil dibanding EXE • Lebih lambat dibanding dengan COM
• Lebih cepat dibanding EXE • Bisa menggunakan lebih dari 1 segment
• Hanya menggunakan 1 segment • Ukuran berkas tidak terbatas (sesuai
• Ukuran file maksimal 64 KB kemampuan memori)
• Sulit mengakses data/prosedur di segment lain • Mudah mengakses data/prosedur di
• Dapat dibuat dengan Debug segment lain
• Source file tidak boleh menggunakan referensi • Tidak dapat dibuat dengan Debug dari
segment tertentu DOS.
• Source file tidak boleh memakai data segment • Source file boleh memilih memakai
• Source file tidak boleh memakai stack segment segment tertentu.
• Harus diawali dengan ORG 100H, artinya pada • Source file boleh memakai data segment
Code segment yang dipilih, executable code • Source file boleh memakai stack segment
ahrus mulai di CS:0100 • Tidak perlu menggunakan ORG 100H
untuk setiap Code segment.
Perbedaan COM & EXE
A COM file is a type of simple executable file. On the Digital
Equipment operating systems of the 1970s, .COM was used
as a filename extension for text filescontaining commands to
be issued to the operating system (similar to a batch file).
File exe adalah salah satu jenis yang paling berguna,
karena bisa menjalankan bermacam program. Ketika
seseorang mengklik file-exe,rutin-built-in (baris bahasa
pemrograman) secara otomatis meng-
eksekusi (menjalankan) kode-program yang dapat
mengatur beberapa fungsi didalamnya untuk menjadi aktif.

File-exe digunakan untuk menginstal dan menjalankan


program dan routine, namun, ini juga membuatnya memiliki
potensi bahaya.
Perbedaan COM & EXE
File EXE dapat digunakan sebagai sistem (alat) pengiriman
virus atau program berbahaya lainnya. Secara lahiriah, file-
exe yang terinfeksi mungkin tampak tidak berbahaya.
Meng-kliknya mungkin hanya untuk memulai menjalankan
sebuah kartun animasi atau game arcade sederhana.

Namun, kode yang tak terlihat dapat berjalan di latar


belakang, kemudian menginfeksi komputer. Jika anda
meng-klik file-exe-berbahaya (malicious software
/malware), selama beberapa jam/hari berikutnya, komputer
dapat menjadi tidak stabil.
Pencegahan
Pencegahan
Karena potensi bahaya yang dimilikinya, maka saat men-download file-exe, adalah
ide yang baik untuk memindai (scan) dengan virus scanner yang baik sebelum
meng-kliknya. Untuk tujuan ini, para
pakar keamanan merekomendasikan pengaturan / setting
browser, sehingga situs web tidak dapat menjalankan program (file-exe) secara
otomatis.

Hal ini memberi kesempatan Anda untuk memeriksa program (file-exe) mana
yang bisa dengan aman disimpan dikomputer. Paling aman adalah berhati-hati.
Selalu disarankan untuk menjaga anti virus selalu up to date, dan menghapus
email dari sumber yang tidak diketahui, terutama pada lampiran
atau attachment email. Jika Anda menerima file-exe dari seseorang yang Anda
percaya, scan terlebih dahulu sebelum mengkliknya. Bahkan file yang datang dari
sumber terpercaya, dapat di-intervensi oleh pihak ketiga tanpa sepengetahuan
sumber itu.
Contoh File EXE
Bentuk Angka, Label dan Komentar
dalam bahasa rakitan
Dari perbandingan tersebut terlihat bahwa program COM lebih sederhana
dibanding program EXE. Baris-baris instruksi program dikenal dengan nama
Mnemonic, ditulis dan disimpan dalam file berekstensi ASM misalnya: Coba1.ASM

Label dan Komentar


Label pada program merupakan address memori yang diberi nama unik misalnya :
Pada alamat 0000:0400 akan diberi nama label Data_BIOS. Maka susunan
penulisan Label dalam pernyataannya adalah :
SEGMENT AT 0000H
ORG 0400H
Data_BIOS LABEL WORD
Atau jika kita ingin memulai suatu program dan diberi Label MULAI maka
penulisannya adalah::
Code Segment
Assume CS: Code
ORG 100H
MULAI:
……….…
………….
Bentuk Angka, Label dan Komentar
dalam bahasa rakitan
Label yang dibuat untuk pengarah data (directive) sering digunakan adalah EQU
singkatan dari EQUate. Kegunaannya untuk memberi nama pada angka atau
konstanta yang dianggap penting.
Contohnya:
ANGKA EQU 0B800H ; 0B800H diberi nama ANGKA
Kolom EQU 80 ; angka 80 diberi nama Kolom
Sedangkan komentar pada program dibuat hanya sebagai catatan atau remark
yang tidak berarti apa-apa dan tidak dieksekusi oleh CPU. Komentar pada
program diberi tanda titik koma (;) diberi kata-kata atau kalimat tentang program.
Misalnya:
; Program ini dibuat dengan Turbo Assembler (komentar)
; Author by :
; Date :
Code segment
Assume Cs: Code
Org 100h
Mulai: (merupakan suatu Label)
Perintah MOV & INT
Perintah MOV
Perintah ini merupakan perintah dasar pemrograman
bahasa rakitan untuk memindahkan data dari lokasi asal
ke lokasi tujuan berupa register atau lokasi memori.
Instruksinya (mnemonic) adalah MOV dengan sintaks:
MOV lokasi tujuan, lokasi asal
Contoh:
MOV CX, 05 ; angka 5 disimpan di register CX
MOV AX, 005AH ; angka 005AH disimpan di AX
MOV BX, AX ; isi AX disimpan ke BX
MOV [200], BX ; isi BX disimpan di lokasi memori 200
MOV [BX], [200]; isi data di lokasi memori 200 disimpan di
alamat BX.
Perintah MOV & INT
Untuk membuat program bahasa rakitan
/assembler memerlukan perlengkapan
berupa software antara lain: DOS
dengan DEBUG.COM atau TURBO
ASSEMBLER
dengan TASM.EXE dan TLINK.EXE
Perlengkapan lainnya adalah Teks Editor
berupa EDIT.COM, SK.COM (Side Kick)
atau Notepad pada Windows.
Model Program COM
Membuat program COM dapat menggunakan 2 cara
yaitu dengan Debug pada DOS atau dengan Turbo
Assembler.
Label pada program merupakan nama yang dapat
mewakili alamat memori (memory address), sebagai
directive (pengarah), start program, prosedur atau
keperluan lainnya.
Komentar merupakan tanda titik koma pada program
yang tidak akan dieksekusi hanya keterangan tentang
program atau baris program.
Perintah MOV merupakan perintah dasar dalam
bahasa rakitan yang dipakai untuk mentransfer data
angka, register, alamat memori (lokasi memori)
LATIHAN
Translasikan kedalam bahasa pemrograman Assembler dari pernyataan /
statement dibawah !

Statemen Translasi ke Assembler

1. B = A ………………………..

2. A = 5 – A ………………………..

3. A = B – 2 X ………………………..
LATIHAN
Nama File : Penjumlahan bilangan 32 Bit.asm

ORG 100H
;Lakukan penjumlahan bilangan 32 bit
;antara bilangan 9876AB34h dan
;bilangan 8176CF0ah dengan cara
;menggunakan operasi ADD dan ADC

MOV BX, 0AB34H


ADD BX, 0CF0AH
MOV AX, 9876H
ADC AX, 8152H

RET

Jelaskan script/ code assembler diatas !


LATIHAN
Nama File : Add-sub.asm
name "add-sub"
org 100h
mov al, 5 ; bin=00000101b
mov bl, 10 ; hex=0ah or bin=00001010b
; 5 + 10 = 15 (decimal) or hex=0fh or bin=00001111b
add bl, al
; 15 - 1 = 14 (decimal) or hex=0eh or bin=00001110b
sub bl, 1
; print result in binary:
mov cx, 8
print: mov ah, 2 ; print function.
mov dl, '0'
test bl, 10000000b ; test first bit.
jz zero
mov dl, '1'
zero: int 21h
shl bl, 1
loop print
; print binary suffix:
mov dl, 'b'
int 21h
; wait for any key press:
mov ah, 0
int 16h
ret

Jelaskan script/ code assembler diatas !


NEXT …
• Syntax Bahasa Assembly/ Rakitan
• Data
• Variable
• Instruksi Dasar
• ORG 100H
• JMP
• MOV
• XCHG
• ADD, SUB, INC dan DEC
• NEG
• INT 21H
• Instruksi Input dan Output
• Pengalamatan Tidak Langsung
• Array (Larik)

Anda mungkin juga menyukai