Anda di halaman 1dari 11

BAB IV

HASIL DAN ANALISA

4.1 Hasil Pengujian


• Program 1. Mencetak huruf ‘A’ ke layar
.MODEL SMALL
.CODE
ORG 100H
PROSES:
MOV AH,02H ; Nilai servis untuk mencetak karakter
MOV DL,'A' ; DL = Karakter ASCII yang akan dicetak
INT 21H ; Cetak karakter !!
INT 20H ; Selesai! Kembali ke DOS
END PROSES
• Program 2. Mencetak karakter beserta atribut
.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
• Program 3. Meminta memasukkan dan menampilkan masukan
.MODEL SMALL
ORG 100H
.DATA
MSG1 DB “ENTER YOUR CHARACTER : $” ; DB = Define Bytes
MSG2 DB 10,13, “THE CHARACTER IS $” ; DB bisa numerik atau text
.CODE
Start :
MOV DX,OFFSET MSG1 ; OFFSET meminta alamat t variabel
MOV AH,09H ; Nilai servis untuk mencetak karakter
INT 21H ; Cetak data pada alamat DX
MOV AH,01H ; Nilai servis untuk mencetak karakter
INT 21H ; Membaca masukan 1 karakter
MOV BL,AL ; Menyimpan isi AL ke BL
MOV DX,OFFSET MSG2 ; OFFSET meminta alamat variabel
MOV AH,09H ; Nilai servis untuk mencetak karakter
INT 21H ; Cetak data pada alamat DX
MOV DL,BL ; Menyimpan isi BL ke DL
MOV AH,02H ; Nilai servis untuk mencetak karakter
INT 21H ; Cetak data pada alamat DL
INT 20H ; Exit Program
END START
4.2 Analisa
Dalam praktikum Mikroprosesor pada modul I ini kita membahas tentang pengantar
mikroprosesor dan bahasa pemrograman bahasa assembly (intrupsi dan input/output).
Pada praktikum kali ini terdapat tiga tujuan yaitu yang pertama, praktikan mampu
memahami dan menjelaskan cara kerja mikroprosesor dan menggunakan bahasa
pemrograman assembly untuk memprogram mikroprosesor. Kedua, mampu memahami
fungsi dari interupsi pada mikroprosesor. Ketiga, memahami cara meminta masukan dari
keyboard dan menampilkan pada layer. Adapun alat dan bahan yang digunakan pada
praktikum ini diantaranya Komputer dan Aplikasi Emu8086.
Mikroprosesor merupakan suatu komponen rangkaian elektronik terpadu yang terdiri
dari rangkaian aritmatik, logic dan kontrol yang diperlukan untuk menjalankan fungsi-
fungsi sebuah CPU (central processing unit) dari sebuah komputer digital. Mikroprosesor
atau lebih dikenal dengan prosesor merupakan otak atau inti pada sebuah komputer,
dimana prosesor tersebut dapat memerintahkan komponen lain untuk melakukan suatu
proses atau intruksi. Di dalam prosesor pada saat ini ada yang memiliki GPU (graphic
processing unit) yang berfungsi untuk memproses masukan grafis pada komputer
kemudian memprosesnya untuk ditampilkan pada layar monitor. Rangkaian elektronika
pada mikroprosesor tersebut dapat menerjemahkan instruksi dari sebuah program serta
menangani operasi aritmatik.
Mikroprosesor tidak hanya digunakan pada personal computer (PC) desktop atau
laptop tetapi mikroprosesor digunakan pada berbagai peralatan atau berbagai produk,
seperti automatic taller machine, kontrol pada robot, kontrol pompa bensin, sistem
pengontrol lampu lalu lintas dan sebagainya. Mikroprosesor memiliki banyak tipe, namun
pada umumnya isi dari mikroprosesor tersebut sama. Salah satu chip mikroprosesor yang
dikembangkan oleh Intel pada tahun 1970-an adalah mikropresosr tipe 8085 dan seri
selanjutnya yaitu 8086. Adapun perbedaan dari kedua buah mikroporesesor tersebut
adalah pada seri 8085 merupakan tipe 8 bit sedangkan pada seri 8086 merupakan tipe 16
bit. Adapun tipe mikroprosesor yang digunakan pada praktikum ini yaitu mikroprosesor
8086. Isi mikroprosesor 8086 dibagi menjadi dua berdasarkan fungsinya, yaitu EU
(execution unit) dan BIU (bus interface unit). EU memberi instruksi pada BIU untuk
memulai dari mana data yang ingin dieksekusi, diambil lalu diterjemahkan menjadi
bahasa mesin sebelum dieksekusi. Execution unit tidak langsung terhubung dengan
sistem bus, tetapi dia memproses data melalui bus interface unit. BIU mengurus semua
transfer data dan alamat antar bus untuk EU seperti pengiriman alamat, mengambil
instruksi dari memori, membaca dan menulis data ke port maupun memori.
Pada modul ini juga membahas tentang control system yang berfungsi untuk
mengatur aliran data bus dan alamat bus, menghasilkan sinyal dalam mikroprosesor untuk
melaksanakan instruksi yang diberikan. Control unit juga mengatur masuk keluarnya data
dan koneksi antar blok pada sistem mikroprosesor. Pada mikroprosesor terdapat register.
Register pada mikroprosesor merupakan memori pada komputer yang berkapasitas kecil
namun memiliki kecepatan baca yang sangat tinggi. Register pada mikroprosesor
diibaratkan sebagai kaki tangan dari mikroprosesor, karena dalam setiap pekerjaan,
mikroprosesor selalu mengandalkan dan melibatkan register sebagai perantara dan
sebagai komponen yang paling banyak melakukan pekerjaan mikroprosesor. Secara
umum fungsi register pada mikroprosesor adalah sebagai tempat penyimpanan sementara
untuk menyimpan hasil dari operasi aritmatika ataupun operasi logika yang dilakukan
oleh mikroprosesor. Terdapat 8 register yang umum yang dapat menyimpan data 8 bit,
yaitu AH, AL, BH, BL, CH, CL, DH, dan DL. Dan apabila register ini digabungkan maka
akan dapat menyimpan data sebesar 16 bit. Yang dapat digabung tersebut yaitu register
yang sejenis, contohnya AH dan AL yang disebut AX, BH dan BL digabung menjadi BX,
dan begitu seterusnya.
Pada Program pertama yang akan dibuat yaitu program untuk mencetak huruf ‘A’ ke
layar output. Pada baris pertama terdapat .MODEL SMALL yang berfungsi sebagai
bentuk memori yang digunakan dengan menyediakan memori untuk masing-masing
program dan data tidak lebih dari 64 kb. Kemudian pada baris kedua yaitu .CODE, yaitu
untuk memberitahukan assembler bahwa terdapat kode-kode atau kodingan. Kemudian
ORG 100H, yaitu untuk memberitahukan kepada assembler bahwa terdapat alamat
program atau memori. Kemudian terdapat PROSES, yaitu sebagai nama label. Pada
pemrograman assembly harus mengawali program dengan label. Selanjutnya MOV AH,
02H artinya menyuruh program nantinya akan mencetak sebuah karakter yang ada pada
register dl. Atau dengan kata lain yaitu servis untuk mencetak sebuah karakter. Kemudian
MOV DL, ‘A’, yaitu mengisi register DL dengan karakter ASCII, dapat menggunakan 65
atau ‘A’. Kemudian INT 21H, yaitu menjalankan interupsi atau mengeksekusi perintah
(Menampilkan di layer hitam). Interupsi ini akan mengerjakan sesuai dengan nilai servis
yang diisikan. Karena ada perintah MOV AH, 02H, maka program akan mencetak
karakter yang ada pada register DL. Kemudian INT 20H, yaitu mengembalikan fungsi ke
program. Interupsi ini berfungsi untuk mengembalikan kontrol ke DOS, dengan kata lain
interupsi ini digunakan untuk menghentikan jalannya program. Kemudian terdapat END
PROSES, yaitu akhir dari program. Untuk mengakhiri program harus mengetikkan
perintah END diikuti oleh nama label yang pertama kali digunakan. Pada program 1
output yang ditampilkan pada emulator screen adalah hanya huruf ‘A’ sesuai dengan
judul program pertama.
Pada program kedua yaitu mencetak karakter beserta atribut. Untuk bagian
headernya masih sama dari program yang pertama. Kemudian terdapat MOV AH, 09H,
yaitu nilai servis untuk mencetak karakter. Kemudian MOV AL, ‘A’, yaitu mengisi
register AL dengan karakter ‘A’. MOV BH, 00H, yaitu nomor halaman dari layar. MOV
BL, 93H, yaitu pemberian warna atau atribut pada karakter, dengan kode 93H, yang
berarti background berwarna Light blue dan tulisan berwarna Cyan. MOV CX, 03H, yaitu
register akumulasi yang berfungsi untuk mencetak banyaknya karakter yang diinginkan,
dengan kode 03H yang berarti ada 3 karakter yang dicetak. INT 10H, yaitu berfungsi
untuk mencetak warna pada karakter/string. INT 20H, yaitu mengembalikan fungsi ke
program. Interupsi ini berfungsi untuk mengembalikan kontrol ke DOS, dengan kata lain
interupsi ini digunakan untuk menghentikan jalannya program. Pada program 2 output
yang ditampilkan pada emulator screen adalah 3 buah huruf A dengan warna background
light blue dan warna font cyan.
Pada program ketiga yaitu untuk meminta memasukkan dan menampilkan masukan.
Pada baris pertama terdapat .MODEL SMALL yang berfungsi sebagai bentuk memori
yang digunakan dengan menyediakan memori untuk masing-masing program dan data
tidak lebih dari 64 kb. Kemudian pada baris kedua yaitu ORG 100H, yaitu untuk
memberitahukan kepada assembler bahwa terdapat alamat program atau memori. Lalu
terdapat .DATA berfungsi untuk memberitahukan kepada assembler bahwa terdapat data
data yang akan digunakan. Pada baris selanjutnya terdapat Msg1 DB merupakan
penamaan alamat offset dan DB merupakan Define Bytes, DB bisa berupa karakter
numerik ataupun text dengan nilai 8bit. Selanjutnya ada Msg2 DB 10,13 yang mana 10
merupakan new line dan 13 digunakan untuk rata kiri dan ada lambang dollar “$” atau
string yaitu kumpulan dari beberapa variabel atau karakter. Lalu ada .CODE, yaitu untuk
memberitahukan assembler bahwa terdapat kode-kode atau kodingan. Kemudian terdapat
Start sebagai nama label. Selanjutnya MOV DX, OFFSET MSG1 yaitu OFFSET
meminta alamat t variabel. Lalu MOV AH, 09H untuk mencetak beberapa karakter secara
otomatis. Kemudian INT 21H yaitu menjalankan interupsi atau mengeksekusi perintah
(Menampilkan di layer hitam). Interupsi ini akan mengerjakan sesuai dengan nilai servis
yang diisikan. Lalu MOV AH, 01H untuk mencetak 1 buah karakter secara manual
dengan inputan keyboard dan MOV BL, AL untuk menyimpan nilai servis secara
sementara dari isi AL ke BL. Lalu INT 20H, yaitu mengembalikan fungsi ke program.
Interupsi ini berfungsi untuk mengembalikan kontrol ke DOS, dengan kata lain interupsi
ini digunakan untuk menghentikan jalannya program. Kemudian terdapat END Start yaitu
akhir dari program. Pada program 3 output yang ditampilkan pada emulator screen adalah
karakter yang kita masukkan sesuai dengan keinginan lalu menampilkannya ke layer.
4.3 Tugas Akhir
Buatlah nama dan nim kalian dengan ketentuan:
Ganjil (Background warna Brown dan font nya Light Green)
.MODEL SMALL
ORG 100H
.DATA
MSG1 DB "MAULANA MAWARDI",10,13,"$" ; DB = Define Bytes
MSG2 DB "202011171","$" ; DB bisa numerik atau text
.CODE
PROSES :
MOV DX,OFFSET MSG1 ; OFFSET meminta alamat t variabel
MOV AH,09H ; Nilai servis untuk mencetak karakter
MOV BL,6AH ; Warna atau atribut dari karakter
MOV CX,15D ; Banyaknya karakter yang ingin dicetak
INT 10H ; Laksanakan !!
INT 21H ; Cetak data pada alamat DX
MOV DX,OFFSET MSG2 ; OFFSET meminta alamat variabel
MOV AH,09H ; Nilai servis untuk mencetak karakter
MOV BL,6AH ; Warna atau atribut dari karakter
MOV CX,09H ; Banyaknya karakter yang ingin dicetak
INT 10H ; Laksanakan !!
INT 21H ; Cetak data pada alamat DX
INT 20H ; Selesai! Kembali ke DOS
END PROSES
Analisa:
Pada Tugas akhir ini praktikum mikroprosesor ini membahas tentang membuat nama dan
nim sesuai dengan ketentuan. Untuk warna background dan warna font dengan NIM
ganjil warna background berwarna coklat atau brown dan warna font berwarna light
green. Pada baris pertama terdapat .MODEL SMALL yang berfungsi sebagai bentuk
memori yang digunakan dengan menyediakan memori untuk masing-masing program
dan data tidak lebih dari 64 kb. Kemudian pada baris kedua ORG 100H, yaitu untuk
memberitahukan kepada assembler bahwa terdapat alamat program atau memori. Lalu
terdapat .DATA berfungsi untuk memberitahukan kepada assembler bahwa terdapat data
data yang akan digunakan. Pada baris selanjutnya terdapat Msg1 DB merupakan
penamaan alamat offset dan DB merupakan Define Bytes, DB bisa berupa karakter
numerik ataupun text dengan nilai 8bit. Selanjutnya ada Msg2 DB 10,13 yang mana 10
merupakan new line dan 13 digunakan untuk rata kiri dan ada lambang dollar “$” atau
string yaitu kumpulan dari beberapa variabel atau karakter. Lalu ada .CODE, yaitu untuk
memberitahukan assembler bahwa terdapat kode-kode atau kodingan. Kemudian terdapat
PROSES sebagai nama label. Pada pemrograman assembly harus mengawali program
dengan label. Selanjutnya MOV DX, OFFSET MSG1 yaitu OFFSET meminta alamat t
variabel. Lalu MOV AH, 09H untuk mencetak beberapa karakter secara otomatis. Lalu
MOV BL, 6AH, yaitu pemberian warna atau atribut pada karakter, dengan kode 6AH,
yang berarti background berwarna coklat dan tulisan berwarna light green. MOV CX,
15D, yaitu register akumulasi yang berfungsi untuk mencetak banyaknya karakter yang
diinginkan, dengan kode 15D yang berarti ada 15 karakter yang dicetak. INT 10H, yaitu
berfungsi untuk mencetak warna pada karakter/string. Kemudian INT 21H yaitu
menjalankan interupsi atau mengeksekusi perintah (Menampilkan di layer hitam).
Interupsi ini akan mengerjakan sesuai dengan nilai servis yang diisikan. Lalu INT 20H,
yaitu mengembalikan fungsi ke program. Interupsi ini berfungsi untuk mengembalikan
kontrol ke DOS, dengan kata lain interupsi ini digunakan untuk menghentikan jalannya
program. Kemudian terdapat END PROSES yaitu akhir dari program.
BAB V
PENUTUP

5.1 Kesimpulan
• Mikroprosesor merupakan suatu komponen rangkaian elektronik terpadu yang
terdiri dari rangkaian aritmatik, logic dan kontrol yang diperlukan untuk
menjalankan fungsi-fungsi sebuah CPU (central processing unit) dari sebuah
komputer digital.
• Interupsi adalah suatu permintaan khusus kepada mikroprosesor untuk melakukan
sesuatu. Apabila terdapat interupsi, maka mikroprosesor akan melakukan hal yang
diminta oleh interupsi tersebut, dan menghentikan hal yang sedang dikerjakan.
• Untuk mencetak karakter secara manual dengan inputan keyboard menggunakan
MOV AH, 01H, kemudian untuk menjalankan interupsi atau mengeksekusi
perintah (Menampilkan di layer hitam), maka menggunakan INT 20H. Interupsi
ini akan mengerjakan sesuai dengan nilai servis yang diisikan

5.2 Saran
• Pada saat memasukkan program, lebih teliti kembali, karena dapat terjadi error
pada source code yang digunakan.
• Pada saat running, sebaiknya menggunakan single step, agar mengetahui fungsi
tiap-tiap baris pada source code.

Anda mungkin juga menyukai