Pada mode ini operand ditentukan dari sebuah alamat 8 bit. Hanya berlaku untuk
Mode ini menggunakan Register tertentu berisi Data yang menunjukan Alamat. Bisa
berlaku untuk internal dan external RAM. Register untuk menunjukkan alamat
tersebut adalah R0 atau R1, maupun Stack Pointer untuk operasi 8 bit. Untuk
Contoh: MOV A,@R0 (isi accumulator dengan alamat yang ditunjukkan oleh isi R0)
Pengalamatan Register
Pengalamatan mode ini lebih effisien dan mengeleminasi satu byte alamat
Immediate Constant
Pengalamatan bit adalah penunjukan alamat lokasi bit baik dalam RAM internal (byte
32 sampai 47) atau bit perangkat keras. Untuk melakukan pengalamatan bit digunakan
symbol titik (.), misalnya FLAGS.3, 40.5, 21H.1 dan ACC.7. Tabel dibawah
3 Perangkat Intruksi
Mikrokontroller AT89C51 memiliki 256 perangkat intruksi. Seluruh intruksi dapat
dikelompokan dalam 4 bagian yang meliputi intruksi 1 byte sampai 4 byte. Apabila frekuensi
clock mikrokontroller yang digunakan adalah 12 Mhz, kecepatan pelaksanaan intruksi akan
bervarias dari 1 hingga mikrodetik. Perangkat intruksi mikrokontroller AT89C51 dapat dibagi
menjadi lima kelompok sebagai berikut :
Intruksi Transfer data
Intruksi ini memindahkan data antara register-register, memori-memori, register-
memori, antar muka register dan antar muka memori.
Tabel 6.2 Intruksi Transfer Data
Instruksi Aritmatika
Intruksi ini melaksanakan operasi aritmatika yang meluputi penjumlahan,
pengurangan, penambahan satu (inkremen), pengurangan satu (dekremen), perkalian dan
pembagian.
Tabel 6.3 Intruksi Aritmatika
Instruksi Percabangan
Instruksi ini mengubah urutan normal pelaksanaan suatu program. Dengan instruksi
ini program yang sedang dilaksanakan akan mencabang ke suatu alamat tertentu. Intruksi
percabangan dibedakan atas 2 yaitu : percabangan bersyarat dan percabangan tanpa syarat.
Tabel 6.5 Intruksi Percabangan
Intruksi-intruksi mesin
Pengarah-pengarah assembler
Kontrol-kontrol assembler
Komentar-komentar
mode-mode assembler dan aliran assembly langsung (misalnya $TITLE). Komentar perlu
Baris-baris program yang mengandung instruksi mesin atau pengarah assembler harus
mengikuti aturan program assembler ASM51. masing-masing baris atas beberapa field yang
ORG
0100H ; AWAL PROGRAM YANG AKAN DIJALANKAN
START :
ISI PROGRAM ASSEMBLER
.
.
.
END
Catatan :
Setiap pembuatan program tidak boleh di mulai dari alamat 0000H. jika pembuatan
program di mulai dari alamat 0000H maka program dipastikan tidak akan berjalan sebab
0000 di isi oleh intrupt reset. Sebaiknya pembuatan program di mulai dari alamat memori