Minggu, 07 Desember 2014

UTS ASSEMBLER TI-5/PAGI

1. Sebutkan 8 general purpose register beserta fungsinya!
    - Register AX terdiri dari register AH dan register AL yang secara khusus berfungsi untuk operasi aritmatika terutama dalam operasi pembagian dan pengurangan.
    - Register BX terdiri dari register BH dan register BL berfungsi untukmenunjukan suatu alamat offset dari suatu segmen.
    - Register CX terdiri dari register CH dan register CL secara khusus berfungsi untuk operasi looping dimana register ini menentukan berapa banyak nya looping yang akan terjadi.
    - Register DX terdiri dari register DH dan register DL berfungsi untuk menampung sisa hasil pembagian 16 bit.



2.  Jelaskan tentang proses translasi, phase analysis, systhesis, carry flag serta Base Relative Addressing dan Register Addressing!
    - Proses Translasi : proses pengubahan
    - Phase Analysis : mencari arti dari source text, dengan menggunakan struktur tatabahasa (literal, syntax, semantic)
    - Synthesis : pemilihan machine operation code yang sesuai dengan mnemonic code
    - Carry Flag : register untuk menampung kelebihan bit yang didapat dari proses penjumlahan atau perkalian dua register 16 bit dan didapat hasil 17 bit
    - Base Relative Addressing : addressing yang biasanya digunakan untuk mengakses suatu table dengan mengambil alamat efektifnya
    - Register Addressing : suatu proses pengcopyan data antar register

3. Konversikan bilangan berikut ke decimal!
    a. D21h = 3361 d
        1 x 16^0       = 1
        2 x 16^1       = 32
        D/13 x 16^2 = 3328

    b. 11001010b = 202 d
        0 x 2^0 = 0
        1 x 2^1 = 2
        0 x 2^2 = 0
        1 x 2^3 = 8
        0 x 2^4 = 0
        0 x 2^5 = 0
        1 x 2^6 = 64
        1 x 2^7 = 128

    c. 75o = 61 d
        5 x 8^0 = 5
        7 x 8^1 = 56

    d. FCA0h = 64672 d
        0 x 16^0        = 0
        A/10  x 16^1 = 160
        C/12  x 16^2 = 3072
        F/15 x 16^3   = 61440

    e. 00110111b = 55 d
        1 x 2^0 = 1
        1 x 2^1 = 2
        1 x 2^2 = 4
        0 x 2^3 = 0
        1 x 2^4 = 16
        1 x 2^5 = 32
        0 x 2^6 = 0
        0 x 2^7 = 0

4. Buatlah sebuah program untuk menampilkan : I H G F E D C!
    .MODEL SMALL
    .CODE
    ORG 100h
    MULAI :
    MOV AX,3
    INT 10h
    MOV AX,1003h
    MOV BX,0
    INT 10h
    MOV AX,0b800h
    MOV DS,AX
    MOV [02h],‘I’
    MOV [04h],‘H’
    MOV [06h],‘G’
    MOV [08h],‘F’
    MOV [0ah],‘E’
    MOV [0ch],‘D’
    MOV [0eh],‘C'
    END

5. Sebutkan macam model dalam pemrograman assembler, dan perbedaan Exe dan Com!
    - Tiny : program hanya menggunakan 1 segment
    - Small : data dan kode yang digunakan oleh program kurang dari 1 segment atau 64 kb
    - Medium : data yang digunakan kurang dari 64 kb tetapi kode yang digunakan lebih dari 64 kb
    - Compact : data yang digunakan lebih dari 64 kb tetapi kode yang digunakan kurang dari 64 kb
    - Large : data dan kode yang digunakan lebih dari 64 kb
    - Huge : data dan code maupun array yang digunakan lebih dari 64 kb
      Perbedaan :
PROGRAM COM PROGRAM EXE
Program lebih pendek Program lebih panjang
Program lebih cepat Program lebih lambat
Hanya dapat menggunakan 1 segmen Bisa menggunakan lebih dari 1 segmen
Bisa dibuat dengan DEBUG Tidak bisa dibuat dengan DEBUG

6. Jelaskan script program dan hasil output di bawah ini:
    .MODEL SMALL = model yang digunakan small
    .CODE = tempat menuliskan kode
    ORG 100h = Program menggunakan offset 100h
    TEXT: JMP MULAI = Lompat ke MULAI
    TULIS DB ‘STMIK CIKARANG TEKNIK INFORMATIKA’ = Isi dari TULIS
     MULAI: = Label MULAI
    MOV AX,1300h = Beri nilai register AX=1300h
    MOV BL,10010101b = Beri nilai register BL=10010101b
    MOV BH,00h = Beri nilai register BH=00h
    MOV DL,20 = Beri nilai register DL=20 (posisi X)
    MOV DH,12 = Beri nilai register DH=12 (posisi Y)
    MOV CX,33 = Looping sebanyak 33 kali
    LEA BP,TULIS = Ambil alamat offset TULIS ke BP
    INT 10h = Cetak kalimat
    INT 20h = Kembali ke DOS
    END TEXT = Selesai

Tidak ada komentar:

Posting Komentar