Set instruksi (instruction set)
adalah sekumpulan lengkap instruksi yang dapat di mengerti oleh sebuah CPU, set
instruksi sering juga disebut sebagai bahasa mesin (machine code), karna
aslinya juga berbentuk biner kemudian dimengerti sebagai bahasa assembly, untuk
konsumsi manusia (programmer), biasanya digunakan representasi yang lebih mudah
dimengerti oleh manusia.
Sebuah instruksi terdiri dari
sebuah opcode, biasanya bersama dengan beberapa informasi tambahan seperti
darimana asal operand-operand dan kemana hasil-hasil akan ditempatkan. Subyek
umum untuk menspesifikasikan di mana operand-operand berada (yaitu,
alamat-alamatnya) disebut pengalamatan
Pada beberapa mesin, semua
instruksi memiliki panjang yang sama, pada mesin-mesin yang lain mungkin terdapat
banyak panjang berbeda. Instruksi-instruksi mungkin lebih pendek dari, memiliki
panjang yang sama seperti, atau lebih panjang dari panjang word. Membuat semua
instruksi memiliki panjang yang sama lebih muda dilakukan dan membuat
pengkodean lebih mudah tetapi sering memboroskan ruang, karena semua instruksi
dengan demikian harus sama panjang seperti instruksi yang paling panjang.
Mode pengalamatan merupakan
metode penentuan alamat operand pada instruksi. Operand instruksi diletakan
pada memori utama dan register CPU. Tujuan yang mempengaruhi arsitektur
komputer ketika memilih mode pengalamatan:
·
Mengurangi panjang instruksi dengan mempunyai
medan yang pendek untuk alamat.
·
Menyediakan bantuan yang tangguh kepada
pemrogram untuk penanganan data kompleks seperti pengindeksan sebuah array,
control loop, relokasi program dan sebagainya.
Teknik Pengalamatan
1.
Immediate Addressing
2.
Direct Addressing
3.
Indirect Addressing
4.
Register addressing
5.
Register indirect addressing
6.
Displacement addressing
7.
Stack addressing
A. Immediate
Addressing (Pengalamatan Segera)
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
B. 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
C. 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
D. 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
E. 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
F. 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
o 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
o 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
o 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
G. 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
JENIS-JENIS INSTRUKSI
1. Data procecessing: Arithmetic dan Logic
Instructions
Data
processing adalah jenis pemrosesan yang dapat mengubah data menjadi informasi
atau pengetahuan. Pemrosesan data ini sering menggunakan komputer sehingga bisa
berjalan secara otomatis. Setelah diolah, data ini biasanya mempunyai nilai
yang informatif jika dinyatakan dan dikemas secara terorganisir dan rapi, maka istilah
pemrosesan data sering dikatakan sebagai sistem informasi. Kedua istilah ini
mempunyai arti yang hampir sama, pemrosesan data mengolah dan memanipulasi data
mentah menjadi informasi (hasil pengolahan), sedangkan sistem informasi memakai
data sebagai bahan masukan dan menghasilkan informasi sebagai produk keluaran.
2. 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. Penyimpanan data komputer menyediakan salah satu
tiga fungsi inti dari komputer modern, yakni mempertahankan informasi. Ia
merupakan salah satu komponen fundamental yang terdapat di dalam semua komputer
modern, dan memiliki keterkaitan dengan mikroprosesor, dan menjadi model
komputer yang digunakan semenjak 1940-an.
Dalam
penggunaan kontemporer, memori komputer merujuk kepada bentuk media penyimpanan
berbahan semikonduktor, yang dikenal dengan sebutan Random Access Memory (RAM),
dan kadang-kadang dalam bentuk lainnya yang lebih cepat tapi hanya dapat
menyimpan data secara sementara. Akan tetapi, istilah “computer storage”
sekarang secara umum merujuk kepada media penyimpanan massal, yang bisa berupa
cakram optis, beberapa bentuk media penyimpanan magnetis (seperti halnya hard
disk) dan tipe-tipe media penyimpanan lainnya yang lebih lambat ketimbang RAM,
tapi memiliki sifat lebih permanen, seperti flash memory.
3. Data
Movement: I/O instructions
Proses data
movement ini adalah memindahkan (dapat diakatakan membackup juga) data – data
dari database yang berupa data, indeks, grand, schema, dan lain – lain ketempat
baru. Tempat baru ini bisa ke dalam database baru atau memang untuk dibackup
saja.
Data movement
terdiri dari 2 bagian besar yaitu :
• Load &
Upload [difokuskan untuk memindahkan data yang berupa indeks atau data itu
sendiri alias isi dari database tersebut]
• Export
& Import [memindahkan data secara lengkap, mulai dari grand, schema, dan
seluruhnya]
4. Control: Test and branch instructions
Unit kendali
(bahasa Inggris: 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. Output
dari CU ini akan mengatur aktivitas dari bagian lainnya dari perangkat CPU
tersebut.
Pada awal-awal desain komputer, CU
diimplementasikan sebagai ad-hoc logic yang susah untuk didesain. Sekarang, CU
diimplementasikan sebagai sebuah microprogram yang disimpan di dalam tempat
penyimpanan kontrol (control store). Beberapa word dari microprogram dipilih
oleh microsequencer dan bit yang datang dari word-word tersebut akan secara
langsung mengontrol bagian-bagian berbeda dari perangkat tersebut, termasuk di
antaranya adalah register, ALU, register instruksi, bus dan peralatan
input/output di luar chip. Pada komputer modern, setiap subsistem ini telah
memiliki kontrolernya masing-masing, dengan CU sebagai pemantaunya
(supervisor).
DESAIN SET INSTRUKSI
Desain set instruksi merupakan
masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya adalah:
·
Kelengkapan set instruksi
·
Ortogonalitas (sifat independensi 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 olah
Instruction Format: panjangnya, banyaknya alamat, dsb.
·
Register: Banyaknya register yang dapat
digunakan 4.Addressing: Mode pengalamatan untuk operand
SUMBER :
https://id.wikipedia.org/wiki/Set_instruksi
https://penawikara.wordpress.com/2013/05/31/mode-pengalamatan/
Tidak ada komentar:
Posting Komentar