17
Mode Pengalamatan (Addressing Mode) Keluarga Prosesor 8086

Mode Pengalamatan

Embed Size (px)

DESCRIPTION

Menjelaskan tentang Address mode

Citation preview

  • Mode Pengalamatan(Addressing Mode)

    Keluarga Prosesor 8086

  • Mode PengalamatanPada Mikroprosesor Keluarga 8086

    Merupakan cara memberikan perintahtransfer/pemindahan data dari lokasi satu kelokasi lainnya.

  • I. Mode Pengalamatan Segera(Immediate Addressing)

    Yaitu mode pengalamatan yang digunakan untuk mengisi suatu register dengan data

    Bentuk: MOV AL,5 Immediate Addressing

    SUMBER:

    DATA

    TUJUAN:

    REGISTER/ AKUMULATOR

  • Contoh Mode Pengalamatan Segera:

    MOV AX,A1B2 MOV BL,03 MOV BP,1234 Register yang dapat diisi data dengan mode pengalamatan

    segera: AX,BX,CX,DX,AL,AH,BL,BH,CL,CH,DL,DH, BP,SP,SI,DI

    Register segmen tidak dapat diisi dengan mode pengalamatan segera

    Alamat memori juga tidak dapat diisi secara immediate

  • II. Mode Pengalamatan Register(Register Addressing)

    Yaitu mode pengalamatan yang digunakan untuk mentransfer data (byte/word) dari register sumber ke register tujuan.

    Bentuk: MOV AL,BL

    SUMBER:

    REGISTER

    TUJUAN:

    REGISTER

  • Contoh Mode PengalamatanRegister:

    MOV AL, BL MOV AX, CX MOV CS, AX MOV CS, DS tidak diijinkan karena

    segment to segment MOV BL, BX Tidak dijinkan karena

    berbeda ukuran (mixed size)

  • Contoh Mode PengalamatanRegister:

    Susun perintah untuk mengisi register segmen DS dengan data 1234 heksadesimal!

    Jawab:MOV AX,1234 immediate addressingMOV DS,AX register addressing

  • III. Mode Pengalamatan Langsung(Direct Addressing)

    Yaitu mode pengalamatan untuk mentransfer data antar memori dan register

    Bentuk 1: MOV AL,[0120]

    SUMBER:

    ALAMAT RELATIF MEMORI

    TUJUAN:

    REGISTER

  • Contoh Bentuk 1:Susun instruksi assembly untuk memindahkan isi alamat10120 heksadesimal ke register AL, isi alamat 10150 heksadesimal ke register BL, dan isi alamat 10160 heksadesimal ke register CL! Anggap segment base 1000 tersimpan pada register DS!Jawab:

    MOV AX,1000 immediate addressingMOV DS,AX register addressingMOV AL,[0120] direct addressingMOV BL,[0150] direct addressingMOV CL,[0160] direct addressing

  • Bentuk 2: MOV [0120],AL

    SUMBER:

    REGISTER

    TUJUAN:

    ALAMAT MEMORI

    Contoh: susun instruksi untuk mengisi alamat 10120 dengan data 5 heksadesimal! Anggap segment base yang digunakan adalah1000 tersimpan dalam DS!

  • Jawab: MOV AX,1000 IMMEDIATE ADDRESSINGMOV DS,AX REGISTER ADDRESSINGMOV AL,5 IMMEDIATE ADDRESSINGMOV [0120],AL DIRECT ADDRESSING

    Tugas1: Susun instruksi untuk mengisi alamat 20150 heksadesimal dengan data 5, dan alamat 20160 heksadesimaldengan data 2. Isi kedua alamat tersebut dijumlahkan danhasilnay disimpan di alamat 20170 heksadesimal. Anggapsegment base yang digunakan adalah 2000 tersimpan denganDS! Gunakan program DEBUG untuk menguji program anda, tunjukkan dengan peta memori dan register bahwa progrsamtelah berjalan dengan baik.

  • IV. Mode Pengalamatan Tak Langsung(Indirect Addressing)

    Merupakan mode pengalamatan untuk mentransfer DATA/byte/word antar register dan lokasi yang alamatnya ditunjukkan oleh isi suatu register.

    Contoh MOV [BX], AX Pindahkan isi register AX ke

    dalam alamat memori yang ditunjukkan oleh isi register BX

  • Contoh permasalahan Susunlah intruksi ke dalam bahasa assembly untuk memindahkan data A1B2 yang ada di register AX ke alamat fisik memori 20300 heksadesimal menggunakan mode pengalamatan register indirect, anggap segment yang digunakan adalah DS = 2000 dan alamat relatif yang menunjukkan alamat memory disimpan di register BXJawab:DS : IP = 20300 alamat fisik

    DS = 20000 alamat awal DSIP = 0300

    Intruksi yang digunakan MOV AX, 2000MOV DS, AXMOV BX, 0300MOV AX, A1B2MOV [BX], AX

    MOV AX, 2000MOV DS, AXMOV AX, A1B2MOV [0300], AX

    DIRECT:

  • V. Base Plus Index Addressing

    Yaitu mode pengalamatan yang digunakan untuk mentransfer byte/word antar register dan memori yang alamatnya ditunjukkan oleh jumlah register base dan index.Bentuk1: MOV [BX + SI], AX

    Bentuk2: MOV AX,[BX+SI]

    Tugas2:Susun intruksi dalam bahasa assembly untuk memindahkan isiakumulator AX yakni A1B2 ke alamat memori 10500 heksadesimal dengan menggunakan mode pengalamatan base plus index, anggap segmen yang digunakan DS = 1000 dan register indeks yang digunakan SI = 300

  • V. Register Relative Addressing

    Yaitu mode pengalamatan untuk tranfer byte/word antar register dan memori yang alamatnya ditunjukkan oleh isi suatu register dan jaraknya (displacement)

    Contoh MOV [BX + 4], AX

  • Contoh permasalahan Susun intruksi dalam bahasa assembly untuk memindahkan data A1B2 dari akumulator AX ke alamat memori 20304 H dengan menggunakan register relative addressing , anggap segmen yang digunakan DS : 2000 dan dan displacement 4

    DS : IP = 20304DS = 20000IP = 0304

    Intruksi yang digunakan Mov AX,2000Mov DS, AXMov BX,0300Mov AX,A1B2Mov [Bx + 4], AX

  • VI. Base Relative Plus Index Addressing

    Merupakan mode pengalamtan yang digunakan untuk mentransfer byte/word antar register dan memori yang alamatnya ditunjukkan oleh suatu register base dan register index ditambah displacement nya Contoh :

    MOV AX, [BX + DI + 4]

    Mode Pengalamatan(Addressing Mode)Mode PengalamatanPada Mikroprosesor Keluarga 8086I. Mode Pengalamatan Segera(Immediate Addressing)Contoh Mode Pengalamatan Segera:II. Mode Pengalamatan Register(Register Addressing)Contoh Mode Pengalamatan Register:Contoh Mode Pengalamatan Register:III. Mode Pengalamatan Langsung(Direct Addressing)IV. Mode Pengalamatan Tak Langsung(Indirect Addressing)V. Base Plus Index AddressingV. Register Relative Addressing