Anda di halaman 1dari 4

Perintah-Perintah Transfer Data pada MPF-1

Operasi transfer data atau operasi copy data pada mikroprosesor Z-80 CPU
sebagian besar menggunakan perintah LD singkatan dari LOAD. Z-80 CPU memiliki 134
perintah LD.
Data dapat ditransfer dalam 8 bit atau 16 bit. Perintah transfer data memuat dua operand
yaitu operand pertama sebagai tujuan (Destinasi) dan operand kedua menunjukkan lokasi
asal. Misal sebagai contoh : LD A, B menunjukkan perintah untuk meng-copy data 8 bit
yang ada pada register B ke register A. Hal ini berarti B sebagai asal (Source) dan A
sebagai tujuan (Destinasi).
Transfer Data 8 Bit
Tabel 1. Tabel Operasi Data 8 bit
Mnemonik Simbol Operasi Jenis Transfer Data
LD B, A B←A Register ← Register
LD A, (HL) A ← (HL) Register ← Memori
LD A, 25H A ← 25 Register ← Data Imdm
LD (HL), A (HL) ← A Memori ← Register
LDD (DE) ← (HL) Memori ← Memori
DE ← DE – 1
HL ← HL – 1
BC ← BC – 1
LD (HL), 64 (HL) ← 64 Memori ← Data Imm

Transfer data 16 bit


Tabel 2. Tabel Transfer Data 16 bit
Mnemonik Simbol Operasi Jenis Transfer Data
LD SP, HL SP ← HL Register ← Register
POP IX IXH ← (SP+1) Register ← Memori
IXL ← (SP)
SP ← SP+2
LD HL, 1964H HL ← 1964 Register ← Data Imm
PUSH BC (SP – 2) ← C Memori ← Register
(SP+1) ← B
SP ← SP – 2
LDIR (DE) ← (HL) Memori ← Memori
DE ← DE – 1
HL ← HL – 1
BC ← BC – 1
Diulang sampai BC=0
Ada pula perintah EX, EXX singkatan dari EXCHANGE. Z-80 CPU juga
memiliki 12 jenis perintah PUSH, dan POP yang dapat digunakan sebagai transfer data
dalam operasi stack.
Pertukaran Data
Tabel 3. Tabel Pertukaran Data 16 bit
Mnemonik Simbol Operasi Jenis Transfer Data
EX DE, HL DE  HL Register  Register
EX AF, AF’ AF  AF’ Register  Register
EXX BC  BC’
DE  DE’
HL  HL’
EX (SP), HL Register  Memori
H  (SP+1)
EX (SP), IX L  SP
IXL  (SP+1)
IXL  (SP)

Contoh contoh Program Transfer data :


a. Operasi Transfer Data 8 bit :
1. Isi register A dengan 93
2. Copy data dari register A ke register B
3. Copy data dari register B ke register C
4. Copy data dari register C ke register D
5. Copy data dari register D ke register E
6. Isi register H dengan 19
7. Isi register L dengan 90
8. Isi data 64 ke alamat yang berada pada memori (HL)
9. Copy data dari memori (HL) ke register B
10. Copy data yang ada pada alamat (1990) ke register A
11. Copy data dari register A ke alamat 1991
12. Berhenti (stop)
Setelah dijalankan program tersebut didapat:
Tabel 1
Reg A B C D E F H L 1990 1991
Data 93 93 93 93 93 00 19 90 64 64

b. Operasi Transfer Data 16 bit :


1. Isi register BC dengan data 1963
2. Isi register DE dengan data 1964
3. Isi register HL dengan data 1995
4. Isi register SP dengan data 1991
5. Copy data yang ada pada register C ke memori yang ada pada alamat 1993
6. Copy data yang ada pada register B ke memori yang ada pada alamat 1994
7. Copy data yang ada pada register E ke memori yang ada pada alamat 1995
8. Copy data yang ada pada register D ke memori yang ada pada alamat 1996
9. Isi register IX dengan data 1800
10. Isi register IY dengan data 1813
11. Isi memori (SP-2) dengan data yang ada pada register IXL
12. Isi memori (SP-1) dengan data yang ada pada register IXH
13. SP yang baru adalah SP-2
14. Isi memori (SP-2) dengan data yang ada pada register IYL
15. Isi memori (SP-1) dengan data yang ada pada register IYH
16. SP yang baru adalah SP-2
17. Isi register IXH dengan data yang ada pada memori (SP+1)
18. Isi register IXL dengan data yang ada pada memori (SP+2)
19. SP yang baru adalah SP+2
20. Isi register IYH dengan data yang ada pada memori (SP+1)
21. Isi register IYL dengan data yang ada pada memori (SP+2)
22. SP yang baru adalah SP+2
23. Stop

Tabel 2
Reg BC DE HL SP IX IY 198D 198E 198F 1990
Data 1963 1964 1995 1991 1800 1813 13 18 00 18

c. Operasi Pertukaran Data 16 bit :


Program:
1. Isi register DE dengan 0101
2. Isi register HL dengan FFFF
3. Tukarkan register DE dengan register HL
4. Isi register BC dengan 0202
5. Isi register DE dengan 0303
6. Isi register A dengan register B
7. Tukarkan register AF dengan register alternatif AF’
8. Isi register SP dengan 1990
9. Tukarkan memori (SP+1) dengan register H
10. Tukarkan memori (SP) dengan register L
11. Isi register IX dengan 0022
12. Isi register SP dengan 1992
13. Tukarkan memori (SP+1) dengan register IXH
14. Tukarkan memori (SP) dengan registerIXL
15. Stop

Anda mungkin juga menyukai