Powered by Blogger.
RSS

Praktikum Mikroprosesor


Laporan 2 Praktikum Mikroprosesor

Anggota Kelompok:   1. Rahmayezi Edwar
                                  2. Rani Novesari

Pemrograman Assembler 8086 dengan Turbo Assembler
1.    Tujuan
Setelah melakukan praktikum ini diharapkan mahasiswa mampu:
1.      Membuat program assambler sederhana menggunakan text editor dengan compiler tasm sebagai compiler assambler (Turbo Assambler)
2.      Menjelaskan perbedaan pembuatan program berekstensi COM dan EXE
3.      Menjelaskan program percabangan, perbandingan dan pencetakan pada layar

2.    Dasar Teori
Secara umum struktur penulisan suatu segment dapat dilukiskan sebagai berikut:
[Nama Segment] segment
ASSUME CS:[Segment] DS:[Segment] SS:[Segment] ES:[Segment]
Org 100h
[label]: [Program ASM]
-
-
[nama segment] ends
            End [label]
Penulisan awal program juga ditentukan oleh ekstensi program COM atau EXE
Pada Penulisan program .COM  pemberian Org 100h, merupakan awal mulai menulis program pada alamat 100h. Hal ini hanya berlaku untuk program yang berektensikan com, karena 100h alamat sebelum digunakan untuk PSP (program segment prefiks). Disamping itu juga Org menujuk lokasi memori tertentu dari suatu segment.
Penulisan Assume cukup dituliskan 1 segmen saja, yaitu:
Assume CS:Code_Seg
Tetapi bila menuliskan program .EXE, penulisan segmen harus benar-benar menunjukkan arah yang benar, contoh:
Assume CS:Code_Seg DS:Data_Seg SS:Stack_Seg ES:0b800h
Org 0h
Syarat Label:
-       Harus unik
-       Maksimal 31 karakter
-       Karakter yang boleh digunakan:
·      Alphabet
·      Angka
·      Tanda Dollar ($)
·      Tanda Tanya (?)
·      Titik (.)
·      Tanda satuan (@)
-       Bukan merupakan suatu perintah assambler
-       Label hanya dapat didefinisikan satu kali dalam program
Mendefinisikan variabel
Pada bahasa assambler, variabel dibagi menjadi 2 jenis:
1.    variabel yang dapat dimodifikasi isinya
2.    variabel yang tidak dapat dimodifikasi isinya
Variabel yang dapat dimodifikasi isinya
Variabel ini adalah variabel yang memakan tempat pada memori.
Adapun besaran-besaran variabel tersebut adalah
-    DB (Define Byte), mendefinisikan variabel per Byte
-    DW (Define Word), mendefinisikan variabel per Word (2 Byte)
-    DD (Define Double Word) mendefinisikan variabel per 2 Word (4 Byte)
Tata penulisan variabel jenis ini adalah
Label (DB/DW/DD) [Isi Variabel]
Contoh
Satu db ‘Aku adalah anak gembala $’
Dua db 1234h
Tiga db 12h
Variabel yang tidak dapat dimodifikasi isinya
Variabel ini digunakan untuk menggantikan besaran tertentu dengan menggunakan kata equ dan variabel ini tidak menggunakan memori.
Contoh penggunaan variabel ini adalah
Satu equ 2190h
Dua equ 2323h
Int 21h service number 09h
Interupt ini digunakan untuk mencetak suatu kalimat, dengan syarat-syarat sebagai berikut
-    Masukkan service number interupt pada register AH
-    Masukkan segment dari variabel tempat menampung kalimat yang akan dicetak ke register DS dan offsetnya ke register DX.
-    Kalimat yang akan dicetak harus diakhiri dengan tanda $ (dollar)

3.    Alat dan Bahan
a. PC
b. Utility Debug

4.    Pengujian
a. Mencetak sebuah kalimat
Langkah Kerja:
1.     Membuka text editor notepad atau masuk ke command prompt dan mengetik edit lalu enter
2.     Mengetik program berikut:
3.     Menyimpan program ini di D:\cd TI (folder TI di directory D) dengan ekstensi .asm, jika dalam notepad pada type file diubah ke allfile.
4.     Cara compile program
Mengetik D:\TI>tasm nama program.asm
Gambar 2.1
Jika sudah tertampil seperti gambar 2.1 maka tidak terjadi kesalahan dalam penulisan program, kemudian melanjutkan mengetik D:\TI>tlink /t nama program
Gambarb 2.2
Jika sudah tertampil seperti gambar 2.2 maka proses compiling sudah selesai, cetak1.com siap dipanggil.

b.  Input per Huruf
1.     Mengetik program berikut:

2.     Compile dan menyimpannya

3.     Mengetik program berikut:

4.     Menyimpan program dan compile

c.  Membandingkan output program 1 dan output program 2
1.     Mengetik program berikut


2.     Menyimpan dan compile

d. Menghapus layar
1.     Mengetik program berikut

2.     Menyimpan dan compile

3.     Mengetik program berikut


4.     Menyimpan dan compile

e.  Membuat aplikasi password
1.     Mengetik program berikut


2.     Menyimpan dan compile

3.     Mengetik program berikut

4.     Menyimpan dan compile


f.   Mencetak karekter pada posisi yang diinginkan
1.     Mengetik program berikut

2.     Menyimpan dan compile


5.    Kesimpulan
a.       Dengan bahasa assembler kita dapat membuat berbagai aplikasi.
b.      Untuk membuat program kita dapat menggunakan notepad atau text editor
c.       Untuk lebih memahami program kita harus tahu fungsi dari program tersebut baris per baris.
d.      Pemrograman dengan bahasa assembler dengan menggunakan notepad atau text editor pada command prompt disebut juga turbo assembler

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • RSS