Set Instruksi Mikroprosesor Intel 8085
-
Upload
r-muh-farhan -
Category
Documents
-
view
39 -
download
1
description
Transcript of Set Instruksi Mikroprosesor Intel 8085
-
1. MOV Move register to register or memory
MOV reg1 , reg2 Menyalin data 8 bit pada dari reg1 ke reg2 Contoh :
MOV A,B A B
MOV C,M C M
S Z - Ac - Pe - Cy
2. MVI Move Immediate to register or memory
MVI reg , XX Mengisi register degan konstanta 8 bit Contoh :
MVI B,24 B 24
MVI D,21 D 21
S Z - Ac - Pe - Cy
3. LXI Load Register Pair with Immediate Data
LXI reg_pair , XXXX Mengisi pasangan regiater dengan konstanta 16 bit Contoh :
LXI D,2490 DE 2490
LXI H,2104 HL 2104
S Z - Ac - Pe - Cy
4. LDA Load Accumulator Directly from Memory
LDA addr Menyalin data 8 bit dari alamat memori ke reg A (Akumulator) Contoh :
LDA 9091 A [9091]
LDA 8572 A 8572
S Z - Ac - Pe - Cy
5. STA Store Accumulator Directly in Memory
STA addr Menyalin isi reg A ke alamat memori Contoh :
STA 7216
S Z - Ac - Pe - Cy
-
[7216] A STA 9215
[9215] A 6. LHLD
Load H & L Register Directly from Memory
LHLD addr Menyalin data 16 bit pada alamat memori addr dan addr+1 ke pasangan register HL Contoh :
LHLD 8888 L [8888] H [8889]
LHLD 9998 L [9998] H [9999]
S Z - Ac - Pe - Cy
7. SHLD Store H & L Register Directly in Memory
SHLD addr Menyalin isi pasangan reg HL ke alamat memori addr dan addr+1 Contoh :
SHLD 7777 [7777] L [7778] H
SHLD ABCD [ABCD] L [ABCE] H
S Z - Ac - Pe - Cy
8. LDAX Load Accumulator from Address in Register Pair
LDAX reg_pair Menyalin data 8 bit pada alamt memori yang ditunjukan oleh pasangan register. Contoh :
LDAX B A [BC]
LDAX D A [DE]
S Z - Ac - Pe - Cy
9. STAX Store Accumulator in Address in Register Pair
STAX reg_pair Menyalin isi reg A (akumulator) ke alamat memori yang ditunjukan oleh pasangan reg. Contoh :
S Z - Ac - Pe - Cy
-
STAX B [BC] A
STAX H [HL] A
10. XCHG Exchange H & L with D & E
XCHG Menukar isi data antara pasangan reg DE dan HL Contoh :
XCHG DE HL
S Z - Ac - Pe - Cy
1. ADD Add to Accumulator
ADD reg Menambahkan isi reg A (akiumulator) dengan isi register lain Contoh :
ADD B A A+B
ADD M A A+M
S Z - Ac - Pe - Cy
2. ADI Add Immediate Data to Accumulator
ADI XX Menambahkan isi reg A dengan konstanta 8 bit Contoh :
ADI 22 A A+22
ADI 45 A A+45
S Z - Ac - Pe - Cy
3. ADC Add to Accumulator using Carry Flag
ADC reg Menambahkan isi reg A dengan isi register lain dan carry Contoh :
ADC B A A+B+Cy
ADC L A A+L
S Z - Ac - Pe - Cy
-
4. ACI Add Immediate Data to Accumulator using Carry Flag
ACI XX Menambahlkan isi reg A dengan konstanta 8 bit dan carry Contoh :
ACI 95 A A+95+Cy
ACI DB A A+DB+Cy
S Z - Ac - Pe - Cy
5. SUB Subtract from Accumulator
SUB reg Mengurangkan isi reg A dengan isi register lain Contoh :
SUB D A A D
SUB L A A L
S Z - Ac - Pe - Cy
6. SUI Subtract Immediate Data from Accumulator
SUI XX Mengurangkan isi reg A dengan isi register lain
SUI 88 A A 88
SUI AB A A AB
S Z - Ac - Pe - Cy
7. SBB Subtract from Accumulator using Borrow (carry) Flag
SBB reg Mengurangkan isi reg A dengan isi register lain dan carry
SBB C A A C Cy
SBB H A A H Cy
S Z - Ac - Pe - Cy
8. SBI Subtract Immediate from Accumulator using Borrow (carry) Flag
SBI XX Mengurangkan isi reg A dengan konstanta 8 bit dan carry
SBI 89 A A 89 Cy
SBI AF A A AF Cy
S Z - Ac - Pe - Cy
9. INR Increment Specified Byte by
INR reg Menambahkan isi register dengan 1
S Z - Ac - Pe - Cy
-
One Contoh :
INR B B B + 1
INR D D D - 1
10. DCR Decrement Specified Byte by One
DCR reg Mengurangkan isi register dengan 1 Contoh :
DCR C C C 1
DCR E E E 1
S Z - Ac - Pe - Cy
11. INX Increment Register Pair by One
INX reg_pair Menambahkan isi pasangan register dengan 1 Contoh :
INX B BC BC + 1
INX D DE DE + 1
S Z - Ac - Pe - Cy
12. DCX Decrement Register Pair by One
DCX reg_pair Mengurangkan isi pasangan register dengan 1 Contoh :
DCX B BC BC 1
DCX H HL HL 1
S Z - Ac - Pe - Cy
13. DAD Double Register Add; Add Content of Register Pair to H & L Register Pair
DAD reg_pair Menambhakan isi pasangan register HL dengan pasangan register lain Contoh :
DAD B HL HL + BC
DAD H HL HL + HL
S Z - Ac - Pe - Cy
-
14. DAA Decimal Adjust Accumulator
DAA Memberikan factor koreksi pada penjuumlahan biner Contoh :
DAA A BCD
MVI A, 09 ADI 1 DAA A 09 A 09 + 01 A 0A ;sebelum diberi factor koreksi A 10 ; setelah diberi factor koreksi
S Z - Ac - Pe - Cy
15. CMP Compare with Register
CMP reg Membandingkan isi register A dengan register lain. Operasi perbandingan dilakukan dengan metode : A reg Instruksi ini tidak merubah isi register. Contoh :
CMP B A B
CMP D A D
S Z - Ac - Pe - Cy
16. CPI Compare Immediate
CPI XX Membandingkan isi register A dengan konstanta. Contoh :
CPI 89 A 89
CPI AD
S Z - Ac - Pe - Cy
-
A AD
17. ANA AND Accumulator
ANA reg Melakukan operasi AND antara register A dan register lain. A . reg Contoh :
ANA B A A . B
ANA D A A .D
S Z - Ac - Pe - Cy
18. ANI AND Immediate
ANI XX Melakukan operasi AND antara register A dan konstanta A . XX Contoh :
ANI 90 A A . 90
ANI BB A A . BB
S Z - Ac - Pe - Cy
19. XRA XOR Accumulator
XRA reg Melakukan operasi XOR antara register A dengan register lain.
A reg Contoh :
XRA C
A A C XRA E
A A E
S Z - Ac - Pe - Cy
20. XRI XOR Immediate
XRI XX Melakukan operasi XOR antara register A dengan konstanta
A XX Contoh :
XRI 98
A A 98 XRI DB
A A 98
S Z - Ac - Pe - Cy
-
21. ORA OR Accumulator
ORA reg Melakukan operasi OR antara akumulator dan register Contoh :
ORA D A A + D
ORA M A A + M
S Z - Ac - Pe - Cy
22. ORI OR Immediate
ORI XX Melakukan operasi OR antara akumulator dan konstanta Contoh :
ORI 47 A A + 47
ORI B3 A A + B3
S Z - Ac - Pe - Cy
23. CMA Complement Accumulator
CMA Melakukan operasi NOT pada register A Contoh :
CMA A NOT A
S Z - Ac - Pe - Cy
24. CMC Complement Carry
CMC Melakukan operasi NOT pada flag carry Contoh :
CMC Cy NOT Cy
S Z - Ac - Pe - Cy
25. STC Set Carry
STC Mengatur nilai dari Carry Flag Cy = 1
S Z - Ac - Pe - Cy
1. RAR Rotate Accumulator Right
RAR Memutar isi akumulator ke kanan melalui carry flag
h g f e d c b a Cy
Setelah dilakukan operasi RAR
S Z - Ac - Pe - Cy
-
menjadi
Cy h g f e d c b a
Cy = a dan data pada MSB adalah data pada Cy
2. RAL Rotate Accumulator Left
RAL Memutar isi akumulator ke kiri melalui carry flag
h g f e d c b a Cy
Setelah dilakukan operasi RAR menjadi
g f e d c b a cy h
Cy = a dan data pada LSB adalah data pada Cy
S Z - Ac - Pe - Cy
3. RRC Rotate Right Through Carry
RRC Memutar isi akumulator ke kanan, bit LSB di salin ke carry
S Z - Ac - Pe - Cy
4. RLC Rotate Left Through Carry
RLC Memutar isi akumulator ke kanan, bit MSB di salin ke carry
S Z - Ac - Pe - Cy
1. JMP Jump unconditional
JMP addr Lompat tanpa syarat ke alamat memori dari addr Contoh :
JMP 830A Loncat ke alamat 830A
S Z - Ac - Pe - Cy
2. JZ Jump If Zero
JZ addr Lompat ke alamat memori dari addr, jika Zero Flag = 1 Contoh :
S Z - Ac - Pe - Cy
-
JZ 803A Jika Z = 1 maka lompat ke alamat 803A, jika Z = 0 akan meneruskan instruksi selanjutnya
3. JNZ Jump If No Zero
JNZ addr Lompat ke alamat memori dari addr, jika Zero Flag = 0 Contoh :
JNZ 803A Jika Z = 0 maka lompat ke alamat 803A, jika Z = 1 akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
4. JC Jump If Carry
JC addr Lompat ke alamat dari memori addr, jika Carry Flag = 1 Contoh :
JC 803A Jika Cy = 1 maka akan lompat ke alamat 803A, jika Cy = 0 akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
5. JNC Jump If No Carry
JNC addr Lompat ke alamat dari memori addr, jika Carry Flag = 0 Contoh :
JNC 803A Jika Cy = 0 maka akan lompat ke alamat 803A, jika Cy = 1 akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
6. JPE Jump If Parity Even
JPE addr Lompat ke alamat dari memori addr, jika Parity Even Flag = 1 Contoh :
JPE 803A Jika PE = 1 maka akan lompat
S Z - Ac - Pe - Cy
-
ke alamat 803A, jika PE = 0 maka akan meneruskan instruksi selanjutnya
7. JPO Jump If Parity Odd
JPO addr Lompat ke alamat memori addr, jika Parity Even Flag = 0 Contoh :
JPO 803A Jika PE = 0 maka akan lompat ke alamat 803A, jika PE = 0 maka akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
8. JM Jump If Minus
JM addr Lompat ke alamat memori addr, jika Sign Bit = 1 Contoh :
JM 803A Jika S= 1 maka akan lompat ke alamat 803A, jika S = 0 maka akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
9. JP Jump If Positive
JP addr Lompat ke alamat memori addr, jika Sign Bit = 0 Contoh :
JP 803A Jika S= 0 maka akan loncat ke alamat 803A, jika S = 1 maka akan meneruskan instruksi selanjutnya
S Z - Ac - Pe - Cy
10. CALL Call unconditional
CALL addr Memanggil sub rutin dari alamat addr, tanpa syarat
S Z - Ac - Pe - Cy
11. CZ Call if Zero
CZ addr Memanggil sub rutin dari alamat addr, jika Z = 1
S Z - Ac - Pe - Cy
12. CNZ Call If No Zero
CNZ addr Memanggil sub rutin dari alamat addr, jika Z =0
S Z - Ac - Pe - Cy
-
13. CC Call If Carry
CC addr Memanggil program sub rutin dari alamat addr, jika Cy = 1
S Z - Ac - Pe - Cy
14. CNC Call If No Carry
CNC addr Memanggil program sub rutin dari alamat addr, jika Cy = 0
S Z - Ac - Pe - Cy
15. CPE Call If Parity Even
CPE addr Memanggil program sub rutin dari alamat addr, jika PE = 1
S Z - Ac - Pe - Cy
16. CPO Call If Parity Odd
CPO addr Memanggil program sub rutin dari alamat addr, jika PE= 0
S Z - Ac - Pe - Cy
17. CM Call If Minus
CM addr Memanggil program sub rutin dari alamat addr, jika S = 1
S Z - Ac - Pe - Cy
18. CP Call If Positive
CP addr Memanggil program sub rutin dari alamat addr, jika S = 0
S Z - Ac - Pe - Cy
19. RET Return
RET Mengakhiri program sub rutin dan melanjutkan kembali program utama
S Z - Ac - Pe - Cy
20. RZ Return If Zero
RZ Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika Z = 1
S Z - Ac - Pe - Cy
21. RNZ Return If No Zero
RNZ Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika Z = 0
S Z - Ac - Pe - Cy
22. RM Return If Minus
RM Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika S = 1
S Z - Ac - Pe - Cy
23. RP Return If Positive
RP Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika S = 0
S Z - Ac - Pe - Cy
24. RPE Return If Parity Even
RPE Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika PE = 1
S Z - Ac - Pe - Cy
25. RPO Return If Parity Odd
RPO Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika PE = 0
S Z - Ac - Pe - Cy
26. RC RC Mengakhiri program sub rutin dan
-
Return If Carry melanjutkan kembali program utama, Jika Cy = 1
27. RNC Return If No Carry
RNC Mengakhiri program sub rutin dan melanjutkan kembali program utama, jika Cy = 0
S Z - Ac - Pe - Cy
1. EI Enable Interrupt
EI Mengaktifkan interrupt S Z - Ac - Pe - Cy
2. DI Disable Interrupt
DI Me non-aktifkan interrupt S Z - Ac - Pe - Cy
3. HLT Halt
HLT Program menunggu interupsi S Z - Ac - Pe - Cy
4. NOP No Operation
NOP Prosesor tidak melakukan proses apapun
S Z - Ac - Pe - Cy
5. SIM Set Interrupt Maskable
SIM Mengaktifkan penghalan interrupt S Z - Ac - Pe - Cy
6. PCHL Copy H & L to P & C register
PCHL Menyalin isi HL ke register PC S Z - Ac - Pe - Cy
7. RST Restart
RST n RESTART n S Z - Ac - Pe - Cy
8. PUSH PUSH reg_pair Menyalin isi pasangan register ke TOS (Top Of Stack) Contoh : PUSH PSW TOS A & F PUSH B TOS BC
S Z - Ac - Pe - Cy
9. POP POP reg_pair Menyalin isi TOS ke pasangan register Contoh : POP PSW A & F TOS POP B
S Z - Ac - Pe - Cy
-
BC TOS 10. XTHL
Exchange HL with TOS XTHL Menukar isi register HL dengan
TOS S Z - Ac - Pe - Cy
11. SPHL SPHL Menyalin isi register HL ke register SP
S Z - Ac - Pe - Cy
12. IN IN port Membaca data dari alamat port Contoh : IN 51
S Z - Ac - Pe - Cy
13. OUT OUT port Mengirim data dari alamat port Contoh : OUT 50
S Z - Ac - Pe - Cy