Isi Makalah

35
KATA PENGANTAR Pujisyukur kehadirat Allah SWT yang telah memberikan rahmatdan hidayah yang sangat besar kepada kami untuk menyelesaikan makalah ini. Dalam makalah ini kami mencoba menyajikan segala sesuatu yang berhubungan dengan proses eksekusi progam pada komputer. Sehingga makalah inidiharapkan dapat membantu permasalahan yang dihadapi oleh pembaca khususnya yang berkaitan dengan eksekusi progam pada computer. Makalah masih jauh dari kata sempurna. Maka dari itu, kami mengharapkan pembaca untuk memberikan kritik atau saran yang membangun guna perbaikan makalah kami selanjutnya. Terimakasih, semoga makalah ini dapat bermanfaat bagi yang membacanya. Kediri, 28 Mei 2014 1 Team Penyusun

Transcript of Isi Makalah

KATA PENGANTAR

Pujisyukur kehadirat Allah SWT yang telah memberikan

rahmatdan hidayah yang sangat besar kepada kami untuk

menyelesaikan makalah ini.

Dalam makalah ini kami mencoba menyajikan segala sesuatu

yang berhubungan dengan proses eksekusi progam pada komputer.

Sehingga makalah inidiharapkan dapat membantu permasalahan yang

dihadapi oleh pembaca khususnya yang berkaitan dengan eksekusi

progam pada computer.

Makalah masih jauh dari kata sempurna. Maka dari itu, kami

mengharapkan pembaca untuk memberikan kritik atau saran yang

membangun guna perbaikan makalah kami selanjutnya.

Terimakasih, semoga makalah ini dapat bermanfaat bagi yang

membacanya.

Kediri, 28 Mei

2014

1

Team

Penyusun

Daftar IsiKATA PENGANTAR.......................................................1Daftar Isi...........................................................2BAB I................................................................3PENDAHULUAN.........................................................3LatarBelakang.......................................................3Rumusan Masalah.....................................................3Tujuan..............................................................3

BAB II...............................................................42.1 PROGAM KOMPUTER.................................................42.2 PEMROGRAMAN KOMPUTER............................................42.3 Eksekusi dan penyimpanan........................................52.4 Program terpancang..............................................62.5 Pemrograman manual..............................................72.6 Pembuatan program otomatis......................................82.7 Eksekusi simultan...............................................8

BAB III..............................................................93.1 Proses Eksekusi Instruksi dalam CPU.............................93.2A. Fungsi CPU...................................................10

2

3.3SIKLUS EKSEKUSI PROGRAM.........................................11BAB IV..............................................................184.1 Fungsi Interupsi...............................................184.2 Tujuan Interupsi...............................................184.3Proses Interupsi................................................184.4 Macam – macam kelas sinyal interupsi...........................194.5 Interrupt dan Siklus Instruksi.................................214.6 Multiple Interrupt.............................................224.7 Fungsi I/O.....................................................24

PENUTUP.............................................................25DAFTAR PUSTAKA......................................................26

BAB I

PENDAHULUAN

LatarBelakangFungsi dasar dari computer adalah mengeksekusi suatu progam,

dimana CPU lah yang melakukan tugas inidengan

caramengambilpengolahanintruksi yang terdiridaridualangkah,

yaituintruksibacaatau fetch CPU dari memory kemudian CPU

mengeksekusisetiapintruksi.

Rumusan MasalahMasalah yang akan di bahas di dalam makalah ini adalah :

1. Pemrosesan eksekusi sebuah program

2. Siklus – siklus eksekusi

TujuanTujuan dari penulisan makalah ini adalah untuk :

3

1. Mengetahui proses eksekusi dalam program

2. Mengetahui siklus-siklus eksekusi

BAB II

2.1 PROGAM KOMPUTER

Program komputer atau sering kali disingkat sebagai program

adalah serangkaian instruksi yang ditulis untuk melakukan

suatu fungsi spesifik pada komputer. Komputer pada dasarnya

membutuhkan keberadaan program agar bisa menjalankan fungsinya

sebagai komputer, biasanya hal ini dilakukan dengan cara

mengeksekusi serangkaian instruksi program tersebut pada

prosesor. Sebuah program biasanya memiliki suatu bentuk model

pengeksekusian tertentu agar dapat secara langsung dieksekusi

