Apakah Set Instruksi itu?
·
Set instruksi (instruction set):
sekumpulan lengkap instruksi yang dapat dimengerti oleh sebuah
CPU
·
Disebut juga machine code (bahasa
mesin),aslinya juga berbentuk biner
·
Untuk konsumsi manusia (programmer), biasanya
digunakan representasi yang lebih mudah dimengerti, bahasa yang dapat
dimengerti manusia
Maka
set instruksi adalah sekumpulan lengkap instruksi yang dapat di mengerti
manusia dengan menggunakan bahasa mesin, untuk dapat di mengerti programmer biasanya
menggunakan representasi yang lebih mudah di mengerti.
· Operation
code (Op code)
Kerjakan
ini
· Source
Operand reference
Terhadap isi alamat ini
· Result
Operand reference
Letakkan hasilnya di alamat ini
· Next
Instruction Reference
Kalau
sudah selesai, selanjutnya kerjakan alamat ini
Dalam sebuah instruksi, tidak harus
semua elemen ini dicantumkan, tergantung kebutuhan dan jenis instruksinya.
Source dan result operands dapat
berupa salah
Satu diantara tiga jenis berikut ini:
· Main or Virtual Memory
· CPU Register
· I/O Device
Jenis – jenis instruksi
· Data processing: Arithmetic dan Logic Instructions
·
Data storage: Memory
instructions
·
Data Movement:
I/O instructions
·
Control: Test
and branch instructions
Dari
pengertian di atas saya akan mencoba menjelaskan sebuah listing program di
bawah ini, masuk ke set instruksi apa, jenis operand dll
Bahasa
assembly
model
small
code
org
100h
utama
:
mov ah, 02h
mov dl,’A’
mov cx,0fh
ulang:
int 21h
inc dl
loop ulang
int 20h
end
utama
Penjelasan program:
.model small merupakan sebagai pemberitahu kepada assembler (penterjemah) bentuk memori yang digunakan.
.code merupakan pemberitahu kepada assembler bahwa kita akan mulai menggunakan code segment-nya disini.
org 100h yaitu pemberitahu bahwa pada saat program dijalankan diletakkan mulai pada offset ke 100h.
blok utama
.model small merupakan sebagai pemberitahu kepada assembler (penterjemah) bentuk memori yang digunakan.
.code merupakan pemberitahu kepada assembler bahwa kita akan mulai menggunakan code segment-nya disini.
org 100h yaitu pemberitahu bahwa pada saat program dijalankan diletakkan mulai pada offset ke 100h.
blok utama
·
mov ah,02h yaitu sebuah
service dari interupsi 21h untuk menampilkan karakter pada layar
mov merupakan
operation code
02h merupakan source
operand referense
Ah merupakan result
operand reference
·
mov dl,'A' yaitu kita
meletakkan karakter 'A' pada register dl
mov
merupakan operation code
A
merupakan source operand reference
Dl
merupakan result operand reference
·
mov cx,0fh maksudnya
lakukan penrulangan(looping) sebanyak 0Fh(15 kali)
blok ulang
·
int 21h merupakan
interupsi untuk menampilkan karakter ke layar
·
inc dl karakter yang
kita simpak pada register dl tadi akan ditambah 1, dan
seterusnya ditambah 1 sampai batas looping yaitu 15 kali. Pada blok ini
karaktek yang pertama dicetak adalah 'A', dan kemudian dilanjutkan increment 1
lalu dicetak B, begitu seterusnya sampai berakhir dengan karkter 'O'.
·
loop ulang kembali ke blok ulang lalu
cetak lagi.
·
int 20h Kembali ke DOS
·
end utama Program
berakhir dan ditutup kembali
Output program akan menampilkan karakter ABCDEFGHIJKLMNO
Program di atas termasuk jenis data storage karena terdapat
penambahan dan penyimpanan data ke register
Contoh
program bahasa C
Int bil1;
Int bil2;
DDRB = 0xFF;
PORTB = 0xFF;
Bil1=0x30;
Bil2=0x20;
PORTB= bil1 – bil 2;
Penjelasan program
Int bil1, bil2 merupakan deklarasi nilai dengan tipe data integer
DDRB=0xFF merupakan port D pada output device mikrokontroler
PORTB=0xFF merupakan setting output pada device mikrokontroler
bil1=0x30 merupakan pemberian nilai sebesar 30h
bil2=0x20 merupakan pemberian nilai sebesar 20h
PORTB= bil1 – bil2
Operation code adalah –
Source operand reference adalah bil1 dan bil2
Result operand reference adalah PORTB
Listing di atas termasuk jenis data prosdesing aritmatika karena terdapat
proses perhitungan
semoga bermanfaat