Set instruksi pada mikroprosesor 8085
1. Data Transfer Instructions
o Menetapkan lokasi operand sumber dan operand tujuan.
o Lokasi-lokasi tersebut dapat berupa memori, register atau bagian paling atas daripada stack.
o Menetapkan panjang data yang dipindahkan.
o Menetapkan mode pengalamatan.
o Tindakan CPU untuk melakukan transfer data adalah :
Operasi set instruksi untuk transfer data :
o MOVE : memindahkan word atau blok dari sumber ke tujuan
Contoh : MOV r1,r2 : memindahkan dari register ke register
MVI r,n : pindahkan segera ke register
o STORE : memindahkan word dari prosesor ke memori.
Contoh : STA nn : simpan A langsung
STAX : simpan tak langsung
o LOAD : memindahkan word dari memori ke prosesor.
Contoh : LXI B,nn : isi segera pasangan register B.
LDA nn : isi A langsung
LDS : mengisi DS dan operand dengan alamat 32-bit
LES : mengisi ES dan operand dengan alamat 32-bit
LEA : mengisi alamat efektif
o EXCHANGE : menukar isi sumber ke tujuan.
Contoh : XCHG : tukar register-register
XLAT : menerjemsh instruksi tabel lookup
o PUSH : memindahkan word dari sumber ke bagian paling atas stack.
Contoh : PUSH B : dorong pasangan register B&C pada tumpukkan
PUSHF : dorong bendera-bendera pada tumpukkan
o POP : memindahkan word dari bagian paling atas sumber
Contoh : POP B : sembulkan pasangan register B&C dari tumpukkan
POPF : sembulkan bendera-bendera dari tumpukkan
2. Arithmatic Instruction
Operasi set instruksi untuk arithmetic :
o ADD : penjumlahan
Contoh : ADD r : tambahkan register
ADC r : tambahkan register dengan pindahan (carry)
DAA : penyesuaian desimal A
AAA : penyesuaian ASCII setelah penambahan
INC : menambah satu ke word atau byte
o SUBTRACT : pengurangan
Contoh : SBB r : kurangkan register dengan pinjaman
SUB M : kurangkan memori
NEG : mengubah tanda dari byte atau word (komplemen 2)
AAS : menyesuaikan ASCII setelah pengurangan
DAS : menyesuaikan BCD setelah pengurangan
DEC : mengurangi satu dari byte atau word
o MULTIPLY : perkalian
Contoh : MUL : mengalikan byte atau word yang tidak bertanda
IMUL : mengallikan byte atau word yang bertanda
AAM : menyesuaikan ASCII setelah perkalian
o DIVIDE : pembagian
Contoh : DIV : membagi byte atau word yang tidak bertanda
IDIV : membagi byte atau word yang bertanda
CBW : mengkonversi byte atau word
CWD : mengkonversi word menjadi double word
AAD : menyesuaikan ASCII sebelum pembagian
3. Logic instructions
Operasi set instruksi untuk logic :
o AND : meng-AND kan bytes atau word
o OR : meng-OR kan bytes atau word
o NOT : menginversi bytes atau word
o XOR : eksklusif OR bytes atau word
o TEST : menguji bytes atau word (tanpa simpanan AND)
o COMPARE : melakukan perbandingan logika.
o 3TEST : menguji kondisi tertentu.
o SHIFT : operand menggeser ke kiri atau kanan menyebabkan konstanta pada ujung bit.
4. Compare and Jump Instructions
Operasi set instruksi untuk compare:
o Compare : membandingkan
Contoh : CMPS : membandingkan bytes atau word
Operasi set instruksi untuk jump:
o Jump : melompati
Contoh : unconditional : JMP : melompati ke bagian lain dari program
Conditional : Jcc : melompati set carry
5. Loop dan Input/Output Instructions
Operasi set instruksi untuk loop:
o Loop : mengulang
Contoh : LOOP : mengulang CX kali
LOOPE/LOOPNZ : mengulang selama 0
LOOPNE/LOOPNZ : mengulang selama tidak 0
Operasi set instruksi untuk I/O :
o Input/Output : memasukkan byte atau word dari port, mengeluarkan word ke port
Contoh : IN n : masukkan dari pintu n
Out n : keluaran dari pintu n
6. Flag Control Instructions
Operasi set instruksi untuk Flag control :
Contoh : LAHF : memindahkan bendera kedalam AH
SHAF : memuat bendera dari AH
STC : pasang pindahan
CMC : komplemen pindahan
CMA : komplemen A
DAA : penyesuaian desimal A
7. Interrupt Instructions
Operasi set instruksi untuk interrupt :
Contoh : HLT : berhenti
EI : menjalankan interupsi
DI : melumpuhkan interupsi
NOP : tidak ada operasi
8. String Handling Instructions
Operasi set instruksi untuk String Handling:
Contoh : MOVS : memindahkan bytes atau word
CMPS : membandingkan bytes atau words
SCAS : memeriksa byte atau words
LODS : memuat AL atau AX dengan byte atau word
STOS : menyimpan AL atau AX dalam byte atau word
9. Rotate, Shift, and Subroutine and Subroutine Handling Instructions
Operasi set instruksi untuk Shift:
Logical shift : SHL :
SHR :
Arithmatic shift : SAL :
SAR :
Operasi set instruksi untuk Rotate:
ROTATE : operand menggeser ke kiri atau ke kanan dengan ujung yang terjalin.
Contoh : ROL : merotasi bytes atau word kekiri
RCL : merotasi bytes atau word kekiri melalui carry
ROR : merotasi bytes atau word kekanan
RCR : merotasi bytes atau word kekanan melalui carry
Operasi set instruksi untuk Call and RET:
Contoh : CALL : panggil tanpa syarat
CC : panggil bila ada lompatan
CNC : panggil bila tidak ada pindahan
CZ : panggil bila sama dengan 0
CNZ : panggil bila tidak sama dengan 0
CP : panggil bila positif
CM : panggil bila minus
CPE : panggil bila paritas genap
CPO : panggil bila paritas ganjil
RET : kembali
RC : kemballi bila ada pindahan
RNC : kembali bila tidak ada pindahan
RZ : kembali bila 0
RNZ : kembali bila tidak ada 0
RP : kembali bila positif
RM : kembali bila minus
RPE : kembali bila paritas genap
RPO : kembali bila paritas ganjil
RST : mulai kembali

Tidak ada komentar:
Posting Komentar