ARSITEKTUR SET INTRUKSI
Set instruksi didefinisikan sebagai suatu aspek dalam
arsitektur computer yang dapat dilihat oleh para pemrogram. Dua bagian utama arsitektur komputer:
1. Instruction
set architecture (ISA) / arsitektur set instruksi
ISA meliputi spesifikasi yang menentukan bagaimana
programmer bahasa mesin akan berinteraksi
oleh computer. ISA menentukan sifat
komputasional computer.
2. Hardware
system architecture (HSA) / arsitektur system hardware
HAS berkaitan dengan subsistem hardware utama computer
(CPU, system memori dan IO). HSA
mencakup desain logis dan organisasi arus data
dari subsistem.
Jenis-jenis
Instruksi
- Data processing/pengoahan data : instruksi aritmetika dan logika.
- Data storage/penyimpanan data : instruksi-instruksi memori.
- Data movement/perpindahan data : instruksi I/O.
- Control/control : instruksi pemeriksaan dan percabangan.
Instruksi aritmetika memiliki kemampuan
untuk mengolah data numeric. Sedangkan instruksi logika beroperasi pada bit-bit
word sebagai bit, bukan sebagai bilangan. Operasi-operasi tersebut dilakukan
teutama untuk data di register CPU. Instruksi-instruksi I/O diperlukan
untuk memindahkan program dan data kedalam memori dan mengembalikan hasil
komputasi kepada pengguna.
Teknik
Pengalamatan
Metode pengalamatan merupakan aspek dari set intruksi arstektur sebagai unit pengolah pusat (CPU), desain yang didefinisikan dalam set intruksi arsitektur dan menentukan bagaimana bahasa mesin petunjuk dalam arsitektur untuk mengidentifikasikan operan dari setiap intruksi. Sebuah metode pengalamata menentukan bagaimana menghitung alamat memori yang efektif dari operand dengan menggunakan informasi yang diadakan di regist dan / atau konstanta yang terkandung dalam instruksi mesin atau di tempat lain.
Berikut dibawah ini merupakan jenis-jenis dari teknik pengalamatan :
1. Immediate
Addressing
2. Direct
Addressing
3. Indirect
Addressing
4. Register
addressing
5. Register
indirect addressing
6. Displacement
addressing
7. Stack
addressing
1. Immediate Addressing (Pengalamatan Segera)
Adalah bentuk pengalamatan yang paling sederhana. Operand benar-benar ada dalam instruksi atau bagian
dari intsruksi dan juga operand sama dengan field alamat. Umumnya bilangan akan disimpan dalam bentuk complement
dua. Bit paling kiri sebagai bit tanda dan ketika operand dimuatkan ke dalam register data, bit
tanda digeser ke kiri hingga maksimum word data.
2. Direct Addressing (Pengalamatan Langsung)Teknik ini
banyak digunakan pada komputer lama dan komputer kecil dan hanya
memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus.
3. Indirect Addressing (Pengalamatan tak langsung)Merupakan
mode pengalamatan tak langsung, field alamat
mengacu pada alamat word di alamat memori yang pada gilirannya akan berisi
alamat operand yang panjang.
4. Register addressing (Pengalamatan Register)Metode
pengalamatan register mirip dengan mode pengalamatan langsung perbedaanya
terletak pada field alamat yang mengacu pada register, bukan pada memori utama, field yang
mereferensi register memiliki panjang 3 atau 4 bit, sehingga dapat mereferensi
8 atau 16 register general purpose.
5. Register indirect addressing (Pengalamatan
tak-langsung register)Metode
pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak
langsung perbedaannya
adalah field alamat mengacu pada alamat register dan letak
operand berada pada memori yang dituju oleh isi register. Keuntungan
dan keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan
pengalamatan tidak langsung adapun keterbatasan
field alamat diatasi dengan pengaksesan memori yang tidak langsung sehingga
alamat yang dapat direferensi makin banyak, dalam satu
siklus pengambilan dan penyimpanan, mode pengalamatan register tidak langsung
hanya menggunakan satu referensi memori utama sehingga lebih cepat daripada
mode pengalamatan tidak langsung
6. Displacement addressing
Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung, mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit. Operand berada pada alamat A ditambahkan isi register.Terdapat tiga model displacement :
Menggabungkan kemampuan pengalamatan langsung dan pengalamatan register tidak langsung, mode ini mensyaratkan instruksi memiliki dua buah field alamat, sedikitnya sebuah field yang eksplisit. Operand berada pada alamat A ditambahkan isi register.Terdapat tiga model displacement :
- Relative addressing : register yang direferensi secara implisit adalah Program Counter (PC). Alamat efektif didapatkan dari alamat instruksi saat itu ditambahkan ke field alamat. Memanfaatkan konsep lokalitas memori untuk menyediakan operand-operand berikutnya.
- Base register addressing : register yang direferensi berisi sebuah alamat memori dan field alamat berisi perpindahan dari alamat itu :-Referensi register dapat eksplisit maupun implisit-Memanfaatkan konsep lokalitas memori.
- Indexing : field alamat mereferensi alamat memori utama, dan register yang direferensikan berisi pemindahan positif dari alamat tersebut
7. Stack addressing
adalah array lokasi yang linier = pushdown list = last-infirst-out. Stack merupakan blok lokasi yang terbalik. Butir ditambahkan ke puncak stack sehingga setiap saat blok akan terisi secara parsial. Yang berkaitan dengan stack adalah pointer yang nilainya merupakan alamat bagian paling atas stack. Dua elemen teratas stack dapat berada di dalam register CPU, yang dalam hal ini stack pointer mereferensi ke elemen ketiga stack. Stack pointer tetap berada dalam register. Dengan itu, referensi-referensi ke lokasi stack di dalam memori pada dasarnya merupakan pengalamatan register tidak langsung.
Desain
set Instruksi
Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
1. Kelengkapan
set instruksi
2. Ortogonalitas
(sifat independensi instruksi)
3. Kompatibilitas
: Source code compatibility dan Object code Compatibility
Selain ketiga aspek tersebut juga melibatkan hal-hal
sebagai berikut :
- Operation Repertoire : Berapa banyak dan opera siapa saja yang disediakan, dan berapa sulit operasinya.
- Data Types : Tipe/jenis data yang dapat olah.
- Instruction Format : panjangnya, banyaknya alamat,dsb.
- Register : Banyaknya register yang dapat digunakan.
- Addressing : Mode pengalamatan untuk operand
Sumber :


Komentar
Posting Komentar