Wednesday, July 14, 2010

latihan mikro

cara copy memory secara langsung / direct addressing
contoh, urang rek copy memory tina alamat 8000 kana 9000

LDA 8000
STA 9000

mun hayang copy memory leuwih ti hiji data, tapi pake direct adderssing, carana

LDA 8001
STA 9001
LDA 8002
STA9002
LDA 8003
STA 9003
jeung satuluyna

mun rek copy memory pake cara indirect addressing

MVI A,AA // ngeusi akumulator pake data AA
LXI B, 8000 // ngakses memory alamat 8000 make register B+C
STAX B // simpen data ti akumulator kana alamat memory nu aya din register B
LDAX B // ngambil data ti 8000. 8000 anu di akses ti register B
LXI D, 9000 // akses memory alamat 9000 make register D
STAX D // simpen data ti akumulaot kana alamat 9000
MVI A,BB
LXI B,8001
STAX B
LDAX B
LXI D,9001
STAX D


jadi hasil trace program na
address isi
8000 AA
8001 BB


9000 AA
9001 BB

cara copy memory nu lain
LXI B, 100 //akses alamat 100 pake register B
LXI D, 200 // akses alamat 200 pake register D
LDAX B // nyimpen data ti alamat 100 kana akumulator
STAX D // nyimpan data ti akumulator kana alamat 200
INX B // tambahan 1 jadi alamatna 101
INX D // tambahan 1 jadi alamatna 201
LDAX B // simpen data ti alamat 101 kana akumulator
STAX D // simpen data ti akumulator kana alamat 201
RST 1 // eureunkeun program

cara copy memory pake pengulangan atawa aya batasan jumlah data anu di kopikeun na.
misalkeun kopi memory ti alamat 100 sampe keun ka alamat 105 kana alamat 200 sampe 2005

LXI B, 100
LXI D, 200
MVI H, 6
loop LDAX B
STAX D
INX B
INX D
DCR H
JNZ loop

geus ah, cape ngetikna...

No comments:

Post a Comment

komen?