Minggu, 09 Oktober 2011

Ujian Tengah Semester Bahasa Rakitan (Teori) STMIK WUP 2011

1. Tahapan yang dilakukan dalam mendevelop sebuah program dengan bahasa Assembly sebagai berikut : 
  • Menentukan tujuan pembuatan program
  • Menyusun coding sesuai dengan tujuan yang telah didtetapkan pada Notepad dengan file berekstensi 'ASM" 
  • Kemudian jalankan program Assembly menggunakan DOS
  • File yg berkestensi 'ASM' tadi di compile menjadi file yang berekstensi 'OBJ' dengan perintah 'tasm nama file'.
  • Lihat hasil compile apakah terdapat error coding, jika terdapat error coding perbaiki file yang berekstensi 'ASM' tadi pada Notepad. Ulangi langkah k-4
  • Jika sudah tidak ada error coding selanjutnya compile file 'OBJ' menjadi file berkestensi 'COM' dengan perintah 'tlink/t'
  • Uji program tersebut dengan cara memanggil nama file tersebut apakah sudah sesuai dengan tujuan pembuatan program
2. Perbedaan melakukan linking sebuah file 'OBJ' menggunakan parameter /t dan tanpa /t
/t untuk mendeklarasikan urutan eksekusi compile program
Tanpa /t maka terjadi penumpukan data (stack) yaitu tidak bisa menentukan urutan/prioritas eksekusi compile program (program bingung)

3. Contoh coding program pengulangan
====================================================
.model small
.code
org 100h
mulai:
    mov ah,02h
    mov dl,'A'
    mov cx,4
    lagi:
    int 21h
    inc dl
    loop lagi
    int 20h
end mulai

Output programnya : A B C D
====================================================

4. Analisis coding program
====================================================
.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
====================================================
Dari analisis coding ditemukan kesalahan dan kekurangan yaitu:

  • Analisis coding terdapat pada 'inc cx' yang seharusnya 'inc al','inc dl' atau tidak ada 'inc cx'. Karena 'cx' berfungsi untuk menentukan jumlah perulangan. 
  • Coding program kurang perintah mengakhiri yaitu 'end mulai'.
Hasil perbaikan coding :
  • Jika 'inc cx' diganti dengan 'inc al' hasilnya mencetak huruf 'B' sebanyak 8 kali. Dengan demikian fungsi 'inc al' tidak ada fungsinya karena salah pengalamatan yang seharusnya pengalamtanya ke 'inc dl' 
  • Jika 'inc cx' diganti dengan inc dl hasilnya 'B C D E F G H I' yang artinya looping sebanyak 8 kali dan penambahan 1 (satu) kode ASCII

Tidak ada komentar:

Posting Komentar

Lukman Alfasiry © 2008. Design by :vio Templates Sponsored by: gold bola