Anda di halaman 1dari 11

SET INSTRUKSI MIKROPROSESOR 8085

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


Mikroprosessor 8086 & 8088
Spesifikasi Perangkat Keras 8086/8088

Pin-out dan Fungsi Pin. Secara virtual tak ada perbedaan antara mikroprosesor 8086 dan 8088-
keduanya terkemas dalam dual in-line package (DIP) 40-pin. Mikroprosesor 8086 merupakan
mikroprosesor 16-bit dengan bus data 16-bit, sementara mikroprosesor 8088 merupakan
mikroprosesor 16-bit dengan bus data 8-bit.

Bagaimanapun terdapat perbedaan kecil antara keduanya, yakni pada sinyal kontrol. 8086
memiliki pin M/IO, dan 8088 memiliki pin IO/M. Perbedaan lainnya adalah pada pin 34 chip
8088 terdapat pin SSO sementara pada chip 8086 terdapat pin BHE/S7. Baik 8086 maupun 8088,
keduanya membutuhkan catu daya sebesar +5,0 volt dengan toleransi sebesar 10 persen. 8086
menggunakan arus catu maksimum 360 mA, sementara 8088 menggunakan arus catu maksimum
340 mA.

Mikroprosesor 8086 dan 8088 akan kompatibel TTL jika kekebalan terhadap noise disesuaikan
menjadi 350 mV dari nilai 400 mV yang biasa.

Pint Out dan Fungsi Pin


 Pint Out
1. AD15-AD0
2. A19/S6-A16/S3 (multiplexed)
3. M/IO
4. RD
5. WR
6. ALE (Address latch enable)
7. DT/R (Data Transmit/Receive)
8. DEN (Data bus Enable)
9. S7
10. S5
11. S4-S3
12. S2, S1, S0

 Fugsi Pin
1. AD15-AD0 Sebagia address multiplexer dimana (ALE=1) /data bus(ALE=0).

2. A19/S6-A16/S3 (multiplexed) Sebagai 4 bit terakhir dengan 4 bits dari 20-


bit address A16 s/d A19 Atau status bits S6- S3.

3. M/IO Sebagai indikasi apakah alamar memory atau alamat Input Output.
4. RD Ketika 0, data bus menujukan pembacaraan dari memory atau dari I/O
device.

5. WR Berfungsi kepada mikroproses untuk menunjuk ke memory atau I/O


device melalui data bus. Jika 0, maka data bus telah valid data.

6. ALE (Address latch enable) Ketika 1, address data bus melakukan


penulisan pada memory atau I/O address.

7. DT/R (Data Transmit/Receive) Data bus sebagai transmitting/receiving


data.

8. DEN (Data bus Enable) mengerakkan data bus di luar buffer.

9. S7: Logic 1, S6: Logic 0.

10. S5: Jika tidak ada flag bits, dimana hanya untuk alamat yang sesuai
denngan kondisinya.

11. S4-S3: Memberikan status pada segment saat akses selama mengunakan
power.

12. S2, S1, S0: Mengindikasi fungsi bus cycle (decoded by 8288).

Catu Daya / Power Suppy DC


8086 maupun 8088, keduanya membutuhkan catu daya sebesar +5,0 volt
dengan toleransi sebesar 10 persen. 8086 menggunakan arus catu
maksimum 360 mA, sementara 8088 menggunakan arus catu maksimum
340 mA.

 Karakteristik Input
Karakteristik input mikroprosesor-mikroprosesor ini kompatibel dengan
semua komponen logika standar yang tersedia saat ini. Berikut ini
merupakan table level tegangan input dan persyaratan arus input untuk
semua pin input pada kedua mikroprosesor. Level arus input sangat kecil
karena input merupakan koneksi gerbang MOSFET dan hanya
mempresentasikan arus bocor.

 Karakteristik Output
Level tegangan logika 1 pada 8086/8088 kompatibel dengan sebagian besar
keluarga logika standar tetapi logika 0 tidak. Rangkaian standar logika
memiliki tegangan maksimum logika 0 sebesar 0.4V dan 8086/8088 memiliki
maksimum 0.45V. dengan demikian ada perbedaan 0.05V.

Perbedaan ini memperkecil kekebalan terhadap noise dari level standar


