SET INSTRUKSI
Pengertian 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 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 kumpulan 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.
KARAKTERISTIK DAN FUNGSI SET INSTRUKSI
Operasi dari CPU ditentukan oleh instruksi-instruksi yang dilaksanakan atau
dijalankannya. Instruksi ini sering disebut sebagai instruksi mesin (mechine
instructions) atau instruksi komputer (computer instructions).Kumpulan dari
instruksi-instruksi yang berbeda yang dapat dijalankan oleh CPU disebut set
Instruksi (Instruction Set).
FORMAT INSTRUKSI
Suatu instruksi terdiri dari beberapa field yang sesuai dengan elemen dalam instruksi
tersebut. Layout dari suatu instruksi sering disebut sebagai Format Instruksi (Instruction
Format).
- OPCODE
- OPERAND REFERENCE
• JENIS-JENIS OPERAND Addresses (akan dibahas pada addressing
modes)
Numbers :
- Integer or fixed point
- Floating point
- Decimal (BCD)
Characters :
- ASCII
- EBCDIC
• Source Operand Reference, operasi dapat berasal dari lebih satu sumber.
Operand adalah input instruksi. Sumber dan hasil operand dapat berada di salah
satu dari ketiga daerah di bawah ini.
- Memori utama atau memori virtual dengan referensi alamat berikutnya, maka
alamat memori utama atau virtual harus diketahui.
- Register CPU : instruksi harus diberi nomor register yang dimaksud.
- Perangkal I/O : instruksi harus menspesifikasikan modul I/O yang diperlukan oleh
operasi.
Elemen Set Instruksi
- lnstruksi transfer data : instruksi ini menyalin data dari satu register/lokasi
memori ke yang lainnya.
- lnstruksi aritmetika : instruksi ini melakukan operasi-operasi aritmetika.
- lnstruksi logika : instruksi ini melakukan operasi-operasi logika Boolean.
- lnstruksi transfer kontrol : instruksi ini modifikasi/mengubah urutan
eksekusi program.
- lnstruksi I/O : instruksi ini melakukan transfer informasi
antara peripheral eksternal dan inti sistem (CPU/memori).
- lnstruksi manipulasi strint : instruksi ini melakukan manipulasi
string byte, word, double word, dan sebagainya.
- lnstruksi Translate: instruksi ini melakukan konversi data dari satu format
ke format lain.
- lnstruksi kontrol prosesor: instruksi ini melakukan kontrol operasi prosesor.
Beberapa contoh instruksi untuk setiap jenis instruksi
Beberapa contoh instruksi untuk setiap jenis instruksi
Beberapa contoh instruksi untuk setiap jenis instruksi
Teknik Pengalamatan
Terdapat 2 cara yang biasa digunakan dalam penempatan operand instruksi yaitu pada
lokasi memori utama dan register CPU.
Jika operand ditempatkan pada memori utama, alamat lokasi harus diberikan oleh instruksi
dalam medan operand. Tidak perlu memberikan alamat secara eksplisit pada instruksi. Banyak
metode yang berguna yang dipakai untuk menentukan alamat operand. Mode yang berbeda
dalam penentuan alamat operand pada instruksi dikenal dengan addressing modes (mode
pengalamatan). suatu komputer bisa saja tidak menggunakan semua mode pengalamatan
tersebut.
Teknik Pengalamatan
Mode pengalamatan yang populer adalah :
- Pengalamatan immediate
- Pengalamatan langsung (absolut)
- Pengalamatan tak-langsung
- Pengalamatan tak-langsung register
- Pengalamatan register
- Pengalamatan indeks
- Pengalamatan relatif
- Pengalamata Base dengan indeks dan offset
Teknik Pengalamatan
Mengapa kita perlu begitu banyak mode pengalamatan?
Beberapa mode pengalamatan memberikan fleksibilitas pada pemrogram dalam menulis
program yang efisien (singkat dan cepat).
Berikut adalah tujuan yang memengaruhi arsitek 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, kontrol loop, relokasi progam, dan
sebagainya.
Teknik Pengalamatan
Mode pengalamatan yang tepat yang digunakan oleh suatu instruksi ditunjukkan pada unit
kontrol, ada dua cara yaitu :
• Pekerjaan yang paling penting dan kompleks dalam mendesain komputer adalah
membuat set instruksi.
• Target segmen pasar : Sasaran bidang aplikasi untuk komputer memerlukan operasi-
operasi khusus untuk pemrosesan data yang efisien. Komputer saintifik harus
mempunyai aritmetika floating-point yang tingkat presisinya baik/tidak terlalu jelek.
Sedangkan komputer bisnis harus mendukung aritmetika desimal, dan komputer
hiburan harus mempunyai operasi-operasi multimedia.
• Kinerja sistem : Jika sebuah program mempunyai instruksi sedikit, kinerja sistem
meningkat karena waktu yang digunakan oleh CPU dalam pengambilan instruksi
berkurang. Untuk program yang pendek, instruksi yang digunakan harus instruksi
kompleks. Jadi, instruksi tunggal harus dapat melakukan beberapa mikrooperasi.
Pemrogram menyadari hal ini mengurangi ukuran program. Tapi di sisi lain menambah
kompleksitas unit kontrol dan waktu eksekusi instruksi.
Desain Set Instruksi
• Secara tradisional, superioritas suatu komputer ditentukan pada basis set
instruksinya. Jumlah total instruksi dan ketangguhan yang dimilikinya menjadi sangat
penting karena faktor tersebut berkontribusi pada efisiensi komputer. Program yang
efisien adalah bila program itu pendek dan menempati ruang memori yang sedikit.
waktu eksekusi juga merupakan faktor kunci.
• Kecenderungan sekarang adalah mengikuti penggunaan instruksi-instruksi sederhana
yang menghasilkan unit kontrol yang sederhana. Sirkuit CPU lebih penting dari ukuran
memori. Jadi, kecepatan CPU meningkat pada pemrosesan instruksi dari
arsitektur RISC.
• Pemilihan set instruksi untuk suatu komputer bergantung pada cara CPU disusun.
secara tradisional, ada tiga organisasi CPU dengan instruksi-instruksi spesifik tertentu :
- CPU berbasis akumulator
- CPU berbasis register
- CPU berbasis stack
Transfer Data
Instruksi tranfer data harus menetapkan :
• Lokasi operand sumber
• Lokasi operand tujuan
• Panjang data yang akan dipindahkan
• Mode pengalamatannya
Apabila sebuah atau kedua operand berada di dalam memori, maka CPU harus
melakukan sebagian atau seluruh tindakan berikut :
1. Menghitung alamat memori, yang didasarkan pada mode alamatnya.
2. Apabila alamat mengacu pada virtual memori harus dicari alamat memori sebenarnya.
3. Menentukan apakah alamat berada dalam cache memori.
4. Bila di cache tidak ada, dikeluarkan perintah ke modul memori