oleh komputer. Program yang sama dalam format kode yang dapat

4

dibaca oleh manusia disebut sebagai kode sumber, bentuk

program yang memungkinkan programer menganalisis serta

melakukan penelaahan algoritma yang digunakan pada program

tersebut. Kode sumber tersebut pada akhirnya dikompilas oleh

utilitas bahasa pemrograman tertentu sehingga membentuk sebuah

program.bentuk alternatif lain model pengeksekusian sebuah

program adalah dengan menggunakan bantuan interpreter, kode

sumber tersebut langsung dijalankan oleh utilitas interpreter

suatu bahasa pemrograman yang digunakan.

Beberapa program komputer dapat dijalankan pada sebuah

komputer pada saat bersamaan, kemampuan komputer untuk

menjalankan beberapa program pada saat bersamaan disebut

sebagai multitasking. Program komputer dapat dikategorikan

menurut fungsinya; perangkat lunak sistem atau perangkat lunak

aplikasi.

2.2 PEMROGRAMAN KOMPUTER

Pemrograman komputer merupakan suatu proses iteratif

penulisan dan penyuntingan kode sumber sehingga membentuk

sebuah program. Penyuntingan kode sumber meliputi proses

pengetesan, analisis, pembetulan kesalahan, pengoptimasian

algoritma, normalisasi kode, dan kadang-kadang

pengkoordinasian antara satu programmer dengan programmer

lainnya jika sebuah program dikerjakan oleh beberapa orang

5

dalam sebuah tim. Seorang praktisi yang memiliki keahlian

untuk melakukan penulisan kode dalam bahasa pemrograman

disebut sebagai progammer komputer atau programmer, pengembang

perangkat lunak, atau koder. Istilah rekayasa perangkat lunak

(Software engineering) seringkali digunakan karena proses

penulisan program tersebut dipandang sebagai suatu disiplin

ilmu perekayasaan.

2.3 Eksekusi dan penyimpanan

Sebuah program komputer biasanya akan disimpan terlebih dahulu

dalam memori utama (RAM) komputer sebelum dijalankan yang

biasanya dilakukan olehsistem operasi. Prosesor kemudian akan

mengeksekusi program tersebut, instruksi demi instruksi sampai

program tersebut diterminasi. Sebuah program yang tengah

dieksekusi oleh prosesor dinamakan sebagai prosesTerminasi

ataupun penghentian eksekusi sebuah program biasanya terjadi

baik karena permintaan dari pengguna, interupsi pengguna,

kesalahan atas programitu sendiri, ataupun kesalahan atas

perangkat keras yang digunakan.

6

2.4 Program terpancang

Microcontroller di sebelah kanan dari USB flash drive di atas

dikontrol melalui sebuah program terpancang.

7

Beberapa program komputer tertentu dipancangkan langsung pada

perangkat kerasnya sebagai program yang dipanggil untuk

kebutuhan identifikasi serta inisialisasi atas berbagai aspek

untuk memastikan perangkat keras tersebut berfungsi. Saat

proses inisialisasi tersebut, program terpancang tersebut akan

dipanggil oleh sistem operasi, program terpancang tersebut

kemudian akan menjembatani penggunaan perangkat keras tersebut

sehingga sistem operasi dapat menggunakannya dengan baik.

2.5 Pemrograman manual

8

pengalih untuk input manual pada sebuah komputer Data General

Nova 3

Program komputer awalnya diinput secara manual ke prosessor

utama dengan memanfaatkan sejumlah pengalih sebagai

representasi atas instruksi yang atas status konfigurasi

on/off. Setelah menetapkan konfigurasi tersebut, tombol

eksekusi akan ditekan. Proses ini kemudian dilakukan secara

iteratif. Program komputer dalam sejarahnya pernah juga

ditulis melalui paper tape' atau punched cards. Setelah dimasukkan dan

alamat awal eksekusi telah dimasukkan, tombol eksekusi akan ditekan.

9

2.6 Pembuatan program otomatis

Pemrograman generatif merupakan sebuah tipikial dari

pemrograman komputer yang akan membuat kode sumber melalui

kelas-kelas generik, prototipe, aspek, templat, dan pembuat

kode (code generator) untuk meningkatkan produktifitas

programmer. Kode sumber yang dibuat oleh utilitas pemrograman

tersebut misalnya pemroses templat pada sebuahIDE.Bentuk yang

