Gambar 2.1. IC Mikrokontroler AT89S51
2.2 PERANGKAT LUNAK
2.2.1 Bahasa Assembly MCS-51
Jika ragam pengalamatan adalah pengelompokan berdasarkan orientasi lokasi memori, tipe-tipe instruksi adalah pengelompokan berdasarkan fungsi pada instruksi MCS-51
yaitu : • Arithmatika
• Instruksi Logika • Transfer Data
• Manipulasi dan Operasi Boolean • Pencabangan
Universitas Sumatera Utara
1. Instruksi Aritmatika
Instruksi-instruksi menunjukkan ragam pengalamatan yang dapat digunakan dengan masing-masing instruksi.
a. Penjumlahan Source sumber adalah operand dengan ragam pengalamatan, register
indirect, indirect atau immediete. b. Incremental dan Decremental
Data didalam memori internal dapat dinaikkan atau diturunkan Incremental dan Decremental, tanpa melalui akumulator, demikian
juga pada DPTR yang digunakan untuk menghasilkan pengalamatan 16 bit di memori eksternal.
c. Perkalian Instruksi MUL AB mengalikan akumulator dengan data yang ada pada
register B dan meletakkan hasil 16 bit ke dalam register A dan B. Register A berisi lo-byte dan register B berisi hi-byte. Bila hasilnya
lebih besar dari 255 0FFh, maka bit 0V set, sedangkan bit CY selalu akan di clearkan ‘0’.
d. Pembagian Instruksi DIV AB membagi isi akumulator dengan data dalam register
B dan meletakkan hasil bagi quotient 8 bit dalam akumulator dan sisanya reminder 8 bit dalam register B. Operasi DIV akan membuat
bit-bit CY dan OV menjadi ‘0’. e. Desimal Adjust
Instruksi DA A Decimal Adjust digunakan untuk operasi arithmatic BCD. Dalam Arithmatic BCD instruksi A DD dan ADDC harus
Universitas Sumatera Utara
diikuti oleh sebuah operasi DAA untuk menjadikan hasilnya terdapat pada sistem BCD.
2. Instruksi Logika
Instruksi Logika pada MCS-51 adalah melakukan operasi boolean bit yang terdiri dari AND, OR, EXOR dan NOT pada bit demi bit dalam suatu bit data
di register. a. Operasi AND, OR, dan EXOR
Operasi AND, OR dan EXOR Exclusive OR adalah operasi bit dengan tabel kebenaran.
b. Rotate Instruksi Rotate seperti pada shift register, bit-bit dalam byte register A
digeser ke kanan atau ke kiri melalui atau tidak melalui carry. c. SWAP
SWAP adalah tukar nibble dari byte akumulator, nibble rendah ditukar dengan nibble tinggi.
3. Data Transfer
MOV adalah proses move pindahkan data dari sumber ke tujuan yang sebenarnya adalah proses mengcopy, artinya data di sumber tidak berubah.
a. Memory Internal MOV adalah copy data dari source ke destination atau sumber ke
tujuan, semua memory internal dan SFR dapat berlaku sebagai source dan sebagian besar dapat berlaku sebagai destination.
Universitas Sumatera Utara