meteor jatuh

Minggu, 09 Oktober 2011

TUGAS TEORI UTS 20011

UJIAN TENGAH SEMESTER
PEMPROGARAMAN BAHASA RAKITAN (ASSEMBLY)
STMIK WIDYA UTAMA 2011

1.  Tahapan-tahapan yang dilakukan dalam mendevelop sebuah program dengan bahasa Assembly yaitu :
  • 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:
  1. Analisis coding terdapat pada 'inc cx' yang seharusnya 'inc al','inc dl' atau tidak ada 'inc cx'. Karena 'cx' berfungsi untuk menentukan jumlah perulangan.
  2. Coding program kurang perintah mengakhiri yaitu 'end mulai'.
Hasil perbaikan coding :

  1. 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'
  2. 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

TUGAS PRAKTEK UTS 2011

UJIAN PRAKTEK MID SEMESTER
STMIK WIDYA UTAMA PURWOKERTO
1.
.model small
.code
org 100h
  
mulai:
    mov ah,09h
    mov bl,00000100b
    mov cx, 13
    ulang:
    int 10h
    inc bl
           
    mov ah, 02h
    mov dl,'A'
    mov cx, 13
    lagi:
    je bl
    int 21h
    inc dl
    loop lagi
    int 20h
end mulai

Hasil Output

2.


















===================================================================
.model small
.code
org 100h
mulai:
    vkal db 'STMIK WIDYA UTAMA$'
ulang:
    mov DL, vkal[12]
    mov ah,02h
    int 21h
    int 20h
    mov ax,bx
    cmp ax,11
    je exit
    inc bx
    jmp ulang
    exit:
    int 20h

end mulai
=====================================================================
Output Program