Senin, 11 Oktober 2010

CPU

A. Format Instruksi
Program terdiri dari urutan instruksi, setiap instrusksi memiliki aksi tertentu. Setiap instruksi terdiri dari field kode operasi atau opcode yang menentukan operasi apa yang harus dikerjakan oleh CPU. Instruksi dapat berupa opcode saja, tetapi sebagian besar instrusksi melibatkan satu atau lebih operand.
Untuk menentukan dimana operand berada disebut addressing. Instruksi tanpa operand disebut dengan zero address instruction. Instruksi yang memerlukan satu atau lebih operand disebut one-address instruction, two-address instruction,dan seterusnya.
Panjang Instruksi tergantung jumlah operand yang terlibat dan cara menentukan setiap operand.
Pada sistem dua operand:
1. 1 operand sebagai sumber (source) atau src.
2. 1 operand sebagai tujuan (destination) atau dest.
Pada sistem tiga operand:
1. 2 operand pertama sebagai sumber (source), src 1 dan src 2.
2. 1 operand kedua sebabagai tujuan (destination), dest.

B. Addressing Mode
Beberapa jenis addressing modes diuraikan sebagai berikut:
1. Immediate Addressing
Pada mode ini, operand merupakan bagian dari instruksi, sehingga operand tersedia dengan segera. Operand ini disebut immediate operand karena secara otomatis di-fetch dari memori dengan instruksi.
2. Direct Addressing
Pada mode ini instruksi menyediakan alamat operand secara langsung. CPU menggunakan alamat ini untuk melakukan fetch (atau store) oprend.
3. Register Direct Addressing
Mode ini mirip dengan direct addressing, perbedaannya field operand menentukan register, bukan alamatmemori. Register ini adalah salah satu dari general purpose register (GPR) CPU.
4. Register Indirect Addressing
Pada mode ini register ditentukan oleh instruksi yang berisi alamat operand, bukan operand itu sendiri. Karena memegang alamat operand, maka register dapat dipandang sebagai petunjuk ke operand, sehingga disebut pointer.
5. Indirect Addressing
Pada addressing mode berikutnya instruksi menentukan alamat operand berkaiatan dengan jarak dari alamat yang laian. Pada mode addressing ini instruksi menyediakan dan menunjukkan register mana yang memegang indek. Indek menentukan berapa jauh operand dari alamat yang disediakan oleh instruksi.
6. Based Addressing
Mode ini dikenal dengan relative addressing. Pada tipe addressing ini alamat operand berkenaan dengan jarak (atau displacement) dengn base address yang disimpan dalam register.


7. Relative Addressing
Program melibatkan instruksi tipe jump untuk menttansfer control ke program lain atau ke bagian lain dari program lain dari program yang sama.

C. Set Instruksi
Set instruki dapat berbeda tidak hanya pada tipe operasi, tetapi juga tipe data dimana operasi-operasi tersebut dilakukan.
Dipandang dari tipe operasi, instruksi dapat dibagi menjadi tiga kelas utama, yaitu:
1. Instruksi transfer data
Memindahkan data antar lokasi tanpa melakukan operasi apapun pada data yang bersangkutan. Contoh instrusi transfer data adalah MOV.
2. Instruksi kendali
Tidak melakukan operasi pada data. Fungsi instrusksi ini untuk mengendalikan program dan keadaan (state) CPU. Contoh instrusksi transfer kendali adalah JUMP, CALLSUB, RETSUB, RETINT, LOOPBCK (kendali program) dan SETC, CLRC, ENINT, DISINT, HALT, NOP (kendali CPU).
3. Instruksi manipulasi data
Melakukan operasi data yang memberikan hasil melalui transformasi data. Yang termasuk instruksi manipulasi data adalah:
a). Aritmetik
b). Lojik
c). Shift/rotate
d). Manipulasi bit
e). Perosesan string

D. CPU Timing
Instruction cyce dan Machine cycle
Adalah urutan langkah yang diperlukan dalam fetching dan eksekusi instrusi. Di dalam prosesor, langkah ini dibagi menjadi urutan yanglebih kecil yang disebut machine cycle. Tipe machine cycle yang umum adalah:
a). Memory Read
b). Memory Write
c). Internal Operation
d). Interupt Acknowledge
e). Bus Grant

Tidak ada komentar:

Posting Komentar