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 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.
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 :
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 memori
diperlukan untuk memindah data yang terdapat di memori dan register.
Instruksi-instruksi I/O diperlukan
untuk memindahkan program dan data kedalam memori dan mengembalikan hasil
komputasi kepada pengguna.
TEKNIK
PENGALAMATAN
Terdapat 3 teknik dasar
untuk pengalamatan, yaitu:
1.
Pemetaan langsung (direct mapping)
terdiri dari dua cara
yakni Pengalamatan Mutlak (absolute addressing) dan Pengalamatan relatif
(relative addressing).
Pengalamatan Mutlak
Untuk teknik pengalamatan ‘alamat
mutlak’ ini, tidak terlalu mempermasalahkan kunci atribut karena diminta
langsung menuliskan di mana alamat record yang akan di masukkan. Jika kita
menggunakan hard disk atau magnetic drum, ada dua cara dalam menentukan alamat
memorinya, yaitu (1) cylinder addressing dan (2) sector addressing. Jika kita
menggunakan cylinder addressing, maka kita harus menetapkan nomor-nomor dari
silinder (cylinder), permukaan (surface), dan record, sedangkan bila kita
menggunakan sector addressing, maka kita harus menetapkan nomor-nomor dari
sektor (sector), lintasan (track), dan permukaan (surface). Teknik ini mudah
dalam pemetaan (pemberian) alamat memorinya. Sulitnya pada pengambilan
(retrieve) data kembali, jika data yang kita masukkan banyak, kita bisa lupa di
mana alamat record tertentu.
Pengalamatan relatif
Teknik ini menjadikan atribut kunci
sebagai alamat memorinya, jadi, data dari NIM dijadikan bertipe
numeric(integer) dan dijadikan alamat dari record yang bersangkutan. Cara ini
memang sangat efektif untuk menemukan kembali record yang sudah disimpan,
tetapi sangat boros penggunaan memorinya. Tentu alamat memori mulai dari 1
hingga alamat ke sekian juta tidak digunakan karena nilai dari NIM tidak ada
yang kecil. Pelajari keuntungan dan kerugian lainnya.Teknik ini termasuk dalam
katagori address space dependent.
2.
Pencarian Tabel (directory look-up)
Teknik ini dilakukan dengan cara
mengambil seluruh kunci atribut dan alamat memori yang ada dan dimasukkan ke
dalam tabel tersendiri. Jadi tabel itu (misal disebut dengan tabel INDEX) hanya
berisi kunci atribut (misalkan NIM) yang telah disorting (diurut) dan alamat
memorinya. Jadi, sewaktu dilakukan pencarian data, tabel yang pertama dibaca
adalah tabel INDEX itu, setelah ditemukan atribut kuncinya, maka data alamat
yang ada di sana digunakan untuk meraih alamat record dari data (berkas/ file/
tabel) yang sebenarnya. Pencarian yang dilakukan di tabel INDEX akan lebih
cepat dilakukan dengan teknik pencarian melalui binary search (dibagi dua-dua,
ada di mata kuliah Struktur dan Organisasi Data 2 kelak) ketimbang dilakukan
secara sequential. Nilai key field (kunci atribut) bersifat address space
independent (tidak terpengaruh terhadap perubahan organisasi file-nya), yang
berubah hanyalah alamat yang ada di INDEX-nya.
3.
Kalkulasi (calculating)
Kalau pada teknik pencarian tabel
kita harus menyediakan ruang memori untuk menyimpan tabel INDEX-nya, maka pada
teknik ini tidak diperlukan hal itu. Yang dilakukan di sini adalah membuat
hitungan sedemikian rupa sehingga dengan memasukkan kunci atribut record-nya,
alamatnya sudah dapat diketahui. Tinggal masalahnya, bagaimana membuat hitungan
dari kunci atribut itu sehingga hasilnya bisa efisien (dalam penggunaan memori)
dan tidak berbenturan nilainya (menggunakan alamat yang sama).
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 :
Tidak ada komentar:
Posting Komentar