paling sederhana adalah pemroses makro yang terdapat pada

bahasa pemrograman C.

2.7 Eksekusi simultan

Umumnya sistem operasi yang ada saat ini sudah mendukung

pemanfaatan multitaskingyang memungkinkan beberapa program

komputer dijalankan pada saat yang bersamaan di sebuah

komputer. Untuk dapat menjalankan beberapa program tersebut

pada saat yang bersamaan, sistem operasi memanfaatkan

mekanisme penjadualan proses yang merupakan suatu mekanisme

yang akan mengatur pengalihan prosesor dalam melakukan

pemrosesan sehingga beberapa program komputer tersebut dapat

berinteraksi dengan pengguna saat dijalankan. Di sisi

perangkat keras yang digunakan, prosesor modern saat ini

umumnya telah mendukung beberapa core prosesor yang

10

dipancangkan sebagai sebuah prosesor yang memungkinkannya

menjalankan beberapa program sekaligus.

Sebuah program komputer dapat melakukan kalkulasi secara

simultan pada beberapa jenis operasi di saat yang bersamaan

dengan memanfaatkan thread atau sebagai proses terpisah.

Umumnya prosesor yang ada saat ini sudah mendukung arsitektur

multithreading yang teroptimasi untuk menjalankan beberapa

thread secara efisien.

BAB III

3.1 Proses Eksekusi Instruksi dalam CPU

CPU merupakan komponen terpenting dari sistem komputer.CPU adalah

komponen pengolah data berdasarkan instruksi – instruksi yang

diberikan kepadanya.CPU terdiri dari dua bagian utama yaitu unit

kendali (control unit) dan unit aritmatika dan logika (ALU).

Disamping itu, CPU mempunyai beberapa alat penyimpan yang

berukuran kecil yang disebut register.

Unit Kendali (Control Unit), bertugas mengontrol operasi CPU dan

secara keselurahan mengontrol komputer sehingga terjadi

sinkronisasi kerja antar komponen dalam menjalankan fungsi –

11

fungsi operasinya.Termasuk dalam tanggung jawab unit kontrol

adalah mengambil instruksi –instruksi dari memori utama dan

menentukan jenis instruksi tersebut.

Arithmetic and Logic Unit (ALU), bertugas membentuk fungsi – fungsi

pengolahan data komputer. ALU sering disebut mesin bahasa

(machine language) karena bagian ini mengerjakan instruksi –

instruksi bahasa mesin yang diberikan padanya. Seperti

istilahnya, ALU terdiri dari dua bagian, yaitu unit

arithmetika dan unit logika boolean, yang masing – masing

memiliki spesifikasi tugas tersendiri.

Register adalah media penyimpan internal CPU yang digunakan

saat proses pengolahan data. Memori ini bersifat sementara,

biasanya digunakan untuk menyimpan data saat diolah ataupun

data untuk pengolahan selanjutnya.

CPU Interconnections adalah sistem koneksi dan bus yang

menghubungkan komponen internalCPU, yaitu ALU, unit kontrol

dan register – register dan juga dengan bus – bus eksternal

CPU yang menghubungkan dengan sistem lainnya, seperti memori

utama, piranti masukan/keluaran.

12

3.2A. Fungsi CPUCPU berfungsi seperti kalkulator, hanya saja CPU jauh lebih kuat

daya pemrosesannya. Fungsi utama dari CPU adalah melakukan

operasi aritmatika dan logika terhadap data yang diambil dari

memori atau dari informasi yang dimasukkan melalui beberapa

perangkat keras, seperti papan ketik,pemindai, tuas kontrol,

maupun mouse. CPU dikontrol menggunakan sekumpulan instruksi

perangkat lunak komputer.Perangkat lunak tersebut dapat

dijalankan oleh CPU dengan membacanya dari media penyimpan,

seperti cakram keras, disket, cakram padat, maupun pita perekam.

Instruksi-instruksi tersebut kemudian disimpan terlebih dahulu

pada memori fisik(RAM), yang mana setiap instruksi akan diberi

alamat unik yang disebut alamat memori. Selanjutnya, CPU dapat

mengakses data-data pada RAM dengan menentukan alamat data yang

dikehendaki.

Saat sebuah program dieksekusi, data mengalir dari RAM ke sebuah

