KATA PENGANTAR
Assalamu’alaikum Wr. Wb.
Puji syukur saya ucapkan
kehadirat Allah SWT karena atas rahmat dan karunia-Nya saya dapat
menyelesaikan makalah ini. Tak lupa sholawat serta salam semoga tetap terlimpahkan pada Rasulullah SAW
beserta keluarga (ahli bait). Amin. Makalah ini saya
buat untuk menyelesaikan tugas Organisasi Komputer, dalam makalah ini saya akan membahas tentang
Arsitektur Set Instruksi dalam komputer. Dengan harapan agar kita semua
mengetahui pandangan terhadap komputer. Semoga
dengan adanya makalah ini dapat memberi pengetahuan yang baru terhadap materi yang telah dicantumkan, dalam
pembuatan makalah ini saya menyadari segala kekurangan yang melekat
pada makalah ini. Untuk itu kritik dan saran yang bersifat membangun dari semua, supaya makalah ini dapat
menjadi lebih baik lagi.
Assalamu’alaikum Wr. Wb.
Baubau,
11 April 2014
DAFTAR ISI
KATA PENGANTAR.........................................................................................................i
DAFTAR ISI.......................................................................................................................ii
BAB I PENDAHULUAN
1.1
Latar Belakang....................................................................................1
1.2
Tujuan Penulisan.................................................................................2
1.3
Rumusan Masalah................................................................................2
BAB II PEMBAHASAN
2.1
Arsitektur Set Intruksi......................................................................
..3
2.2
Elemen-elemen dari instruksi mesin (set instruksi)...................5
2.3
Representasi intruksi...........................................................................5
2.4
Format instruksi..................................................................................6
2.4.1 Jenis intruksi...............................................................6
2.4.2 Jumlah Alamat (NumberOf Addresses).............................7
2.4.3
Jenis-Jenis Operand....................................................................8
2.5
Teknik Pengalamatan..........................................................................9
2.6
Rancangan Set Instruksi......................................................................10
2.7
Tipe Operasi.......................................................................................11
BAB III PENUTUP
3.1
Kesimpulan........................................................................................15
3.2
Penutup..............................................................................................15
DAFTAR
PUSAKA............................................................................................................16
BAB I
PENDAHULUAN
1.
Latar Belakang
Komputer
adalah sebuah mesin hitung elektronik yang secara cepat menerima informasi masukan
digital dan mengolah informasi tersebut menurut intruksi yang tersimpan dan keluaran informasi hasil
olahan. Fungsi dari computer adalah :
a.
Operasi pengolahan data
b.
Operasi penyimpanan data
c.
Operasi pemindahan data
Operasi control Arsitektur computer adalah konsep
perencanaan dan pengoprasian
dasar dari suatu system
computer. Arsitektur computer ini merupakan rencana cetak biru dan deskrifsi fungsional dari kebutuhan bagian
perangkat keras yang didesain (kecepatan proses dan system
interkoneksi). Dalam hal ini, implementasi perencanaan
dari masing-masing bagian akan lebih difokuskan terutama mengenai bagaimana CPU akan bekerja, dan mengenai cara
pengaksesan data dan alamat dari dan ke memory
cache, RAM, ROM, cakram keras, dll. Beberapa contoh dari arsitektur computer ini adalah arsitektur
von Neumann, CISC, RISC, blue gene, dll. CPU terdiri dari
beberapa bagian yang berbeda yang saling berintegrasi dalam membentuk fungsinya secara bersamaan. Pada
bagian ini akan dibahas perkembangan
arsitektur CPU
dari tiga generasi yaitu
pra computer yang akan diwakili oleh arsitektur
mesin Analitis Babagge, generasi computer pertama yangstored program yang
diwakili oleh mesin von Noumann dan generasi computer modern.
1. Arsitektur Mesin
Analitis Babbage (1843)
Pada tahun 1843, seorang
professor matematika dari universitas Cambridge inggris yang bernama Charles
babbge, menemukan suatu konsep pemrosesan data yang menjadi dasar kerja dan prototype dari
computer-komputer jaman sekarang. Mesin tersebut dikenal dengan babbage’s analytical engine.
|
2. Arsitektur Mesin Van Neumann (1952)
Mesin van Neumann dalam
hal ini mewakili mesin computer pertama yang bersifat stored program. Jhon
von Neumann adalah seorang ahli matematika dan anggota Institute of Advance
Study di Princention New Jersey yang berkerja sama dengan H.H Goldstine
dan A.W. Binks mengajukan suatu makalah yang meyarankan bahwa dalam pembuatan
computer sebaiknya menggunkan angka binary. Kosep tersebut pada akhirnya
menjadi tonggak sejarah dalam terciptanya computer digital yang akhirnya membawa
Neumann pada julukan “ pro moter of the stored program (software)
concept”.
3.
Arsitektur
Mesin Komputer Modern
Arsitektur CPU computer modern, disini bagian-bagian
computer lebih lengkap seperti register, Control Unit, Kendali I/O (
Interconection ) Aritmatic Logic Unit.
1.2 Tujuan Penulisan
Adapun tujuan penulisan
makalah diantaranya :
1.
Memahami representasi set
intruksi, dan jenis-jenis format intruksi,
2.
Mengetahui jenis-jenis
tipe operandi yang digunakan.
3.
Macam-macam mode pengalamatan,
4.
Format intruksi.
1.3 Rumusan Masalah
Adapun rumusan penulisan makalah
diantaranya :
1.
Mengetahui apa itu arsitektur set
intruksi?
2.
Apa elemen-elemen arsitektur set intruksi?
3.
Bagaimana terbangunnya
arsitektur set intruksi?
4. Bagaimana merancang arsitektur set intruksi?
BAB II
PEMBAHASAN
2.1 Arsitektur
Set Intruksi
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).
Dua bagian utama arsitektur komputer:
1.
Instruction set
architecture (ISA) / arsitektur set instruksi ISA meliputi spesifikasi yang menentukan bagaimana programmer bahasa mesin akan berinteraksi
oleh computer. ISA menentukan sifat komputasional computer.
2.
Hardware system
architecture (HSA) / arsitektur system hardware HAS berkaitan dengan sub sistem hardware utama computer (CPU, system memori dan
IO). HSA mencakup desain logis dan organisasi arus data dari sub sistem. ISA
merupakan sebuah spesifikasi dari kumpulan 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.
|
menggunakan Register Transfer Language (RTL) untuk mendefinisikan operasi dari
setiap instruksi yang terdapat dalam ISA. Sebuah ISA juga dapat diemulasikan
dalam bentuk perangkat lunak oleh sebuah interpreter. Karena terjadi translasi
tambahan yang dibutuhkan untuk melakukan emulasi, hal ini memang
menjadikannya lebih lambat jika dibandingkan dengan menjalankan program
secara langsung di atas perangkat keras yang mengimplementasikan
ISA tersebut. Akhir-akhir ini, banyak vendor ISA atau mikroarsitektur
yang baru membuat perangkat lunak emulator yang dapat digunakan oleh para
pengembang perangkat lunak sebelum implementasi dalam bentuk perangkat keras
dirilis oleh vendor.
|
2.2 Elemen-elemen dari instruksi mesin (set
instruksi)
Operasi dari CPU ditentukan
oleh instruksi-instruksi yang dilaksanakan atau dijalankannya. Instruksi
ini sering disebut sebagai instruksi mesin (mechine instructions) atau
instruksi komputer (computer instructions). Elemen-elemen dari instruksi mesin
(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 (fetch) instruksi berikutnya setelah instruks
yang dijalankan selesai.
2.3 Representasi intruksi
Opcodes direpresentasikan dalam
bentuk singkatan yang disebut mnemonics, yang menunjukkan operasi
yang akan dilaksanakan. Mnemonics singkatan-singkatan
yang mcngindikasikan suatu operasi yang merupakan representasi dari
opcode. Contoh mnemonics instruksi :
Ø ADD : add (tambahkan)
Ø SUB : substract
(kurangkan)
Ø MUL : multiply (kalikan)
Ø DIV : divide (bagikan)
Ø LOAD :
load=>ambil data dari main-memory
Ø STOR : store =>
tampungkan data ke main-memory
Ø MOV : move => copy-kan sebuah nilai ke sebuah
lokasi hasil atau lokasi temporer sebelum operasi
dilakukan.
Contoh : Mnemonic Operand
ADDA Artinya menambah secara langsung 8 bit data ke dalam isi
akumulator dan menyimpan hasil di akumulator secara simbolik, misalnya:
Mnemonic Operand ADDR1, R2 Artinya tambahkan
nilai yang terdapat pada isi register R2 ke isi register R1, dan simpankan di
lokasi register R1.
|
2.4 Format instruksi
Suatu instruksi terdiri dari beberapa field yang
sesuai dengan elemen dalam instruksi tersebut. Layout dari
suatu instruksi sering disebut sebagai Format Instruksi
(Instruction Format). Contoh suatu Format Instruksi adalah sbb :
OP CODE OPERAND OPERAND
REFERENCE REFERENCE Ilustrasi Format
Instruksi Sederhana (Fig. 8-2. Stallings, W. 1990, hal. 294)
2.4.1 Jenis intruksi
Terdapat kumpulan unik set instruksi, yang dapat digolongkan dalam
jenis-jenisnya yaitu :
1.
Pengolahan data (dataprocessing)
Meliputi operasi-operasi aritmetika dan logika. Operasi aritmetika
memiliki kemampuan komputasi untuk pengolahan data numeric. Sedangkan instruksi logika
beroperasi terhadap bit-bit word sebagai bit, bukannya sebagai bilangan,
sehingga instruksi ini memiliki kemampuan untuk pengolahan data lain.
2.
Perpindahan Data (data movement)
Perpindahan data (data movement) berisi instruksi perpindahan data antar register
maupun modul I/O untuk dapat diolah oleh CPU maka diperlukan
instruksi-instruksi yang bertugas memindahkan data operand yang diperlukan.
3.
Penyimpanan
data (data storage)
Penyimpanan data (data storage) berisi instruksi-instruksi penyimpan
kememori. Instruksi penyimpanan sangat penting dalam operasi komputasi, karena data
tersebut akan digunakan untuk operasi berikutnya, minimal
untuk ditampilkan pada layar harus diadakan penyimpanan walaupun
sementara.
4.
Kontrol
aliran program (program flow control)
Kontrol aliran program (program flow control) berisi instruksi
pengontrolan operasi dan percabangan ke set instruksi lain.
|
2.4.2 Jumlah Alamat (Number
Of Addresses)
Suatu instruksi terdiri dari beberapa
field yang sesuai dengan elemen dalam instruksi tersebut. Layout dari suatu
instruksi sering disebut sebagai Format Instruksi (Instruction Format). Contoh
suatu Format Instruksi adalah sebagai berikut : OPCODE OPERAND REFERENCE
OPERAND REFERENCE.
a.
Jumlah register atau
alamat yang digunakan dalam operasi CPU tergantung format operasi masing-masing CPU.
b.
Ada formar operasi
yang menggunakan 3, 2, 1 dan 0 register.
c.
Umumnya yang
digunakan adalah 2 register dalam suatu operasi. Desain CPU saat ini telah menggunakan 3 alamat dalam suatu operasi terutama dalam
MIPS (Million Instruction Persecond).
d.
Alamat perinstruksi
yang lebih sedikit akan membuat instruksi lebih sederhana dan pendek,
tetapi lebih sulit mengimplementasikan fungsi-fungsi yang kita inginkan.
e.
Karena instruksi CPU sederhana
maka rancangan CPU juga lebih sederhana.
f.
Jumlah bit dan
referensi per instruksi banyak, jumlah bit dan referensi instruksi lebih banyak sehingga waktu eksekusi lebih lama.
g.
Jumlah instruksi per
program biasanya jauh lebih banyak.
h.
Pada jumlah alamat
per instruksi banyak, jumlah bit dan referensi instruksi lebih banyak sehingga waktu eksekusi lebih lama.
i.
Diperlukan
register CPU yang banyak, namun operasi
antar register lebih cepat.
j.
Lebih mudah mengiplementasikan
fungsi-fungsi yang kita inginkan.
k.
Jumlah instruksi
per program jauh lebih sedikit.
l.
Untuk lebih jelas perhatikan
contoh instruksi-instruksi dengan jumlah register
berbeda untuk menyelesaikan persoalan yang sama. Contoh penggunaan set
instruksi dengan alamat 1, 2, dan 3 untuk menyelasikan operasi hitung
Y= (A-B) : (C+D*E).
|
a). Three Address Instruction Spesifikasi Instruksi 3 Alamat :
ü Simbolik : a= b+c
ü Format alamat : hasil, operand 1 operand 2
ü Digunakan dalam arsitektur MIPS
ü Memerlukan kata panjang dalam suatu instruksib)
b). Two Address Instruction Spesifikasi Instruksi 2 alamat :
ü Simbolik : a= a+b
ü Satu alamat diisi operand terlebih dahulu kemudian digunakan untuk
menyimpan hasilnya.
ü Tidak memerlukan instruksi yang panjang.
ü Jumlah instruksi per
program akan lebih banyak dari pada 3alamat.
ü Diperlukan penyimpanan sementara untuk menyimpan hasil.
C) One Address Instruction Ket. AC = ACCUMULATOR. Spesifikasi
Instruksi 1 alamat :
ü Memerlukan alamat implisit untuk operasi.
ü Menggunakan register akumulator (AC) dan digunakan pada mesinlama.
2.4.3 Jenis-Jenis Operand
ü
|
ü Immediate
ü Direct
ü Indirect
ü Register
ü Register Indirect
ü Displacement
ü Stack
ü Numbers
ü Integer or fixed point
ü Floating point
ü Decimal(BCD)
ü Characters
ü ASCII
ü EBCDIC
ü Logical Data
ü Bila data berbentuk binary: 0 dan 1
2.5 Teknik Pengalamatan
Mode pengalamatan merujuk pada bagaimana
pemrogaman mengalamati suatu lokasi memori. Setiap mode pengalamatan memberikan
fleksibilitas khusus yang sangat penting. Mode penglamatan ini meliputi
Immediate Addressing, Direct Addressing, dan Indirect Addressing.
|
1.
Immidiate Addressing
Mode pengalamatan immediate addressing
sangat umum dipakai karena harga yang akan disimpan dalam memori langsung
mengikuti kode operasi dalam memori, dengan kata lain, tidak diperlukan
pengambilan harga dari alamat lain untuk disimpan. Contohnya : MOV A,#20h.
Dalam instruksi tersebut, akumulator akan diisi dengan harga yang langsung
mengikutinya, dalam hal ini 20h. mode ini sangatlah cepat karena harga
yang dipakai langsung tersedia.
2.
Direct Addressing
Dalam mode pengalamatan Direct Addressing,
harga yang akan dipakai diambil langsung dalam alamat memori lain. Contohnya :
MOV A,#30h. Dalam instruksi ini akan dibaca data dari RAM Internal dengan
alamat 30h dan kemudian disimpan dalam
akumulator. Mode pengalamatan ini cukup cepat, meskipun harga yang didapat
tidak langsung seperti immediate, namun cukup cepat karena disimpan dalam RAM
internal. Demikian pula akan lebih mudah menggunakan mode ini dari pada mode
immediate karena harga yang didapat bias dari lokasi memori yang mungkin
variable.
3.
Indirect Addressing
Mode pegalamatan ini sangat berguna karena
dapat memberikan fleksibilitas tinggi dalam mengalamati suatu harga. Mode ini
pula satu satunya cara untuk mengakses 128 byte lebih dari RAM internal pada
keluarga 8052. Contoh : MOV A,@R0. Dalam instruksi tersebut, 89C51 akan
mengambil harga yang berada pada alamat memori yang ditunjukkan oleh isi dari
R0 dan kemudian mengisikannya ke akumulator.
2.6 Rancangan Set Instruksi
|
1.
Kelengkapan Set instruksi
2.
Ortogonalitas (sifat
indepedensi instruksi)
3.
Kompatibilitas :
o Source code compability
o Object code compability
Selain ketiga aspek diatas juga melibatkan masalah rancangan yang
fundamental meliputi :
1.
Operation Repertoire
- Berapa banyak dan operasi operasi apa yang harus tersedia
- Sekompleks apakah operasi itu seharusnya
2.
Data Types :
- Jenis Data
- Format Data
3.
Instruction Format :
- Panjang Instruksi
- Jumlah Alamat
- Ukuran Field
4.
Registers :
Jumlah register CPU yang dapat direfernsikan oleh instruksi dan fungsinya
5.
Addressing :
Mode untuk menspesifikasi alamat suatu Operand.
2.7 Tipe Operasi
Dalam perancangan arsitektur computer jumlah kode
operasi akan berbeda untuk masing masing computer, tetapi terdapat
kemiripan dalam jenis operasinya. Jenis Operasi Komputer :
v Transfer data
v Konversi
v Arithmatica
v Logika
v
|
v Transfer Controla.
1) Transfer data
a.
Menetapkan lokasi Operand
sumber dan Operand tujuan
b.
Lokasi lokasi tersebut dapat berupa
memori, register atau bagian paling atas dari pada stack.
c.
Menetapkan panjang data yang dipindahkan
d.
Menetapkan mode pengalamatan.
Tindakan CPU untuk melakukan transfer data adalah :
a.
Memindahkan
data dari satu lokasi ke lokasi lain
b.
Apabila memori dilibatkan :
Ø Menetapkan alamat memori
Ø Menjalankan transformasi alamat memori virtual ke alamat memori actual
Ø Mengawali pembacaan/penulisan memori Operasi set instruksi untuk transfer
data :
-
MOVE : memindahkan kata atau blok dari sumber ke tujuan
-
STORE : memindahkan kata dari processor ke memori
-
LOAD : memindahkan kata dari memori ke processor
-
EXCHANGE : menukar isi sumber ke tujuan
-
CLEAR/RESET : memindahkan kata 0 ke 1 tujuan
-
SET : memindahkan kata ke 1 tujuan
-
PUSH : memindahkan kata dari sumber ke bagian paling
atas stack
-
POP : memindahkan kata dari bagian paling atas sumber
2) Konversi
Ø Tindakan CPU sama dengan arithmetic dan logical
Ø Instruksi yang mengubah format instruksi yang beroperasi terhadap format
data.
Ø Misalnya pengubahan bilangan decimal menjadi bilangan biner Operasi
set instruksi untuk conversi :
- Translate: menerjemahkan nilai nilai dalam suatu bagian memori berdasarkan
table koorespondensi
-
|
3). Arithmatica
Ø Input/Output Tindakan CPU sama dengan aritmatik adalah logika
Ø control system dan transfer control
a)
Aritmatic Tindakan CPU untuk melakukan
operasi Arithmatic :
- Transfer data sebelum atau sesudah
- Melakukan fungsi dalam ALU
- Menset kode kode kondisi dan flag.
Operasi set instruksi untuk aritmatik :
a. ADD
: Penjumlahan
b. SUBSTRACT : Pengurangan
c. MULTIPLY : Perkalian
d. DIVIDE
: Pembagian
e. ABSOLUTE
f .NEGATIVE
g. DECREMENT
h. INCREMENT
Nomor 5 sampai 8 merupakan instruksi operasi tunggal
b)
Input Output
Tindakan CPU untuk melakukan Input/Output :
- Apabila memory mapped I/O maka menentukan alamat memory mapped.
- Mengawali perintah ke Modul I/O Operasi Set Instruksi Input/Output :
- INPUT: Memindahkan data dari pengangkat I/O tertentu
ke tujuan
- OUTPUT: Memindahkan data dari sumber tertentu ke perangkat I/O
- START I/O: Memindahkan instruksi ke processor
I/O untuk mengawali operasi I/O
- TEST I/O: Memindahkan informasi dari system I/O ke
tujuan Logical
4). Logika
Ø Kontrol system dan transfer controla.
Ø Tindakan CPU sama dengan aritmatik b.Operasi set instruksi intuk operasi Logical :
Ø AND, OR, NOT, EXOR
Ø COMPARE :Melakukan perbandingan logika
Ø TEST : Menguji kondisi tertentu
Ø
|
5). Control System
- Hanya dapat dieksekusi ketika processor berada dalam keadaan khusus tertentu
atau sedang mengeksekusi suatu program yang berada dalam area khusus,
biasanya digunakan dalam system operasi.
- Contoh : Membaca atau Mengubah register control.
6) Transfer Controla.
Tindakan CPU untuk transfer control :
a.
mengupdate program counter untuk subrutin
call/return.
b.
Operasi set instruksi untuk
transfer control :
- JUMP (cabang) : Pemindahan tidak bersyarat dan memuat PC dengan alamat tertentu.
- JUMP Bersyarat : Menguji persyaratan
tertentu dan memuat PC dengan alamat tertentu atau tidak
melakukan apa tergantung dari persayaratan.
- JUMP Subrutin : Melompat ke
alamat tertentu
- RETURN : Mengganti isi PC dan register lainnya yang
berasal dari lokasi tertentu
- EXECUTE : Mengambil Operand dari lokasi tertentu
dan mengeksekusi sebagai instruksi
- SKIP : menambah PC sehingga melompati instruksi
berikutnya.
- SKIP Bersyarat : Melompat atau
tidak melakukan apa apa berdasarkan pada persyaratan
- HALT : Menghentikan Eksekusi Program
- WAIT (HOLD) :
Melanjutkan eksekusi pada saat persayaratan dipenuhi
-
|
BAB III
PENUTUP
3.1 Kesimpulan
Instruction Set Architecture (ISA) didefinisikan
sebagai sesuatu aspek dalam arsitektur computer yang dapat dilihat oleh
para pemrogram. Disebut juga machine code (bahasa mesin), aslinya juga
berbentuk biner > bahasa assembly. Operasi dari CPU ditentukan
oleh instruksi instruksi yang dilaksanakan atau dijalankannya. Instruksi
ini sering disebut sebagai instruksi mesin (Machine Instruction) atau yang
dieksekusi membentuk suatu operasi dan berbagai macam fungsi CPU. Sedangkan
kumpulan fungsi yang dapat dieksekusi CPU disebut Set Instruksi (Instruction
Set).
Berikut adalah karakteristik instruksi mesin yaitu meliputi :
a.
Elemen-elemen dari instruksi
mesin (set instruksi)
b.
Representasi Instruksi
c.
Jenis-jenis Instruksi
d.
Jumlah alamat
e.
Teknik Pengalamatan
f.
Rancangan Set Instruksi
g.
Tipe Operasi
3.2
Penutup
Sekian yang dapat saya sampaikan dalam
makalah ini, masih banyak kekurangan dan
kesalahan pada penyusunan makalah ini, untuk itu saya sangat mengharapkan adanya
kritik dan saran yang dapat membangun sehingga saya dapat memperbaiki makalah
ini maupun dapat membuat makalah yang lebih baik lagi. Saya ucapkan minta maaf
atas ketidak sempurnaan dalam penyusunan makalah ini dan semoga dapat
bermanfaat dan terima kasih.
Tidak ada komentar:
Posting Komentar