Anda di halaman 1dari 23

ORGANISASI & ARSITEKTUR KOMPUTER 2

SET INSTRUKSI

IBP WIDJA, MT
Apakah set Instruksi itu?

Kumpulan instruksi lengkap yang dimengerti
oleh CPU

Kode mesin

Biner

Biasanya direpresentasikan oleh Kode
Assembly

ORKOM 2 SET INSTRUKSI 2


Elemen Instruksi

Operation code (Kode Operasi)
 Kerjakan perintah ini ...

Source Operand reference (Acuan Operand
sumber)
 Dengan data ini ...

Result Operand reference (Acuan Operand
hasil)
 Simpan hasilnya kesini ...

Next Instruction Reference (Acuan Instruksi
berikutnya
 Setelah selesai, kerjakan ini ...

ORKOM 2 SET INSTRUKSI 3


Dimana operand itu bisa berada?

Memory Utama atau Memory Virtual

CPU register

I/O device

ORKOM 2 SET INSTRUKSI 4


Diagram Status Siklus Instruksi

ORKOM 2 SET INSTRUKSI 5


Representasi Instruksi

Dalam kode mesin setiap instruksi memiliki
pola-bit tertentu
4bit 6bit 6bit
opcode acuan operand acuan operand


Untuk konsumsi programmers disediakan
penyajian simbolik untuk kode operasi
(opcode)
 Contoh: ADD, SUB, LOAD

Acuan operand juga disajikan secara simbolik
 Contoh: A,B
ORKOM 2 SET INSTRUKSI 6
Bahasa Assembly

• Representasi Instruksi diatas dapat disajikan


dalam bentuk lengkap untuk
merepresentasikan set instruksi yang dikenal
sebagai bahasa assembly
• Contoh:
– MOV A, X : Berarti data ditransfer dari alamat
yang ditunjukkan oleh register X ke alamat
register A
– ADD A, B : Berarti menjumlahkan bilangan yang
berada di alamat Register B dengan bilangan
yang ditunjukkan oleh Register A dan hasilnya
diletakkan pada alamat Register A

ORKOM 2 SET INSTRUKSI 7


Jenis Instruksi

Data processing

Data storage (main memory)

Data movement (I/O)

Program flow control

ORKOM 2 SET INSTRUKSI 8


Jumlah Alamat (a)

3 alamat
 Hasil, Operand 1, Operand 2
 Contoh: ADD A,B,C
 a = b + c;
 Jarang digunakan
 Perlu word yang panjang

ORKOM 2 SET INSTRUKSI 9


Jumlah Alamat (b)

2 alamat
 Salah satu sebagai operand dan hasil
 Contoh: ADD A,B
 a=a+b
 Instruksi lebih pendek
 Diperlukan kerja ekstra

Temporary storage untuk menyimpan beberapa hasil
operasi

ORKOM 2 SET INSTRUKSI 10


Jumlah Alamat (c)

1 alamat
 Addres kedua Implicit
 Biasanya menggunakan register (accumulator)
 Umum pada mesin-mesin terdahulu

ORKOM 2 SET INSTRUKSI 11


Jumlah Alamat (d)

0 (nol) alamat
 semua addres implicit
 menggunakan stack
 Contoh:
 push a
 push b
 add
 pop c
 Berarti:
 c=a+b

ORKOM 2 SET INSTRUKSI 12


Contoh program menggunakan
eksekusi 1,2,3 alamat
Program untuk mengeksekusi :

ORKOM 2 SET INSTRUKSI 13


Berapa banyak alamat?

Alamat banyak
 Instruksi semakin kompleks
 perlu register banyak
 Program lebih pendek
 Eksekusi lebih lambat per instruksi

Alamat sedikit
 Instruksi lebih sederhana
 Program lebih panjang (banyak Instruksi per
program)
 Eksekusi lebih cepat per instruksi

ORKOM 2 SET INSTRUKSI 14


Pertimbangan Perancangan

Operation
 Berapa banyak operand?
 Apa saja operasi yang disediakan?
 Seberapa kompleks?

Jenis data

Format instruksi
 Panjang opcode
 Jumlah addres

ORKOM 2 SET INSTRUKSI 15


Pertimbangan Perancangan...

Register
 Jumlah register yang tersedia dlm CPU
 Operasi apa yg dpt dikerjakan oleh masing-masing
registers?

Pengalamatan
 Mode untuk menspesifikasikan alamat suatu
operand

RISC vs CISC

ORKOM 2 SET INSTRUKSI 16


Jenis Operand

Address

Number
 Integer/floating point

Character
 ASCII etc.

Logical Data
 Bits or flags

(Apa ada bedanya antara number dg character?)

ORKOM 2 SET INSTRUKSI 17


Jenis Operasi Umum

Transfer Data :
– Move, Store, Load, Exchange, Clear, Set, Push, Pop

Aritmetika :
– Add, Substract, Multiply, Divide, Absolute, Negate,
Increment, Decrement

Logika:
– AND, OR, NOT, Ex-OR, Test, Compare, Shift, Rotate

Konversi : Translate, Convert

I/O : Input, Output, Start, test

Transfer Control:
– Jump (cabang), Jump bersyarat, Return, Skip, Halt,
Wait

ORKOM 2 SET INSTRUKSI 18


Operasi dengan Stack

Stack adalah sekumpulan elemen
(register/memori) yang berurutan dan hanya
satu elemen saja yg dapat diakses

Titik akses disebut sebagai puncak (top) stack

Panjang stack bersifat variabel

Karena stack hanya dapat diakses dari
puncaknya saja maka stack juga dikenal
sebagai pushdown list atau antrian Last-In-
First-Out

ORKOM 2 SET INSTRUKSI 19


Penggunaan stack untuk menghitung
f = (a-b) / (d x e +c )

ORKOM 2 SET INSTRUKSI 20


Notasi Infix ke Postfix

Rumus matematika biasa disebut notasi infix

Ada suatu teknik untuk membalik dan
membuatnya menjadi postfix sehingga
dengan mudah dievaluasi dng stack

Contoh:
A+B menjadi A B +
A + (B x C) menjadi A B C x +
(A + B) x C menjadi A B + C x
(A – B) / (C + D x E) menjadi A B – C D E x
+/

ORKOM 2 SET INSTRUKSI 21


Mesin 0 alamat (stack) untuk
X = (A+BxC)/(D-ExF)

Transfer infix Ke postfix menjadi ABCx+DEFx-/
 Penyelesaian dng stack menjadi:
PUSH A
PUSH B
PUSH C
MUL
ADD
PUSH D
PUSH E
PUSH F
MUL
SUB
DIV
POP X
ORKOM 2 SET INSTRUKSI 22
Pertanyaan
1. Sebutkan elemen khusus dari instruksi mesin?
2. Jenis lokasi apakah yg dapat menggunakan operand sumber
dan tujuan?
3. Sebutkan dan jelaskan lima rancangan set instruksi penting?
4. Bandingkan mesin 0, 1, 2, 3 alamat dng menulis program
untuk menghitung:
X = (A+BxC)/(D-ExF)

0 Alamat 1 Alamat 2 Alamat 3 Alamat


PUSH M LOAD M MOVE(X<--Y) MOVE(X<--Y)
Instruksi yg POP M STORE M ADD(X<--X+Y) ADD(X<--Y+Z)
tersedia ADD ADD M SUB(X<--X-Y) SUB(X<--Y-Z)
untuk SUB SUB M MUL(X<--XxY) MUL(X<--YxZ)
digunakan MUL MUL M DIV(X<--X/Y) DIV(X<--Y/Z)
DIV DIV M

ORKOM 2 SET INSTRUKSI 23

Anda mungkin juga menyukai