unit yang disebut dengan bus, yang menghubungkan antara CPU

dengan RAM. Data kemudian didekode dengan menggunakan unit proses

yang disebut sebagai pendekoder instruksi yang sanggup

menerjemahkan instruksi. Data kemudian berjalan ke unit

aritmatika dan logika (ALU) yang melakukan kalkulasi dan

perbandingan. Data bisa jadi disimpan sementara oleh ALU dalam

sebuah lokasi memori yang disebut dengan register supaya dapat

diambil kembali dengan cepat untuk diolah. ALU dapat melakukan

operasi-operasi tertentu, meliputi penjumlahan, perkalian,

13

pengurangan, pengujian kondisi terhadap data dalam register,

hingga mengirimkan hasil pemrosesannya kembali ke memori fisik,

media penyimpan, atau register apabila akan mengolah hasil

pemrosesan lagi. Selama proses ini terjadi, sebuah unit dalam CPU

yang disebut dengan penghitung program akan memantau instruksi

yang sukses dijalankan supaya instruksi tersebut dapat dieksekusi

dengan urutan yang benar dan sesuai.Fungsi CPU adalah penjalankan

program – program yang disimpan dalam memori utama dengan cara

mengambil instruksi – instruksi, menguji instruksi tersebut dan

mengeksekusinya satu persatu sesuai alur perintah. Untuk memahami

fungsi CPU dan caranya berinteraksi dengan komponen lain, perlu

kita tinjau lebih jauh proses eksekusi program. Pandangan paling

sederhana proses eksekusi program adalah dengan mengambil

pengolahan instruksi yang terdiri dari dua langkah, yaitu :

operasi pembacaan instruksi (fetch) dan operasi pelaksanaan

instruksi (execute).

3.3SIKLUS EKSEKUSI PROGRAM Rancangan arsitektur Von Neuman didasarkan pada 3 konsep :

1. Data dan instruksi-instruksi disimpan di memori baca-tulis

tunggal.

2. Memori dapat dialamati dengan lokasi, tidak tergantung pada

jenis data yang berada didalamnya.

3. Eksekusi terjadi dengan cara sekuensial dari instruksi yang

satu ke instruksi berikutnya.

14

Eksekusiprogramterdiridari :

1.Prosespengulanganfetch

2.Eksekusiinstruksi

1.Siklus Fetch – Eksekusi

Pada setiap siklus instruksi, CPU awalnya akan membaca instruksi

dari memori. Terdapat register dalam CPU yang berfungsi mengawasi

dan menghitung instruksi selanjutnya, yang disebut Program

Counter (PC). PC akan menambah satu hitungannya setiap kali CPU

membaca instruksi. Instruksi–instruksi yang dibaca akan dibuat

dalam register instruksi (IR). Instruksi – instruksi ini dalam

bentuk kode – kode binner yang dapat diinterpretasikan oleh CPU

kemudian dilakukan aksi yang diperlukan. Aksi – aksi ini

dikelompokkanmenjadi empat katagori, yaitu :

CPU – Memori, perpindahan data dari CPU ke memori dan

sebaliknya.

CPU –I/O, perpindahan data dari CPU ke modul I/O dan

sebaliknya.

Pengolahan Data, CPU membentuk sejumlah operasi aritmatika

dan logika terhadap data.

Kontrol, merupakan instruksi untuk pengontrolan fungsi atau

kerja. Misalnyainstruksi pengubahan urusan eksekusi.

15

2.Siklus Eksekusi

Siklus eksekusi untuk suatu instruksi dapat melibatkan lebih dari

sebuahreferensi ke memori. Disamping itu juga, suatu instruksi

dapat menentukan suatu operasi I/O.

Instruction Addess Calculation (IAC), yaitu mengkalkulasi atau

menentukan alamat instruksi berikutnya yang akan dieksekusi.

Biasanya melibatkan penambahan bilangan tetap ke alamat instruksi

sebelumnya.Misalnya, bila panjang setiap instruksi 16 bit padahal

memori memiliki panjang 8 bit, maka tambahkan 2 ke alamat

sebelumnya.

Instruction Fetch (IF), yaitu membaca atau pengambil instruksi

dari lokasi memorinya ke CPU.

Instruction Operation Decoding (IOD), yaitu menganalisa instruksi

untuk menentukan jenis operasi yang akan dibentuk dan

