Arsitektur Set Instruksi

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.
Arsitektur set instruks atau Instruction Set Architecture (ISA) adalah 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).

Tujuan
§  Memahami representasi set instruksi dan jenis-jenis format instruksi.
§  Mengetahui jenis-jenis type operand yang digunakan.
§  Macam-macam mode pengalamatan
§  Format instruksi
§  Format instruksi pada pentium
§  Memahami implementasi set instruksi pada pentium II

Sasaran
Pengetahuan tentang set instruksi sangat dirasakan manfaatnya oleh programmer bahasa tingkat rendah, seperti bahasa assembler. Bagi programmer bahasa tingkat rendah sangat memerlukan informasi tentang penggunaan register dan spesifikasinya, struktur memory, maupun format instruksi. Tulisan ini juga akan membahas tentang karakteristik mesin instruksi, tipe-tipe operasi, mode pengalamatan dan format instruksi.


Karakteristik Instruksi Mesin
1.      Instruksi mesin (machine instruction) yang dieksekusi membentuk suatu operasi dan berbagai macam fungsi CPU.
2.      Kumpulan fungsi yang dapat dieksekusi CPU disebut set instruksi (instruction set) CPU.
3.      Mempelajari karakteristik instruksi mesin, meliputi:
- Elemen-elemen instruksi mesin
- Representasi instruksinya
- Jenis-jenis instruksi
- Penggunaan alamat
- Rancangan set instruksi

Elemen Instruksi Mesin
Untuk dapat dieksekusi CPU, suatu instruksi harus berisi elemen informasi yang diperlukan CPU secara lengkap dan jelas. Berikut adalah elemen – elemennya:
1.     Operation Code (Opcode)
menspesifikasikan operasi yang akan dilakukan. Kode operasi berbentuk kode
biner.
2.      Source Operand Reference
Operasi dapat berasal dari lebih satu sumber. Operand adalah input instruksi.
3.     Result Operand Reference
Merupakan hasil atau keluaran operasi.
4.      Next Instruction Reference
elemen ini menginformasikan CPU posisi instruksi berikutnya yang harus diambil dan dieksekusi

Operand dari Operasi
Melihat dari operasi, operand suatu operasi dapat berada di salah satu dari ketiga daerah berikut:
-          Memori utama atau memori virtual
-          Register CPU
-          Perangkat I/O

Representasi Instruksi
Instruksi komputer direpresentasikan oleh sekumpulan bit. Instruksi dibagi menjadi beberapa field. Field-field ini diisi oleh elemen-elemen instruksi yang membawa informasi bagi operasi CPU. Layout instruksi dikenal dengan format instruksi.

Format Instruksi
[opcode] [alamat]
* Kode operasi (opcode) direpresentasikan dengan singkatan-singkatan yang disebut mnemonic.
*   Mnemonic mengindikasikan suatu operasi bagi CPU.
*   Contoh mnemonic:
- ADD = penambahan
- SUB = subtract (pengurangan)
- LOAD = muatkan data ke memori
*   Contoh representasi operand secara simbolik:
- ADD X, Y
artinya: tambahkan nilai yang berada pada lokasi Y dengan isi register X dan simpan
hasilnya di register X.
*   Programmer dapat menuliskan program bahasa mesin dalam bentuk simbolik.
*  Setiap opcode simbolik memiliki representasi biner yang tetap dan programmer dapat
menetapkan lokasi masing-masing operand.

Jenis – jenis Instruksi


1. Data procecessing: Arithmetic dan Logic Instructions
2. Data storage: Memory instructions
3. Data Movement: I/O instructions
4. Control: Test and branch instructions
Previous
Next Post »