Sabtu, 29 Oktober 2016

ARSITEKTUR 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 (Stallings, W. 1990, hal. 294) 


JENIS - JENIS INSTRUKSI 
  1. Data Processing / Pengolahan Data : instruksi-instruksi aritmetika dan logika. Instruksi aritmetika memiliki kemampuan untuk mengolahdata numeric, sedangkan instruksi logika beroperasi pada bit-bit word sebagai bit bukan sebagai bilangan. Operasi-operasi tersebut dilakukan terutama untuk data di register CPU.
  2. Data Storage / Penyimpanan Data : instruksi-instruksi memori. Instruksi-instruksi memori diperlukan untuk memindah data yang terdapat di memori dan register.
  3. Data Movement / Perpindahan Data : instruksi I/O. Instruksi-instruksi I/O diperlukan untuk memindahkan program dan data ke dalam memori dan mengembalikan hasil komputansi kepada pengguna.
  4. Control / Kontrol : instruksi pemeriksaan dan percabangan. Instruksi-instruksi kontrol digunakan untuk memeriksa nilai data, status komputansi dan mencabangkan ke set instruksi lain. 


TEKNIK PENGALAMATAN

Metode pengalamatan merupakan aspek dari set instruksi arsitektur disebagian unit pengolah pusat (CPU) desain yang didefinisikan dalam set instruksi arsitektur dan menentukan bagaimana bahasa mesin petunjuk 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 register dan / atau konstanta yang terkandung dalam instruksi mesin atau di tempat lain. 

 Jenis-jenis metode pengalamatan diantaranya : 

 1. Immediate Addressing Mode 



 2. Register Addressing Mode 



 3. Direct Addressing Mode 



 4. Indirect Addressing Mode 


R0 atau R1 digunakan untuk menunjukkan Destination Address
  • MOV A,#30h ; salin immediate data 30h ke Akumulator 
  • MOV R0,#7Fh ; salin immediate data 7Fh ke register R0 
  • MOV @R0,A ; salin the data in A ke alamat di R0 


R0 atau R1 digunakan untuk menunjukkan Source Address 
  • MOV R0,#7Fh ; salin immediate data 7Fh ke register R0 
  • MOV @R0,#30h ; salin immediate data 30 ke alamat di R0 
  • MOV A,@R0 ; salin isi dari alamat di R0 ke Akumulator  

DESAIN SET INSTRUKSI 

 Desain set instruksi merupakan masalah yang sangat komplek yang melibatkan banyak aspek, diantaranya :
  1. Kelengkapan set instruksi
  2. Ortogonalitas (sifat independensi instruksi)
  3. Kompatibilitas :
    - Source code compatibility
    - Object code compatibility 
 Selain ketiga aspek tersebut juga melibatkan hal-hal sebagai berikut :
  1. Operation Repertoire, berapa banyak dan operasi apa saja yang disediakan dan berapa sulit operasinya.
  2. Data Types, tipe / jenis data yang dapat diolah.
  3. Instruction Format, panjangnya, banyaknya alamat, dsb.
  4. Register, banyaknya register yang dapat digunakan.
  5. Addressing, mode pengalamatan untuk operand. 

Tidak ada komentar:

Posting Komentar