operand yang akan digunakan.

Operand Address Calculation (OAC), yaitu menentukan alamat

operand, hal ini dilakukan apabila melibatkan referensi

operand pada memori.

Operand Fetch (OF), adalah mengambil operand dari memori atau

dari modul I/O.

 Data Operation (DO), yaitu membentuk operasi yang

diperintahkan dalam instruksi. 

16

Operand store (OS), yaitu menyimpan hasil eksekusi ke dalam

memori.  

Eksekusi sebuah instruksi terdiri dari sejumlah langkah, pada

tahap ini pengolahan instruksi dibagi 2 tahap :

1. Fetch

Fetch instuksi adalah operasi umum bagi setiap instruksi dan

terdiri dari pembacaan instruksi dari suatu lokasi di dalam

memori.

2. Eksekusi

Eksekusi instruksi dapat melibatkan sejumlah operasi dan

tergantung dari sifat-sifat instruksi.

17

Gambar1. Flowchart eksekusi instruksi yang dilakukan oleh Control Unit

M(X) = isi lokasi memori yang alamatnya X

(X:Y) = bit X sampai dengan Y

Pada dasarnya, eksekusi program akan terhenti apabila terjadi 3

kemungkinan diantaranya :

1. Mesin dimatikan

18

2. Terjadi kesalahan

3. Terdapat instruksi program yang mengentikan komputer

Gambar2. Siklus Instruksi Dasar

19

Siklus-siklus Fetch dan Eksekusi 

Awal siklus instruksi

CPU membawa instruksi dari memori

PC (Program Counter) dipakai untuk mengawasi

instruksi yang akan dibaca

selanjutnya.

CPU selalu menambahkan PC setiap kali membaca

instruksi

Instruksi yang dibaca dimuat ke dalam register di

dalam CPU yaitu IR (Instruction Register)

CPU melakukan 4 kegiatan yaitu diantaranya :

1

.

CPU – Memori : Data dapat dipindahkan dari CPU ke memori

atau dari memori ke CPU

2

.

CPU – I/O : Data dapat dipindahkan ke atau dari dunia

luar dengan pemindahan antara CPU dan modul I/O

3

.

Pengolahan Data : CPU dapat membentuk sejumlah operasi

aritmatik atau logic terhadap data

4

.

Control : Sebuah instruksi dapat mengubah urutan

eksekusiDiperlukan 3 buah instruksi (Fetch dan Eksekusi)

1.PC berisi 300 (alamat instruksi pertama)

20

Alamat ini dimuat ke dalam IR (melibatkan MAR dan MBR)

2.4 bit pertama IR mengindikasikan AC akan dimuat

12 bit sisanya menentukan alamat, yaitu 940

3.PC dinaikkan nilainya dan instruksi berikutnya akan

diambil

4.Isi AC lama dan isi lokasi 941 ditambahkan

Hasilnya disimpan di dalam AC

5.PC dinaikkan nilainya, dan instruksi berikutnya akan

diambil

6.Isi AC akan disimpan pada lokasi 941Instruksi PDP-11 yang diungkapkan secara simbolik sebagai ADD B,

A menyimpan jumlah isi lokasi memori B dan A ke dalam lokasi

memori A. Terjadi suatu siklus instruksi tunggal dengan langkah-

langkah sebagai berikut :

1

.Mengambil (fetch) instruksi ADD

2

.Membaca isi lokasi memori A ke dalam CPU

3

.Membaca isi lokasi memori B ke dalam CPU

Agar isi A tidak hilang, CPU harus memiliki sedikitnya

dua buah register untuk menyimpan nilai-nilai memori.

4

.Menambahkan kedua nilai itu

5

.Menuliskan hasilnya dari CPU ke lokasi memori A

21

Gambar3. Diagram keadaan siklus instruksi

-Instruction Address Calculation (iac)

Menentukan alamat instruksi berikutnya yang akan

dieksekusi. Biasanya melibatkan penambahan bilangan tetap

ke alamat instruksi sebelumnya. Misalnya, bil panjang

setiap instruksi adalah 16 bit dan memori diorganisasikan

sebagai byte-byte yang secara individual dapat dialamati

dengan panjang 8 bit, maka tambahkan 2 ke alamat

sebelumnya.

-Instruction Fetch (if)

Membaca instruksi dari lokasi memori ke dalam CPU

