Set Instruksi Mikrokontroler AT89C51

Posted on | Rabu, 05 Januari 2011 | No Comments

Ada beberapa instruksi yang dikenal oleh mikrokontroler AT89C51 yaitu , Instruksi aritmetika ,Intruksi aritmetika mencakup penambahan (ADD), pengurangan (SUBB), perkalian (MUL), dan pembagian (DIV).

1. Penambahan (ADD)
Instruksi ini menjumlahkan suatu data dengan isi akumulator dan hasilnya disimpan dalam akumulator.
Operasi ADD : A←A+data

2. Pengurangan (SUBB)
Instruksi ini mengurangkan isi akumulator dengan isi carry flag dan isi data.
Operasi SUBB : A←A-C-data

3. Perkalian (MUL)
Instruksi ini mengalikan isi akumulator dengan isi register B.
Operasi MUL : AB←A*B

4. Pembagian (DIV)
Instruksi ini akan membagi isi register akumulator dengan isi register B.
Operasi DIV : AB←A/B

5. Penambahan satu (INC)
Proses ini menambahkan satu pada isi suatu register atau memori.
Operasi INC A : AB←A+B

6. Pengurangan Satu (DEC)
Proses ini kebalikan dari proses pengurangan satu.

Instruksi Logika Dengan Manipulasi Bit

1. Logika AND (ANL)
Instruksi ini melakukan proses logika AND antara suatu register dengan register, register dengan data, carry flag dengan suatu alamat, dan lain- lain.
format instruksi AND :
ANL A, @Rr
ANL A, #data
ANL alamat data, A
ANL alamat, #data

2. Logika OR (ORL)
Instruksi ini melakukan logika OR antara suatu register dengan register, register dengan data, carry flag dengan isi suatu alamat bit.
Format instruksi OR:
ORL A, @Rr
ORL A, #data
ORL alamat data, A
ORL A, alamat data

3. Logika NOT (CPL)
Instruksi ini melakukan proses logika NOT pada suatu register, carry flag, atau isi suatu alamat bit.
Format instruksi NOT:
CPL A
CPL alamat bit

4. Logika EXOR (XRL)
Instruksi ini melakukan proses logika exlusive-OR antara register dengan register, register dengan data, dan lain-lain.

5. Manipulasi Pengesetan (CLR)
Instruksi ini menyebabkan suatu bit menjadi reset atau nol
Format instruksi CLR :
CLR A
CLR alamat bit

6. Manipulasi Bit Pengesetan (SETB)
Instruksi ini akan mengeset bit yang dimaksud (atau 1)
Format instruksi SETB :
SETB C
SETB bit

7. Manipulasi Bit Pengisian (MOV)
Instruksi ini akan mengisi suatu data dalam bentuk byte
Format instruksi MOV :
MOV @Rr, A
MOV A, @Rr
MOV @Rr, #data
MOV @Rr, alamat data
MOV A, alamat data

8. Manipulasi Lompat
Program counter akan meloncat ke alamat yang dikehendaki
Format instruksinya :
JC alamat kode
JNC alamat kode

Instruksi Transfer Data

Kelompok instruksi ini digunakan untuk memindahkan data antara:
1. register-memori
2. antarmuka-register
3. antarmuka-memori

Contoh :

MOV A, R0 : Pindahkan isi register R0 ke akumulator.
MOV A, @R0 : Pindahkan isi memori yang alamatnya ditunjukkan oleh register R0 ke akumulator.
MOV A, P3 : Pindahkan isi port 3 ke akumulator.

Instruksi Percabangan

Instruksi percabangan ini dibagi dua yaitu percabangan dengan syarat dan percabangan tanpa syarat. 
Percabangan dengan syarat terdiri atas :

CJNE

Instruksi ini akan membandingkan isi register atau isi memori dengan suatu data. Bila hasil perbandingan itu sama, instruksi selanjutnya yang akan dituju. Bila tidak sama, instruksi yang ditunjuk oleh label yang akan dilaksanakan.

Format instruksi CJNE :
CJNE A, @Rr
DJNZ

Instruksi ini akan mengurangi isi register atau memori dengan satu. Bila sudah 0, instruksi selanjutnya akan dilaksanakan dan bila belum 0 instruksi dilanjutkan ke label.

Format instruksi DJNZ :
DJNZ Rr, alamat kode
DJNZ alamat data, alamat kode
JBC

Instruksi ini akan menguji suatu alamat bit. Apabila alamat bit berisi 1 (set) bit tersebut akan diclear dan selanjutnya program menuju tabel. Bila alamat bit berisi 0, instruksi selanjutnya yang akan dieksekusi.

Format instruksi JBC :
JBC alamat bit, alamat kode

Percabangan tanpa syarat meliputi :
Long Jump (LJMP)

Format instruksi Long Jump :
LJMP alamat kode
Short Jump (SJMP)

Format instruksi Short Jump :
SJMP alamat kode

Share

print halaman iniPrint halaman ini

Baca Juga Ini





Comments

Silahkan tuliskan komentar atau pertanyaan anda...!!!

Search

Pilih Bahasa

English French German Spain Italian Dutch

Russian Brazil Japanese Korean Arabic Chinese Simplified
Translate Widget by Google

Berlangganan

Enter your email address:

Delivered by FeedBurner


subscribe

Komunitas

Blog Info



Free Page Rank Tool
IP
free counters