ORGANISASI & ARSITEKTUR KOMPUTER 2 SET INSTRUKSI IBP WIDJA, MT
description
Transcript of ORGANISASI & ARSITEKTUR KOMPUTER 2 SET INSTRUKSI IBP WIDJA, MT
ORGANISASI & ARSITEKTUR KOMPUTER 2
SET INSTRUKSI
IBP WIDJA, MT
ORKOM 2 SET INSTRUKSI 2
Apakah set Instruksi itu?
Kumpulan instruksi lengkap yang dimengerti oleh CPU
Kode mesin Biner Biasanya direpresentasikan oleh Kode
Assembly
ORKOM 2 SET INSTRUKSI 3
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 4
Dimana operand itu bisa berada?
Memory Utama atau Memory Virtual CPU register I/O device
ORKOM 2 SET INSTRUKSI 5
Diagram Status Siklus Instruksi
ORKOM 2 SET INSTRUKSI 6
Representasi Instruksi
Dalam kode mesin setiap instruksi memiliki pola-bit tertentu
Untuk konsumsi programmers disediakan penyajian simbolik untuk kode operasi (opcode) Contoh: ADD, SUB, LOAD
Acuan operand juga disajikan secara simbolik Contoh: A,B
opcode acuan operand acuan operand
6bit4bit 6bit
ORKOM 2 SET INSTRUKSI 7
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 8
Jenis Instruksi
Data processing Data storage (main memory) Data movement (I/O) Program flow control
ORKOM 2 SET INSTRUKSI 9
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 10
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 11
Jumlah Alamat (c)
1 alamat Addres kedua Implicit Biasanya menggunakan register (accumulator) Umum pada mesin-mesin terdahulu
ORKOM 2 SET INSTRUKSI 12
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 13
Contoh program menggunakan eksekusi 1,2,3 alamat
Program untuk mengeksekusi :
ORKOM 2 SET INSTRUKSI 14
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 15
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 16
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 17
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 18
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 19
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 20
Penggunaan stack untuk menghitung f = (a-b) / (d x e +c )
ORKOM 2 SET INSTRUKSI 21
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 22
Mesin 0 alamat (stack) untuk X = (A+BxC)/(D-ExF)
Transfer infix Ke postfix menjadi ABCx+DEFx-/ Penyelesaian dng stack menjadi:
PUSH APUSH BPUSH CMUL ADDPUSH DPUSH EPUSH FMUL SUBDIVPOP X
ORKOM 2 SET INSTRUKSI 23
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)POP M STORE M ADD(X<--X+Y) ADD(X<--Y+Z)
ADD ADD M SUB(X<--X-Y) SUB(X<--Y-Z)
SUB SUB M MUL(X<--XxY) MUL(X<--YxZ)
MUL MUL M DIV(X<--X/Y) DIV(X<--Y/Z)DIV DIV M
Instruksi yg tersediauntuk digunakan