sebesar 400mV (0.V-0.45V) menjadi 350 mV. Kekebalan terhadap noise
adalah perbedaaan antara level tegangan output logika 0 dan level tegangan
output logika 1.

Clock Generator
 Clock Generator 8284A

8284A merupakan komponen tambahan untuk 8086/8088 mikroprosesor.


Tanpa clock generator, banyak sirkuit tambahan untuk menghasilkan jam
(CLK dalam 8086/8088 sistem berbasis Jam Generator 8284A menyediakan
fungsi dasar berikut atau sinyal:. Generasi jam, sinkronisasi RESEST,
sinkronisasi READY, dan tingkat TTL sinyal clock perifer .

Pin Fungsi:
8284A adalah sirkuit terpadu 18-pin yang dirancang khusus untuk digunakan
dengan 8086/8088 mikroprosesor seperti yang ditunjukkan pada fig1. Berikut
ini adalah daftar setiap pin dan fungsinya.

PAEN1 * dan AEN2 *:

alamat mengaktifkan pin disediakan untuk memenuhi syarat sinyal siap.


RDY1 dan RDY2, masing-masing. Yang digunakan untuk menyebabkan
menunggu negara, bersama dengan RDY1 dan RDY2 input. Tunggu negara
dihasilkan oleh pin READY dari 8086/8088 mikropros-esor. Ini dikendalikan
oleh dua input tersebut.

RDY1 dan RDY2:

Input bus siap disediakan dalam hubungannya dengan AEN1 * dan AEN2 *
pin untuk menyebabkan menunggu negara dalam sistem berbasis
mikroprosesor 8086/8088.

ASYNC *:

Siap masukan pilihan sinkronisasi memilih salah satu atau dua tahap
sinkronisasi untuk RDY1 dan RDY2 in-put.

SIAP:

Siap output pin yang menghubungkan ke 8086/8088 mikroprosesor masukan


READY. Sinyal ini disinkronkan dengan RDY1 dan RDY2 input.

X1 dan X2:

Pin Crystal Oscillator terhubung ke kristal eksternal digunakan sebagai


sumber waktu untuk clock generator dan semua fungsinya.

F / C *:

Frekuensi / Kristal pilih masukan hasil sumber clock-ing untuk 8284A yang.
Jika pin ini terangkat tinggi, jam eksternal disediakan untuk input pin EFI, dan
jika diadakan rendah, internal osilator kristal memberikan sinyal timing.
EFI:

Input Frekuensi Eksternal digunakan ketika F / C di-tarik tinggi. EFI memasok


waktu kapanpun F / C * pin tinggi.

CLK:

Output jam pin memberikan sinyal input CLK ke 8086/8088 mikroprosesor


dan komponen lain dalam sistem. CLK pin memiliki sinyal output yang
merupakan salah satu sepertiga dari kristal atau EFI frekuensi input dan
memi-liki siklus 33 persen, yang diperlukan oleh 8086/8088 mikroprosesor.

PCLK:

Sinyal Peripheral Jam adalah seperenam kristal atau input frekuensi EFI dan
memiliki siklus 50 persen. Out-put PCLK memberikan sinyal clock untuk
peralatan pe-ripheral dalam sistem.

OSC:

Output Oscillator adalah sinyal tingkat TTL yang di frekuensi yang sama
dengan kristal atau EFI input. (Out-put OSC menyediakan dan EFI input ke
generator 8284A jam di beberapa sistem prosesor ganda).

RES *:

Input reset input aktif-rendah untuk 8284A yang. The RES * pin sering
terhubung jaringan RC yang menyedi-akan power-on reset.

RESET

Reset output terhubung ke 8086/8088 mikroprosesor RESET pin input.

CSYNC:

Sinkronisasi jam pin ini digunakan setiap kali input EFI memberikan
sinkronisasi di sistem dengan prosesor ganda. Ketika osilator kristal internal
digunakan, pin ini harus didasarkan.

GND:

Tanah pin terhubung ke tanah.


VCC:

pin power supply ini terhubung ke + 5.0V dengan tol-eransi 10 persen

 Operasi 8284A
8284A Secara relatif merupakan komponen yang mudah untuk dipahami.

Anda mungkin juga menyukai