Senin, 10 Oktober 2011

UTS TEORI PBR

UTS SMT III PEMROGRAMAN BAHASA RAKITAN 
Dosen : Nahar Mardiyantoro,M.Kom

Teori
1. Tahapan dalam mendevelop sebuah sorftware menggunakan   bahasa assembley :
    1) Coding (membuat coding)
   2) Compare (bandingkan)
   3) Link (linking merubah file obj)
   4) Run (jalankan)
    * Langkah pertama lakukan pengcodingan/ buat coding menggunakan notepad. dalam membuat coding ada beberapa ketentuan karena kita menjalankan program assembley menggunakan DOS (Disk Operating System) dimana dalam DOS function service terdapat beberapa pasangan untuk mengerjakan beberapa intruksi , sedangkan DOS memiliki banyak fungction service sehingga dibutuhkan servis untuk menampilkan perintah. Simpan dalam file asm .
     * Langkah kedua lakukan compare yaitu membandingkan antara coding yang kita buat dalam notepad dengan turbo assembler. Tentunya  kita harus memiliki file asm yang terdiri dari RTM.EXE,TASM.EXE, TASM.HLP, TLINK.CFG dan TLINK.EXE ini merupakan syarat agar kita dapat menjalankan turbo assembler.
     * Langkah ketiga linking, yaitu  merubah file objek kedalam bahasa mesin dengan syarat memanggil tLink/t nama file objek.obj 
     * langkah keempat jalankan program turbo assembler dengan perintah Run ==>nama file.com

2. Perbedaan yang dihasilkan apabila kita melakukan linking terhadap sebuah file OBJ menggunakan parameter  /t dan tanpa /t dapat dilihat pada gambar berikut :

dari hasil diatas dapat ditarik kesimpulan  sebagai syarat memanggil file objek jika menggunakan parameter /t maka hasil akan sesuai sedangkan bila tidak menggunakan parameter /t pada tLink hasil tetap sama namun ada peringatan atau warning : No Stack

3. Contoh program yang didalamnya berisikan perulangan 
.model small
.code
org 100h
mulai:

      mov ah,02h
      mov dl,65
      mov cx,13
ulang:
      int 21h
      inc dl
      loop ulang

int 20h

end mulai

Coding diatas merupakan perintah memunculkan abjad dari A -M .sebanyak 13 huruf maka digunakan mov cx 13 dimana register cx digunakan secara khusus untuk operasi looping  yangmana register ini menentukan berapa banyaknya looping yang akan terjadi.   Bila program dijalankan menggunakan turbo assembler maka hasilnya seperti gambar berikut, atau bisa juga  untuk contoh perintah perulangan menggunakan jawaban soal nomor 4  dibawah ini :


4. Pada program berikut terdapat ketidak sesuaian pada salah satu penggunaan registernya :
.model small
.code
org 100h
mulai:
      mov ah,02h
      mov dl,'B'
      mov cx,8
lagi:
      int 21h
     inc al     
     inc cx
      loop lagi
int 20h
end mulai

bila program dijalankan maka hasilnya seperti gambar berikut :
disini muncul ketidak sesuai dengan munculnya huruf B yang tidak terbatas sedangkan suatu register memiliki batasan karakter bila register yang dipakai sudah sesuai untuk membatasi karakter hanya perlu menambahkan tanda $ namun pada kasus diatas yang tidak sesuai adalah inc cx dimana register cx ini berfungsi untuk melakukan perintah looping yang sudah diminta untuk mengulang sebanyak 8 kali pada mov cx,8. yang benar adalah :

.model small
.code
org 100h
mulai:
      mov ah,02h
      mov dl,'B'
      mov cx,8
lagi:
      int 21h
     inc al     
     loop lagi
int 20h
end mulai

sehingga hasilnya sesuai yang diminta yaitu mengulang cetak huruf B sebanyak 8 kali seperti gambar berikut :




Demikian, semoga bermanfaat serta membawa kesuksesan dan keberuntungan.....amiin..

Tidak ada komentar:

Posting Komentar