4/29/2014
Set Instruksi
Bab 10
Disusun Oleh : Rini Agustina, S.Kom, M.Pd
Set Instruksi Set Instruksi Definisi: lengkap instruksi yang dapat
Set Instruksi adalah kumpulan dimengerti CPU
Sifat2:
2. Dinyatakan dalam Biner digunakan dalam kode-kode bahasa Assembly
1. Merupakan Kode Mesin 3.Biasanya
Elemen Dasar Instruksi 1. Operation code (Op code) 2. Source Operand reference 3. Result Operand reference 4. Next Instruction Reference
FAKULTAS TEKNOLOGI INFORMASI 2
1
4/29/2014
Set Instruksi Lokasi Operand 1. Main memory : RAM 2. CPU Register
: Akumulator
3. I/O Device : Buffer Memory
State Diagram Sebuah Siklus Instruksi
FAKULTAS TEKNOLOGI INFORMASI
3
Set Instruksi Representasi Instruksi Setiap Instruksi memiliki “bit pattern” yang unik dalam kode mesin Untuk memudahkan digunakan simbolik, seperti: e.g. ADD, SUB, LOAD
Operand dapat dinyatakan sbb: ADD A,B
Contoh Format Instruksi
FAKULTAS TEKNOLOGI INFORMASI
4
2
4/29/2014
Set Instruksi Tipe Instruksi
Data processing Data storage (main memory) Data movement (I/O) Program flow control
Instruksi 3 Alamat
Operand 1, Operand 2, Result a = b + c; Jarang Digunakan Terlalu panjang word untuk mewakili instruksi
FAKULTAS TEKNOLOGI INFORMASI
5
Set Instruksi Instruksi 2 Alamat
1. Salah satu alamat memegang peran ganda sebagai source dan result 2. a = a + b 3. Mereduksi panjang Instruksi 4. Langkah-langkah pemrograman menjadi lebih panjang 5. Temporary storage diperlukan untuk menyimpan kalkulasi sementara
Instruksi 1 Alamat
1. Alamat kedua bersifat implisit, tidak terlihat 2. Biasanya adalah sebuah register Akumulator (ACC) 3. Umum digunakan pada prosesor terdahulu.
FAKULTAS TEKNOLOGI INFORMASI
6
3
4/29/2014
Set Instruksi Instruksi 0 Alamat
1. Semua alamat bersifat Implisit 2. Digunakan khusus untuk operasi Stack 3. Contoh : c = a + b e.g. push a push b add pop c
Kelebihan dan Kekurangan a. Banyak Alamat :
- Instruksi lebih kompleks - Total Baris Instruksi lebih pendek Membutuhkan lebih banyak register
FAKULTAS TEKNOLOGI INFORMASI
7
Set Instruksi b. Sedikit Alamat - Instruksi lebih sederhana - Langkah program lebih banyak - Eksekusi program lebih cepat
Jenis Jenis Operand
Addresses Numbers Integer/floating point Characters ASCII etc. Logical Data Bits or flags
FAKULTAS TEKNOLOGI INFORMASI
8
4
4/29/2014
Set Instruksi Tipe-Tipe Data
General - arbitrary binary contents Integer - single binary value Ordinal - unsigned integer Unpacked BCD - One digit per byte Packed BCD - 2 BCD digits per byte Near Pointer - 32 bit offset within segment Bit field Byte String Floating Point
FAKULTAS TEKNOLOGI INFORMASI
9
Set Instruksi Tipe-Tipe Operasi
Data Transfer Arithmetic Logical Conversion I/O System Control Transfer of Control
FAKULTAS TEKNOLOGI INFORMASI
10
5
4/29/2014
Set Instruksi Operasi: Data Transfer
Tentukan Arah Transfer Sumber Tujuan Banyak Data Instruksi berbeda untuk tujuan yang berbeda pula e.g. IBM 37
Operasi : Aritmatika
Add, Subtract, Multiply, Divide Signed Integer Floating point ? May include Increment (a++) Decrement (a--) Negate (-a)
FAKULTAS TEKNOLOGI INFORMASI
11
Set Instruksi Operasi Logika
1. Bitwise operations 2. AND, OR, NOT
Operasi Konversi
1. Dec to Bin 3. Dec to Oct
Operasi I/O
1. IN , OUT
2. Hex to Bin
Memory Access)
2. Memory Mapped
FAKULTAS TEKNOLOGI INFORMASI
3. DMA (Direct
12
6
4/29/2014
Set Instruksi Operasi System Control
1. Privileged instructions 2. CPU needs to be in specific state 3. Ring 0 on 80386+ 4. Kernel mode 5. For operating systems use
Operasi Transfer Of Control 1. Branch 2. Skip .
e.g. branch to x if result is zero increment and skip if zero ISZ Register1 Subroutine call
FAKULTAS TEKNOLOGI INFORMASI
13
Set Instruksi Contoh: Branch Instruction
FAKULTAS TEKNOLOGI INFORMASI
14
7
4/29/2014
Set Instruksi Contoh: Nested Procedure Call
FAKULTAS TEKNOLOGI INFORMASI
15
Set Instruksi Contoh: Penggunaan Stack
FAKULTAS TEKNOLOGI INFORMASI
16
8
4/29/2014
Set Instruksi
Terima Kasih FAKULTAS TEKNOLOGI INFORMASI
17
9