-Instruction Operation Decoding (iod)

22

Menganalisis instruksi untuk menentukan jenis operasi

yang akan dibentuk dan operand yang akan digunakan

-Operand Address Calculation (oac)

Bila operasi melibatkan referensi ke operand di dalam

memori atau dapat diperoleh melalui I/O, maka tentukan

alamat operand

-Operand Fetch (of)

Ambil operand dari memori dan baca operand itu dari I/O

-Data Operation (do)

Bentuk operasi yang ditunjukkan di dalam instruksi

-Operand Store (os)

Tuliskan hasilnya ke dalam memori atau keluarkan ke I/OSecara virtual semua komputer menyediakan mekanisme yang membuat

modul-modul lainnya (I/O, memori) dapat menginterupsi pengolahan

normal CU.

23

BAB IV

4.1 Fungsi Interupsi Mekanisme penghentian atau pengalihan pengolahan instruksi dalam

CPU kepada routine interupsi.

Hampir semua modul (memori dan I/O) memiliki mekanisme yang dapat

menginterupsi kerja CPU.

4.2 Tujuan Interupsi Secara umum untuk manajemen pengeksekusian routine instruksi agar

efektif dan efisien antar CPU dan modul-modul I/O maupun memori.

Setiap komponen computer dapat menjalankan tugasnya secara

bersamaan, tetapi kendali terletak pada CPU disamping itu

kecepatan eksekusi masing-masing modul berbeda.

Dapat sebagai sinkronisasi kerja antar modul

4.3Proses Interupsi Dengan adanya mekanisme interupsi, prosesor dapat digunakan untuk

mengeksekusi instruksi-instruksi lain.

Saat suatu modul telah selesai menjalankan tugasnya dan siap

menerima tugas berikutnya, maka modul ini akan mengirimkan

permintaan interupsi ke prosesor.

Kemudian prosesor akan menghentikan eksekusi yang dijalankannya

untuk menghandle routine interupsi.

Setelah program interupsi selesai, maka prosesor akan melanjutkan

eksekusi programnya.

24

Saat sinyal interupsi diterima prosesor ada dua kemungkinan

tindakan, yaitu interupsi diterima/ditolak dan interupsi ditolak.

4.4 Macam – macam kelas sinyal interupsi

Program

Dibangkitkan dengan beberapa kondisi yang terjadi

sebagai hasil dari suatu eksekusi instruksi,

seperti arithmetic overflow, pembagian dengan

nol, usaha mengeksekusi instruksi mesin yang

illegal dan referensi ke luar memori pengguna

yang diperbolehkan.

Timer

Dibangkitkan oleh timer di dalam processor.

Memungkinkan sistem operasi menjalankan fungsi-

fungsi tertentu secara regular.

I/O

Dibangkitkan oleh I/O controller. Untuk memberi

signal penyelesaian normal suatu operasi atau

memberi signal berbagai kondisi error.

Hardware

failure

Dibangkitkan oleh kegagalan seperti kegagalan

daya atau memory parity error

25

Interupsi disediakan terutama sebagai cara untuk meningkatkan

efisiensi pengolahan, karena sebagian besar perankat eksternal

jauh lebih lambar dibandingkan prosesor.

Misal:

Bahwa processor sedang melakukan pemindahan data ke printer

dengan menggunakan pola siklus instruksi seperti pada gambar2.

Setiap kali setelah melakukan operasi penulisan, CPU akan

berhenti dan berada dalam keadaan idle sampai printer menerima

seluruh data. Lamanya berhenti dapat ratusan bahkan ribuah siklus

instruksi yang tidak melibatkan memori.

Jelas hal ini sangat menyianyiakan kemampuan processor. Dengan

adanya interrupt, processor dapat diperintahkan untuk

mengeksekusi instruksi-instruksi lainnya pada saat operasi-

operasi I/O sedang dilaksanakan.

Gambar4. Program-program pengguna membentuk sejumlah pemanggil

WRITE yang berada diantara pengolahan. Segmen 1, 2, 3 merupakan

urutan instruksi yang tidak melibatkan I/O.

Panggilan WRITE adalah panggilan terhadap program I/O yang

merupakan utilitas sistem dan akan membentuk operasi-operasi

actual.

Program I/O terdiri dari tiga bagian :

-Rangkaian instruksi (label 4) untuk disiapkan operasi I/O

