BAB I
ORGANISASI PROCESSOR
Komputer adalah sebuah sistem yang berinteraksi dengan cara tertentu dengan
dunia luar. Interaksi dengan dunia luar dilakukan melalui perangkat peripheral dan saluran
komunikasi. Perhatikan gambar 1.2,terdapat empat struktur utama:
a) Central Processing Unit (CPU), berfungsi sebagai pengontrol operasi komputer dan
pusat pengolahan fungsi fungsi komputer. Kesepakatan, CPU cukup disebut sebagai
processor (prosesor) saja.
b) Memori Utama, berfungsi sebagai penyimpan data.
c) I/O, berfungsi memindahkan data ke lingkungan luar atau perangkat lainnya.
d) System Interconnection, merupakan sistem yang menghubungkan CPU, memori utama
dan I/O.
BAB II
KARAKTERISTIK SET INSTRUKSI
Set instruksi adalah kumpulan dari instruksi yang dapat dijalankan oleh CPU. Pada bahasa
mesin, setiap instruksi berbentuk pola bit biner. Disebut juga machine code (bahasa
mesin), aslinya juga berbentuk biner atau bahasa assembly. Agar dapat dimengerti
manusia, dibuatlah representasi simbolik yang biasanya berupa singkatan (disebut
mnemonic). Misal ADD, SUB, LOAD, dll. Sedangkan alamat operand direpresentasikan
seperti : ADD A,B
Beberapa contoh simbolik instruksi dalam bahasa manusia :
a. ADD : Add (Jumlahkan)
b. SUB : Substract (Kurangkan)
c. MUL : Multiply (kalikan)
d. DIV : Devide (bagi)
e. LOAD : Load (mengambil data dari register / memori)
f. STOR : Store (simpan data ke register / memori)
g. MOVE : Move (pindakhan data dari satu tempat ke tempat lain)
h. SHR : shift kanan data
i. SHL : shift kiri data,
j. dll
1) Element-element Instruksi (Op Code, Source Operand, Result Operand, Next Instruction
Reference)
a. Operation Code (OpCode)
Berisi kode operasi / perintah yang akan dilakukan, kode operasi ini dalam bentuk
biner.
b. Source Operand Reference
Operasi dapat berasal lebih dari satu sumber. Operand source ini berisi input operasi /
operasi masukan.
c. Result Operand Reference
Result Operand berisi hasil atau keluaran operasi.
d. Next Instruction
Elemen ini menginformasikan CPU posisi intruksi berikutnya yang harus diambil dan
dieksekusi.
Dalam sebuah instruksi,tidak harus semua elemen ini dicantumkan tergantung
kebutuhan jenis instruksi atau jumlah operand yang bisa diolah. Instruksi terdiri dari
bebrapa field yang sesuai dengan elemen dalam instruksi tersebut. Susunan elemen ini
disebut dengan format instruksi.
Misal instruksi dengan 2 alamat operand (yang diartikan dari bentuk biner):
ADD A,B A & B suatu alamat register
Source
Result
Opcode
Operand
Operand
Refereren Refereren
ce
ce
4 bits
6 bits
6 bits
ADD
A
B
16 bits
Gambar. Contoh format operand
Berikut ini beberapa contoh beberapa format instruksi yang dilakukan untuk
menyelesaikan perintah aritmatik:
a. Contoh Format Instr 3 Alamat
Memerlukan 4 operasi
Memerlukan 4 operasi
2) Tipe-Tipe Instruksi yang dikerjakan dalam CPU
a. Data Processing adalah tipe instruksi yang melakukan proses operasi aritmatik dan
logic.
Operasi aritmatik adalah operasi matematika untuk mengolah data numerik,
seperti : ADD, SUB, DIV, dsb
Operasi logic adalah operasi logika beroperasi terhadap bit-bit word, sehingga
instruksi ini dapat digunakan untuk mengolah data / instruksi lain. Operasi ini
dapat seperti; AND. OR, NOT, EXOR, dsb
b. Data Storage (memory) adalah berisi instruksi penyimpanan ke memori. Instruksi
penyimpanan sangat penting dala operasi komputasi karena data tersebut akan
digunakan untuk operasi berikutnya, minimal untuk ditampilkan pada layar harus
diadakan penyimpanan walaupun sementara.
c. Data Movement adalah tipe instruksi yang berisi instruksi untuk melakukan
perpindahan / transfer data (seperti : STOR, LOAD, MOVE, Exchange, dsb). Untuk
dapat diolah oleh CPU maka diperlukan instruksi-instruksi yang bertugas.
d. Program flow control adalah tipe instruksi yang melakukan kontrol terhadap data
operasi dn percabangan (JUMP, HALT, return, dsb). Operasi ini berguna untuk
mengontrol status dan mengoperasikan percabangan ke set instruksi lain.
3) Tipe-Tipe Operand (Address, Numbers, Characters, Logical Data)
Rata rata operasi hanya membutuhkan regidter sebagai tempat membaca /
menyimpan operand. Namun adakalanya register tidak memiliki operand yang diminta,
sehingga merujuk pada tempat penyimpanan lain (memory RAM, chace, modul I/O, dll).
4) Tipe-Tipe Operasi (Data Transfer, Arithmetic, Logical, Conversion, I/O, System Control,
Transfer of Control)
Berikut ini beberapa tipe operasi beserta kode operasinya.
Tipe Operasi
Kode operasi
Keterangan
Perpindahan
Move
Memindahkan word atau blok dari sumber ke tujuan
dat
Store
Memindahkan word dari prosesor ke memori
Load
Memindahkan word dari memori ke prosesor
Exchange
Menukar
5) Instruksi Percabangan
6) Memacahkan masalah ( contoh-contoh kasus ) yang dimulai dengan flowchart atau
struktogram, listing program
Jawablah soal latihan berikut pada lembaran kertas folio bergaris !
1. Jelaskan yang dimaksud dengan set instruksi !
2. Jelaskan yang dimaksdu dengan mnemonic !
3. Untuk dapat dieksekusi oleh CPU instruksi harus berisi elemen-elemen informasi secara
lengkap. Sebutkan dan jelaskan element dalam instruksi !
3. Buatlah format instruksi / perintah yang digunakan untuk mengerjakan operasi X = (A +
B C)
a. Format Instruksi 3 Alamat
b. Format Instruksi 2 Alamat
c. Format Instruksi 1 Alamat
d. Format Instruksi 0 Alamat
4. Tidak semua format instruksi terdiri dari semua elemen bergantung pada tipe instruksi.
Sebutkan dan jelaskan tipe-tipe instruksi !
5. Dalam sebuah instruksi harus berisi operand dan operasi. Jelaskan yang perbedaan
operand dan operasi !
6. Sebutkan dan jelaskan tipe-tipe operand !
7. Sebutkan dan jelaskan tipe-tipe operasi !
BAB III
Mode dan format pengalamatan
Suatu mode pengalamatan dapat digunakan untuk menentukan suatu alamat tempat
untuk dimana operand akan di fetch. Beberapa teknik semacam ini dapat meningkatkan
kecepatan pelaksanaan instruksi dengan menurunkan jumlah referensi pada memori
utama dan meningkatkan jumlah referensi pada register kecepatan tinggi. Mode
pengalamatan ini menjabarkan suatu aturan untuk menginterpresetasikan atau
memodifikasi field alamat dari instruksi sebelum operand di referensikan. Pada semua
mode pengalamatan lainnya, operand yang sesungguhnya tidak disimpan pada field
alamat tetapi beberapa nilai di jabarkan dan di gunakan untuk menentukan operasi
operand.
Mode pengalamatan merupakan salah satu cara untuk mengatasi keterbatasan format
instruksi. Selain itu juga dapat dilakukan dengan mereferensi lokasi memori yang besar.
Masing masing prosesor menggunakan mode pengalamatan yang berbeda beda.
Memiliki pertimbangan dalam penggunaannya. Ada beberapa teknik pengalamatan :
1. Inherent
Semua informasi yang dibutuhkan untuk operasi telah diketahui oto,atis oleh CPU dan
tidak membutuhkan operand eksternal dari memoeri atau dari program. Operasi yang
digunakan hanyalah register internal dan CPU atau data stack.
2. Immediate
Bentuk pengalamatan ini yang paling sederhana. Operand benar benar ada dalam
instruksi atau bagian dari instruksi artinya operand sama dengan field alamat. Dalam
penggunaan pengalamatan ini memiliki keuntungan dan kerugian, yaitu :
Keuntungan :
Mode ini adalah tidak adanya referensi memori selain dari instruksi yang diperlukan
untuk memperoleh operand.
Menghemat siklus instruksi sehingga proses keseluruhan akan cepat.
Kerugiannya :
Ukuran bilangan dibatasi oleh ukuran field alamat
Contoh : ADD 5 artinya tambahkan 5 pada akumulator.
3. Direction, disebut juga pengalamatan langsung
Kelebihan :
Field alamat berisi efektif address sebuah operand.
Teknik ini banyak digunakan pada komputer lama dan komputer kecil.
Hanya memerlukan sebuah referensi memori dan tidak memerlukan kalkulasi khusus.
Kelemahan :
Keterbatasan field alamat karena panjang field alamat biasanya lebih kecil dibandingkan
panjang word
Contoh : ADD A artinya tambahkan isi pada lokasi alamat A ke akumulator
4. Indirect
Disebut juga mode pengalamatan tak langsung. Field alamat mengacu pada alamat
word di dalam memori, yang pada gilirannya akan berisi alamat operand yang panjang
Contoh : ADD (A) artinya tambahkan isi yang ditunjuk oleh isi alamat A ke akumulator
Keuntungan :
Ruang bagi alamat menjadi besar sehingga semakin banyak alamat yang dapat referensi.
Kerugian :
Diperlukan referensi memori ganda dalam satu fetch sehingga memperlambat proses
operasi
5. Extended
Alamat dari operand terkandung dalam
2 byte yang mengikuti kope operasi.
Penglamatan extended ini bisa digunakan untuk mengakses semua lokasi dalam memoeri
mikrokontroler termasuk I/O, RAM, ROM, dan EPROM. Karena itu operasi terdiri dari 3 byte,
satu untuk operasi dan dua untuk alamat dari operan.
6. Indexed
Alamat efektif adalah variable dan tergantung pada dua factor : 1) Isi index register
saat itu, 2) nilai offset yang terkandung dari byte yang mengikuti kode operasi.
Terdapat 3 jenis pengalamatn indexed yang didukung oleh CPU keluarga M68HC05,
yaitu no-offset, 8-bit offset, dan 16-offset. Dalam mode pengalamatan no-offset,
alamat terdiri dari operan yang terkandung dalam index 8-bit.
Seperti yang telah disebutkan pada bab sebelumnya, bahwa dalam sebuah instruksi
system komputer memiliki beberapa istilah yang berhubungan dengan instruksi. Machine
language adalah representasi tertulis machine code (kode masin) adalah kode operasi
suatu mesin tertentu. Bahasa ini bersifat khusus untuk mesin tertentu dan dimengerti
langsung oleh mesin, sehingga pelaksanaan proses sangat cepat. Abstraksi bahasa ini
adalah kumpulan kombinasi kode biner 0 dan 1 yang sangat tidak alamiah bagi
kebanyakan orang, karena itu disebut bahasa mesin tingkat rendah.
Kode komputer yang tidak alamaiah tersebut membuat manusia ingin membuat
bahasa yang dimengerti manusia sebagai representasi simbolik dari bahasa mesin agar
mudah dalam pembuatan kode program utnuk menjalankan instruksi yang diinginkan
manusia. Bahasa ini simbolik ini disebut dengan bahasa mnemonic. Dalam proses eksekusi
instruksi, sebuah instruksi terdiri dari sebuah kode operasi (Opcode). Opcode adalah
perintah yang akan diproses dalam sebuah instruksi. Opcode ini yang akan disispkan
dalam sebuah mode pengalamatan (Addressing Mode).
Jawablah soal latihan berikut pada lembaran kertas folio bergaris !
1. Carilah informasi tentang data stack, akumulator, alamat word, byte !
2. Jelaskan tentang mnemonic, Operation, Machine Code, Addressing Mode.
3. Jelaskan perbedaan khusus dari beberapa teknik pengalamatan.