Thursday, 27 October 2016

Arsitektur Set Instruksi

Set instruksi didefinisikan sebagai suatu aspek dalam arsitektur komputer yang dapat dilihat oleh para pemrogram.
Set instruksi (instruction set) biasa disebut juga sebagai sekumpulan lengkap instruksi yang dapat dimengerti oleh sebuah CPU dengan sebuah kamus berisi daftar perintah apa saja yang dapat dilakukan (didukung) oleh sebuah prosesor, dan biasanya terikat dengan sebuah keluarga arsitektur prosesor tertentu.

1.      Jenis-Jenis Instruksi

a.      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.

b.      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.

c.       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)

d.      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).

2.      Teknik Pengalamatan/ Addresing
Untuk menyimpan data ke dalam memori komputer, tentu memori tersebut diberi identitas (yang disebut dengan alamat/ address) agar ketika data tersebut diperlukan kembali, komputer bisa mendapatkannya sesuai dengan data yang pernah diletakkan di sana.
Untuk media penyimpanan yang bersifat sequential access storage device (SASD) seperti kaset (magnetic tape), alamat tersebut tidak terlalu dipusingkan karena pasti data disimpan secara berurutan (sequential/ consecutive) mulai dari depan hingga ke akhir bagian dari pita kaset. Begitu juga dengan data yang diorganisasi secara sequential, di alamat manapun data disimpan, data akan tetap diakses secara berurutan pula, mulai dari record pertama hingga ke record terakhir.
Lain halnya dengan data yang diorganisasi secara relative yang disimpan di media penyimpanan yang bersifat direct access storage device (DASD), karena data yang akan diraih kembali, dituju langsung ke alamatnya tanpa melalui records lainnya (belum tentu dimulai dari data yang paling awal disimpan), maka alamat memori memegang peranan penting. Untuk itu, di catatan ini akan diterangkan beberapa cara melakukan penempatan data di memori agar kelak dapat diraih kembali dengan tepat, yang diberi judul “Teknik Pengalamatan.”
Teknik pengalamatan ini hampir sudah tidak diperlukan lagi oleh pemakai komputer saat ini karena hampir seluruh software yang beredar di pasaran tidak mengharuskan si pemakai menentukan di alamat mana datanya akan disimpan (semua sudah otomatis dilakukan oleh si software). Jadi, yang kita pelajari adalah bagaimana kira-kira si software tersebut melakukan teknik pengalamatannya, sehingga data yang sudah kita berikan dapat disimpan di alamat memori tertentu dan dapat diambil kembali dengan tepat.
Ada 3 teknik dasar untuk pengalamatan, yaitu:
-          Pemetaan langsung (direct mapping) yang terdiri dari dua cara yakni Pengalamatan Mutlak (absolute addressing) dan Pengalamatan relatif (relative addressing)
-          Pencarian Tabel (directory look-up)
-          Kalkulasi (calculating).

3.      Desain Set Intruksi
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 dan Object Code Compatibility
Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut:
-          Operasi 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
-          Addresing: Mode pengalamatan untuk operand

No comments:

Post a Comment