actual.

Meliputi penyalinan data yang akan di-output-kan ke dalam

buffer khusus

-Perintah I/O actual

26

Tanpa menggunakan interrupt, sekali perintah ini

dikeluarkan, maka program harus menunggu perangkat I/O

membentuk fungsi yang diminta. Program dapat menunggu

dengan cara membentuk operasi test secara berulang untuk

menentukan apakah operasi I/O telah dilaksanakan.

-Rangkaian instruksi (label 5), untuk menyelesaikan

operasi

Urutan instruksi ini dapat meliputi penyetelan suatu flag

yang menandakan berhasil atau gagalnya operasi.

Gambar4. Aliran program kontrol, tanpa atau dengan interrupt

27

4.5 Interrupt dan Siklus Instruksi Dengan memakai interrupt, processor dapat dipakai

dalam mengeksekusi instruksi-instruksi lainnya

operasi I/O sedang dilaksanakan.

Setelah beberapa instruksi dieksekusi, kontrol

mengembalikannya ke program pengguna.

Sementara itu, perangkat eksternal berada dalam

keadaan sibuk menerima data dari memori komputer dan

mencetak data.

Operasi I/O dilakukan secara konkuren dengan

eksekusi instruksi-instruksi pada program pengguna.

Dari sudut pandang program pengguna, interrupt

adalah sebuah interupsi terhadap rangkaian eksekusi

normal. Bila pengolahan interrupt selesai, maka

eksekusi kembali dilakukan.

28

Gambar5. Siklus instruksi dengan interrupt

4.6 Multiple Interrupt 

Misalnya :

Sebuah program dapat menerima data dari suatu saluran komunikasi

dan mencetak hasilnya.

Printer akan menghasilkan sebuah interrupt setiap kali

menyelesaikan sebuah operasi cetak.

Pengontrol saluran komunikasi akan menghasilkan sebuah interrupt

setiap kali satu satuan data tiba.

Dua Pendekatan pada interrupt jamak :

1 Tidak menginzinkan terjadi interrupt lain pada saat

29

. suatu interrupt sedang diproses.

Artinya processor dapat dan akan mengabaikan signal

interrupt request. Interrupt tersebut akan ditangguhkan

dahulu dan diperiksa oleh prosesor setelah prosesor

mengizinkan lagi terjadi interrupt (interrupt handler).

Kekurangannya yaitu tidak memperhitungkan prioritas atau

kebutuhan waktu kritis.

2

.

Mendefinisikan prioritas bagi interrupt dan mengizinkan

interrupt berprioritas tinggi menyebabkan interrupt

handler yang berprioritas lebih rendah untuk

menginterupsi dirinya.

30

Gambar6. Transfer pengendalian dengan multiple interrupt

31

4.7 Fungsi I/O

-Sebuah modul I/O dapat saling bertukar data secara

langsung dengan CPU

-CPU dapat membaca data dari modul I/O atau menulis data

ke modul I/O

32

PENUTUP

Demikianlah yang dapat kami sampaikan mengenai materiyang menjadi bahasan dalam makalah ini, tentunya banyakkekurangan dan kelemahan kerena terbatasnya pengetahuan

kurangnya rujukan atau referensi yang kami perolehhubungannya dengan makalah ini Penulis banyak berharapkepada para pembaca yang budiman memberikan kritiksaran yang membangun kepada kami demi sempurnanya

makalah ini. Semoga makalah ini dapat bermanfaat bagipenulis para pembaca khusus pada penulis. Aamiin

33

DAFTAR PUSTAKA

http://a114308201005201.blogspot.com/2011/11/siklus-eksekusi-

program.html

http://fitriarahmana.blogspot.com/2013/05/proses-eksekusi-

instruksi-dalam_497.html

http://id.wikipedia.org/wiki/

Program_komputer#Eksekusi_dan_penyimpanan

34

http://fitrinurhayati91.blogspot.com/2013/05/pemrosesan-eksekusi-

intruksi.html

http://oneway-kurniasurbakti.blogspot.com/2013/05/pemprosesan-

eksekusi-intruksi-dalam-cpu.html

http://wulandyansyah10.blogspot.com/2013/06/jelaskan-bagaimana-

cara-pemrosesan.html

http://www.scribd.com/doc/34517583/Makalah-Arsitektur-Komputer

35