CPU Berbasis Akumulator
Pada
mulanya komputer adalah berbasis akumulator. Hal ini merupakan CPU yang
sederhana, dimana akumulator berisi satu operand pada instruksi, demikian juga
hasilnya tersimpan pada akumulator. Isi akumulator disertakan di dalam opersi-operasi
aritmatika seperti penjumlahan, pengurangan dan sebaginya. Hal ini dikenal
dengan mesin sartu alamat.
Contoh
CPU berbasis akumulator : PDP-8; Mark I
Keuntungan
CPU berbasis akumulator:
• Isi
akumulator diperuntukkan bagi satu operand, karena itu tidak memerlukan field
alamat operand (untuk satu operand) dalam instruksi.
• Siklus
instruksi menggunakan waktu yang singkat sebab menghemat waktu dalam
pengambilan instruksi karena tidak ada siklus pengambilan operand.
Kekurangan
CPU berbasis akumulator:
• Ukuran
program menjadi panjang karena banyak menggunakan instruksi dalam
ekspresi-ekspresi kompleks.
• Waktu
eksekusi program bertambah karena bertambahnya jumlah instruksi dalam program.
CPU Berbasis Register
Pada
CPU jenis ini, banyak register yang digunakan sebagai akumulator. Dengan kata
lain lebih dari satu akumulator. CPU seperti ini mempunyai organisasi register
umum GPR (General Purpose Register). Penggunaan register-register
tersebut menghasilkan program yang pendek dengan instruksi yang sedikit.
Bila
dua atau tiga operand, biasanya mesin harus mempunyai dua atau lebih register.
Secara khas, operasi-operasi arimatika dan logika memerluka dua sampai tiga
operand. Instruksi dua dan tiga operand adalah atau lebi operand. Instuki dua
dan tiga operand adalah yang umu karena mereka memerluka sebuah format
instruksi yang relatif lebih pendek.
Pada
umumnya mesin (CPU) dengan instruksi dua atau tiga-operand ada dua jenis, yaitu
desain load-store dan desain memori-register. Pada mesin
load-store, hanya instruksi load dan store yang mengakses memori, selebihnya
umumnya melakukan operasi pada register.
Keuntungan
mesin load-store (mesin tiga operand):
• Sederhana,
pengkodean instruksi fixed length
• Instruksi
menggunakan jumlah siklus yang sama
• Relatif
mudah untuk pipelining
Kelemahan
mesin load-sotre:
• Jumlah
instruksi yang lebih banyak
• Tidak
semua instruksi memerlukan tiga operand
• Bergantung
pada kompiler yang baik
CPU Berbasis Stack
Stack
merupakan daftar yang didorong kebawah dengan mekanisme akses LIFO (Last In First
Out). Stack yang menyimpan operand-operand, penggunaan stack dapat berada
didalam CPU atau merupakan bagian dari memori. Suatu register (atau lokasi
memori) digunakan untuk menunjuk ke alamat lokasi kosong pada puncak stack.
Register ini dikenal dengan Stack Pointer (SP). Bila tidak ada yang
tersimpan dalam stack, berarti stack kosong dan SP menunjuk kebagian stack
terbawah. Bila suatu item disimpan dalam stack, maka dinamakan operasi PUSH;
dan isi SP diturunkan (decrement). Bila stack penuh, SP menunjuk ke
bagian stack teratas. Bila suatu item diambil dari stack (operasi POP), maka SP
dinaikkan (increment).
Keuntungan
CPU berbasis stack adalah:
• Pemrograman
mudah/efisiensi kompiler tinggi
• Sangat
cocok untuk bahasa-bahasa blok terstruktur-block structure language
• Instruksi
tidak mempunyai field alamat; instruksi pendek
Kelemahan
CPU berbasis stack:
• Diperlukan
sirkuit hardware tambahan untuk implementasi stack
• Ukuran
program meningkat
0 comments
Post a Comment