260 likes | 813 Views
BAB IV MODE PENGALAMATAN. RIZAL SURYANA SISTEM MIKROPROSESOR TEKNIK ELEKTRO UNJANI. Mode Pengalamatan Pada uP 8088. Merupakan cara memberikan perintah transfer/ pemindahan data dari lokasi satu ke lokasi lainnya .
E N D
BAB IVMODE PENGALAMATAN RIZAL SURYANA SISTEM MIKROPROSESOR TEKNIK ELEKTRO UNJANI
Mode PengalamatanPadauP 8088 • Merupakancaramemberikanperintah transfer/pemindahan data darilokasisatukelokasilainnya. • Lokasi pemindahan data dapat meliputi: register, alamat memori, maupun piranti I/O • Pemrogram (manusia) menulis instruksi dalam format assembly, selanjutnya oleh compiler (program) diubah menjadi format heksadesimal dan disimpan dalam memori.
Level Kode Format Heksadesimal Format Assembly Level Manusia Level Mesin
Lokasi Pemindahan Data Lokasi memori Lokasi I/O Lokasi register MP ROM RAM I/O Interface BUS ALAMAT BUS DATA BUS KONTROL
Mode Pengalamatan • Ada duacara yang biasadigunakandalampenempatan operand instruksiyaitupadalokasimemoriutamadan register CPU • Jika operand ditempatkanpadamemoriutama, alamatlokasiharusdiberikanolehinstruksidalammedan operand • Banyakmetode yang berguna yang dipakaiuntukmenentukanalamat operand • Mode yang berbedadalampenentuanalamat operand padainstruksidikenaldengan addressing mode (mode pengalamatan)
TEKNIK PENGALAMATAN • Immediate Addressing • Direct Addressing • Indirect Addressing • Register Addressing • Register Indirect Addressing • Displacement Addressing • Stack Addressing
Immediate Addressing Immediate addressing merupakan mode pengalamatan yang digunakan untuk mengisi suatu register dengan data. Bentuk: MOV AL,#5H TUJUAN: REGISTER/ AKUMULATOR SUMBER: DATA Arti: isilah atau copy 5 heksadesimal ke register AL
Immediate Addressing MOV AL,#15H MOV BL,#21H MOV CX,#1A2BH MOV DX,#5678H
KeuntungandanKekurangan • Keuntungan • Tidakadanyareferensimemoriselaindariintruksi yang diperlukanuntukmemperoleh operand • Menghematsiklusinstruksisehinggaprosseskeseluruhanakancepat • Kekurangan • UkuranBilangandibatasiolehukuran field alamat
Register untuk Immediate Addressing • Register data AX,BX,CX,DX, BP,SP,SI,DI • Register segmentidakdapatmenggunakan Immediate Addressing • AlamatMemoritidakdapatdiisidengan Immediate Addressing
Direct Addressing Direct addressing merupakan mode pengalamatan untuk mentransfer data antar memori dan register Bentuk 1: MOV AL,[0120] TUJUAN: REGISTER SUMBER:ALAMAT RELATIF MEMORI Arti: copy data pada alamat relatif memori 0120 ke register AL
ContohBentuk 1: Susuninstruksi assembly untukmemindahkan/copyisialamat 10120 heksadesimalke register AL, isialamat 10150 heksadesimalke register BL, danisialamat 10160 heksadesimalke register CL! MOV AL,[0120] direct addressing MOV BL,[0150] direct addressing MOV CL,[0160] direct addressing
Bentuk 2: MOV [0120],AL SUMBER:REGISTER TUJUAN:ALAMAT RELATIF MEMORI Contoh: susuninstruksiuntukmengisialamat 10120 dengan data 5 heksadesimal
Jawab: MOV AL,5 IMMEDIATE ADDRESSING MOV [0120],AL DIRECT ADDRESSING
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 BX Jawab: DS : IP = 20300 alamat fisik DS = 20000 alamat awal DS IP = 0300 Intruksi yang digunakan MOV AX, 2000 MOV DS, AX MOV BX, 0300 MOV AX, A1B2 MOV [BX], AX DIRECT: MOV AX, 2000 MOV DS, AX MOV AX, A1B2 MOV [0300], AX
Register Addressing • Digunakan untuk memindahkan data dari register ke register tujuan • ukuran data byte atau word
Register Relative Addressing (displacement) • 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 Muchlas, Mode Pengalamatan Mikroprosesor
Stack Addressing • Stack Pointer (SP) memoritempatmenyimpanisi register 16 bit yang hanyaberkaitandenganoperasi PUSH dan POP. • Operasi PUSH dan POP menyimpandanmengambilisi register BC, DE, HL, IX, IY dan AF Muchlas, Mode Pengalamatan Mikroprosesor
Contoh • MOV SP,1980H • MOV DE, #1850H • MOV BC, #AAFEH • PUSH DE • PUSH BC • POP HL • POP IX Muchlas, Mode Pengalamatan Mikroprosesor
SebelumdilakukanInstruksi PUSH dan POP isi register SP = 1980H • Setelah PUSH DE, isi Register D disimpan di memoridenganalamat 197FH danisi Register E padaalamat 197EH • Register SP menggeseralamatnyasebanyak 2 kali kebawahsehinggaisi register SP = 197EH • Address 197FH = 18H dan 197EH = 50H Muchlas, Mode Pengalamatan Mikroprosesor
Setelah PUSH BC, isi Register B disimpan di memoridenganalamat 197DH danisi Register C padaalamat 197CH • Register SP menggeseralamatnyasebanyak 2 kali kebawahsehinggaisi register SP = 197CH • Address 197DH = AAH dan 197CH = FEH Muchlas, Mode Pengalamatan Mikroprosesor
Setelah POP HL, isi Register L menjadi FEH danisi Register H menjadi AAH • Register SP menggeseralamatnyasebanyak 2 kali keatassehinggaisi register SP = 197EH • Isi memori yang addressnya 197CH dan 197DH sudahberubahdanbukan FEH maupun AAH • Register HL menjadiberisi AAFEH • Isi address menjadi 197FEH dan 197EH bukanlagi 18H dan 50H • Isi address memori 197DH dan 197CH bukanlagi AAH dan FEH
Setelah POP IX berlangsung, makaisi register IX menjadiberisi 1850H danregsiter SP menggeserkembaliberisi 1980H • PadauP Z-80 register SP tidakharus di-set, karenapadauP Z-80 register SP sudah di-set oleh program ROM yang adapada address 1F9FH