Set Instruksi
Set Instruksi (bahasa
Inggris: Instruction Set, atau Instruction Set Architecture (ISA))
didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat
oleh para pemrogram. Secara umum, ISA ini mencakup jenis data yang didukung,
jenis instruksi yang dipakai, jenis register, mode pengalamatan, arsitektur
memori, penanganan interupsi, eksepsi, dan operasi I/O eksternalnya (jika ada).
ISA merupakan sebuah
spesifikasi dari Pullman semua kode-kode biner (opcode) yang diimplementasikan
dalam bentuk aslinya (native form) dalam sebuah desain prosesor tertentu.
Kumpulan opcode tersebut, umumnya disebut sebagai bahasa mesin (machine
language) untuk ISA yang bersangkutan. ISA yang populer digunakan adalah set
instruksi untuk chip Intel x86, IA-64, IBM PowerPC, Motorola 68000, Sun SPARC,
DEC Alpha, dan lain-lain.
ELEMEN - ELEMEN DARI SET INSTRUKSI
- Operation Code (opcode) : menentukan operasi yang akan dilaksanakan.
- Source Operand Reference : merupakan input bagi operasi yang akan dilaksanakan.
- Result Operand Reference : merupakan hasil dari operasi yang dilaksanakan.
- Next Instruction Reference : memberitahu CPU untuk mengambil instruksi berikutnya setelah instruksi yang dijalankan selesai.
FORMAT INSTRUKSI
Suatu instruksi terdiri dari
beberapa field yang sesuai dengan elemen dalam instruksi tersebut.
Layout dari suatu instruksi sering disebut sebagai Format Instruksi.
Contoh suatu Format
Instruksi adalah sbb :
Ilustrasi Format Instruksi Sederhana
Data procecessing: Arithmetic dan Logic Instructions
Data
processing adalah jenis pemrosesan yang dapat mengubah data menjadi informasi
atau pengetahuan.Setelah diolah, data ini biasanya mempunyai nilai yang
informative, maka istilah pemrosesan data sering dikatakan sebagai sistem
informasi.
Data storage: Memory instructions
Sering
disebut sebagai memori komputer, merujuk kepada komponen komputer, perangkat
komputer, dan media perekaman yang mempertahankan data digital yang digunakan
untuk beberapa interval waktu. Dalam penggunaan kontemporer, memori komputer
merujuk kepada bentuk media penyimpanan berbahan semikonduktor, yang dikenal
dengan sebutan Random Access Memory (RAM).Akan tetapi, istilah “computer
storage” sekarang secara umum merujuk kepada media penyimpanan massal seperti
halnya hard disk.
Data Movement: I/O instructions
Proses
data movement ini adalah memindahkan (dapat dikatakan membackup juga) data –
data dari database yang berupa data, indeks, grand, schema, dan lain – lain
ketempat baru. Data movement terdiri dari 2 bagian besar yaitu: Load &
Upload dan Export & Import. Load berfungsi untuk memasukan data / transaksi
ke sebuah table. Sedangkan upload berfungsi untuk membuat dari data table ke
fisik / file.
Control: Test and branch instructions
CU
diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat
penyimpanan kontrol (control store).Control Unit – CU) adalah salah satu bagian
dari CPU yang bertugas untuk memberikan arahan/kendali/ kontrol terhadap
operasi yang dilakukan di bagian ALU (Arithmetic Logical Unit) di dalam CPU
tersebut.
Teknik Pengalamatan
Metode
pengalamatan merupakan aspek dari set instruksi arsitekturdi sebagian unit
pengolah pusat(CPU) desain yang didefinisikan dalam set instruksi arsitektur
dan menentukan bagaimana bahasa mesinpetunjuk dalam arsitektur untuk
mengidentifikasi operan dari setiap instruksi.. Sebuah mode pengalamatan
menentukan bagaimana menghitung alamat memori yang efektif dari operand dengan
menggunakan informasi yang diadakan di registerdan / atau konstanta yang
terkandung dalam instruksi mesin atau di tempat lain.
Jumlah Alamat
Salah satu cara
tradisional untuk menggambarkan arsitektur prosessor adalah dengan melihat
jumlah alamat yang terkandung dalam setiap instruksinya.
Jumlah alamat maksimum
yang mungkin diperlukan dalam sebuah instruksi :
- Empat Alamat ( dua operand, satu hasil, satu untuk alamat instruksi berikutnya)
- Tiga Alamat (dua operand, satu hasil)
- Dua Alamat (satu operand merangkap hasil, satunya lagi operand)
- Satu Alamat (menggunakan accumulator untuk menyimpan operand dan hasilnya)
Macam-macam instruksi
menurut jumlah operasi yang dispesifikasikan :
a) – Address Instruction
b) 1 – Addreess Instruction
c) N – Address Instruction
d) M + N – Address Instruction
Macam-macam instruksi
menurut sifat akses terhadap memori atau register
a) Memori To Register Instruction
b) Memori To Memori Instruction
c) Register To Register Instruction
Jenis – jenis pengalamatan
A.Immediate Addressing (Pengalamatan Segera)
Adalah bentuk
pengalamatan yang paling sederhana.
Penjelasan :
- Operand benar-benar ada dalam instruksi atau bagian dari intsruksi
- Operand sama dengan field alamat
- Umumnya bilangan akan disimpan dalam bentuk complement dua
- Bit paling kiri sebagai bit tanda
- Ketika operand dimuatkan ke dalam register data, bit tanda digeser ke kiri hingga maksimum word data
Keuntungan :
Tidak adanya referensi
memori selain dari instruksi yang diperlukan untuk memperoleh operand
Menghemat siklus
instruksi sehingga proses keseluruhanakan akan cepat
Kekurangan :
Ukuran bilangan dibatasi
oleh ukuran field
Contoh :
ADD 7 ; tambahkan 7 pada
akumulator
Direct
Addressing (Pengalamatan Langsung)
Penjelasan :
- Teknik ini banyak digunakan pada komputer lama dan komputer kecil
- Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulus khusus
Kelebihan :
Field alamat berisi
efektif address sebuah operand
Kekurangan :
Keterbatasan field alamat
karena panjang field alamat biasanya lebih kecil dibandingkan panjang word
Contoh :
ADD A ; tambahkan isi
pada lokasi alamat A ke akumulator
Indirect Addressing (Pengalamatan tak langsung)
Penjelasan :
- Merupakan mode pengalamatan tak langsung
- Field alamat mengacu pada alamat word di alamat memori, yang pada gilirannya akan berisi alamat operand yang panjang
Kelebihan :
Ruang bagi alamat menjadi
besar sehingga semakin banyak alamat yang dapat referensi
Kekurangan :
Diperlukan referensi
memori ganda dalam satu fetch sehingga memperlambat proses operasi
Contoh :
ADD (A) ; tambahkan isi
memori yang ditunjuk oleh isi alamat A ke akumulator
Register addressing (Pengalamatan Register)
Penjelasan :
- 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
Keuntungan :
Diperlukan field alamat
berukuran kecil dalam instruksi dan tidak diperlukan referensi memori
Akses ke register lebih
cepat daripada akses ke memori, sehingga proses eksekusi akan lebih cepat
Kerugian :
Ruang alamat menjadi
terbatas
Register indirect addressing (Pengalamatan tak-langsung register)
Penjelasan :
- Metode pengalamatan register tidak langsung mirip dengan mode pengalamatan tidak langsung
- Perbedaannya adalah field alamat mengacu pada alamat register
- Letak operand berada pada memori yang dituju oleh isi register
Keuntungan dan
keterbatasan pengalamatan register tidak langsung pada dasarnya sama dengan
pengalamatan tidak langsung
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.
Displacement addressing
Penjelasan :
- 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.
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.Merupakan kebalikan dari
mode base register Field alamat dianggap
sebagai alamat memori dalam indexing Manfaat penting dari
indexing adalah untuk eksekusi program-pprogram iteratif.
Contoh :
Field eksplisit bernilai
A dan field imlisit mengarah pada register
Stack addressing
Penjelasan :
Stack adalah array lokasi
yang linier = pushdown list = last-in-firs-out .Stack merupakan blok
lokasi yang terbaik ,Btir ditambahkan ke
puncak stack sehingga setiap 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 demikian,
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 :
- kelengkapan set instruksi
- ortogonalitas (sifat indepedensi instruksi)
- kompatibilitas :
- source code compatibility
- object code compatibility.
Selain ketiga aspek
tersebut juga melibatkan hal-hal sebagai berikut :
- Operation Repertoire: Berapa banyak dan operasi apa saja yang disediakan, dan berapa sulit operasinya
- Data Types : tipe/jenis data yang dapat diolah.
- Instruction Format : panjangnya, banyaknya alamat, dsb.
- Register : Banyaknya register yang dapat digunakan .
- Addressing : Mode pengalamatan untuk operand.
SUMBER
Tidak ada komentar:
Posting Komentar