14
Eksplorasi Prosesor 8086 Dengan Program DEBUG Program DEBUG dapat digunakan untuk mengeksplorasi keluarga prosesor 8086 termasuk PENTIUM pada PC Program DEBUG telah disertakan setiapkali user melakukan instalasi WINDOWS Untuk menjalankan DEBUG, click Start-Run, kemudian ketik CMD dan click OK sehingga muncul pada layar prompt DOS. Dari prompt DOS ketik DEBUG: C:>DEBUG diikuti ENTER Prompt DEBUG ditandai dengan tanda minus dikuti kursor berkedip: -_ Terdapat 19 menu DEBUG, untuk melihatnya ketik -? diikuti ENTER

Ekplorasi Mikroprosessor Dengan Debug

  • Upload
    yopi

  • View
    230

  • Download
    13

Embed Size (px)

DESCRIPTION

Modul Mikroprosesor

Citation preview

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Program DEBUG dapat digunakan untuk mengeksplorasikeluarga prosesor 8086 termasuk PENTIUM pada PC

    Program DEBUG telah disertakan setiapkali user melakukaninstalasi WINDOWS

    Untuk menjalankan DEBUG, click Start-Run, kemudian ketikCMD dan click OK sehingga muncul pada layar prompt DOS.

    Dari prompt DOS ketik DEBUG:C:>DEBUG diikuti ENTER

    Prompt DEBUG ditandai dengan tanda minus dikuti kursorberkedip:- _

    Terdapat 19 menu DEBUG, untuk melihatnya ketik -? diikuti ENTER

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Melihat isi register, ketik:-R diikuti ENTER, maka akan muncul di layar:

    Hal itu menandakan bahwa isi register AX=0000 atau AH=00 dan AL=00,

    BX=0000 atau BH=00 dan BL=00, CX=0000 atau CH=00 dan CL=00,DX=0000 atau DH=00 dan DL=00

    Keadaan set dan reset register bendera pada DEBUG dinyatakandengan singkatan NV, UP, EI, PL, NZ, NA, PO, NC

    AH AL

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Singkatan untuk keadaan register bendera:Coba kita perhatikan register bendera kondisi saja yaknibendera overflow, bendera sign, bendera zero, benderaauxiliary carry, bendera parity dan bendera carry. Keadaan set dan reset bendera-bendera itu dinyatakandengan singkatan:Bendera overflow:

    OV (Overflow atau terjadi overflow atau OF=1=set)NV (No Overflow atau tidak terjadi overflow atau

    OF=0=reset)Bendera sign:

    NG (Negative atau SF=1=set)PL (Plus atau SF=0=reset)

    Bendera zero:ZR (Zero atau ZF=1=set)NZ (No Zero atau ZF=0=reset)

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Bendera auxiliary carry:NA (No Auxiliary carry atau AF=0=reset)AC (Auxiliary carry atau AF=1=set)

    Bendera paritas:PO (Parity Odd=paritas ganjil atau PF=0=reset)PE (Parity Even=paritas genap atau PF=1=set)

    Bendera Carry:NC (No Carry atau CF=0=reset)CY (carry atau CF=1=set)

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Contoh jika DEBUG menampilkan keadaan flag:

    NV UP EI PL NZ NA PO NC

    Artinya: hasil perhitungan ALU tidak overflow (NV), bernilai positif (PL), tidakbernilai 0 (NZ), tidak ada carry pada penjumlahan bit ke-3 (NA), berparitasganjil (PO) dan tidak ada carry (NC)

    Analisis:Misal kita menulis program assembly dengan perintah A dan menjalankannyabaris demi baris dengan perintah T (trace):

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Perintah di atas yakni:MOV AL,3ADD AL,2

    ketika baris pertama dijalankan, isi AL=03 dan setelahbaris kedua dijalankan isi AL menjadi AL=05 heksadesimal. Hal itu menunjukkan bahwa instruksipertama MOV AL,3 menyebabkan akumulator AL terisi 3 heksadesimal, baris kedua menyebabkan isi AL ditambah dengan 2 heksadesimal sehingga menjadi 5 heksadesimal. Pada akhir pelaksanaan kedua perintahtersebut, DEBUG menghasilkan keadaan register bendera sebagai berikut:

    NV UP EI PL NZ NA PE NC

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Hal itu berarti:

    Hasil pemrosesesan TIDAK OVERFLOW (NV=NO OVERFLOW), mengapa?

    0 0000 010+03= 0000 0011+02= 0000 0010--------------------------------------

    AL= 0000 0101

    Carry (C)

    C1C7Cout C4

    Rumus: Terjadi overflow jika Cout dan C7berbeda, jika sama tidakoverflow!!!

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Hasil pemrosesan bernilai positif (PL=PLUS)

    Perhatikan, bit paling kiri bernilai 0 sehingga me nunjukkan bilangan itu +.

    Hasil pemrosesan tidak nol (NZ=NO ZERO)

    +03= 0000 0011+02= 0000 0010-----------------------AL = 0000 0101

    +

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Hasil pemrosesesan TIDAK ada auxiliary carry (NA=No Auxiliary Carry): Perhatikan C4 di atas! C4 adalah Auxiliary Carry. Karena C4=0 berarti tidak ada auxiliary carry. Sebaliknya jika C4=1, berarti ada auxiliary carry.

    Hasil pemrosesan berparitas genap (PE=parity even):Perhatikan hasil AL=0000 0101, krn jumlah 1nya genap maka hasil itu berparitas genap.

    Hasil pemrosesan tidak ada carry out (NC=NO Carry), karena Cout=0.

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    LATIHAN:

    Tulislah program assembly 8086 menggunakanaplikasi DEBUG untuk menjumlahkan bilanganheksadesimal:23+51, 23+(-51), 23-23, dan 23+7F. Amati setiapbaris program dijalankan. Lakukan analisisterhadap isi register bendera dari setiap prosesyang dilakukan. Kata kunci yang digunakanadalah MOV dan ADD, serta akumulator AL.

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    MEMORI:Melihat isi memori pada alamat 100:-D100 diikuti enterMisal jika kita menulis program assembly:

    MOV AL,3ADD AL,2

    maka DEBUG akan mengubahnya menjadi kode-kode mesin dalam format heksadesimal menjadi:

    MOV AL,3 B0 03ADD AL,2 04 02 format mesin

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Dengan menggunakan perintah D, akanditampilkan:

    Hal itu menunjukkan kode B0 disimpan di alamat100, kode 03 di alamat 101, kode 04 di alamat102, dan kode 02 di alamat 103.

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    Untuk melihat isi register sebelum perintah-perintah itudijalankan gunakan perintah R. Jika kedua perintahtersebut dijalankan baris per baris dengan perintah T, maka:

    terlihat mula-mula IP=100 (alamat awal program, dibuatotomatis oleh DEBUG), setelah baris 1 dijalankan IP=102 (alamat instruksi ke2). Jadi IP berisi alamat instruksiberikutnya yang akan dilaksanakan.

  • Eksplorasi Prosesor 8086 DenganProgram DEBUG

    LATIHAN:

    Susun program assembly dengan DEBUG:MOV AL,12ADD AL,35SUB AL,40

    Susunlah memori yang menunjukkan kode-kodemesin untuk instruksi2 tersebut disimpan! Berapaisi IP untuk setiap baris selesai dijalankan?

    Eksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUGEksplorasi Prosesor 8086 Dengan Program DEBUG