Pengertian CPU

CPU adalah singkatan dari Central Processing Unit yang merupakan perangkat keras komputer yang berfungsi untuk menerima dan melaksanakan perintah dan data dari perangkat lunak. Prosesor sering digunakan untuk menyebut CPU pada umumnya. Adapun mikroprosesor adalah CPU yang diproduksi dalam sirkuit terpadu, seringkali dalam sebuah paket sirkuit terpadu-tunggal. Sejak pertengahan tahun 1970-an, mikroprosesor sirkuit terpadu-tunggal ini telah umum digunakan dan menjadi aspek penting dalam penerapan CPU.

CPU atau unit pemroses juga merupakan bagian terpenting dalam sebuah komputer. Instruksi-instruksi program akan diproses untuk mengolah data yang sudah dimasukkan ke dalam komputer lewat alat input dan hasilnya akan ditampilkan di alat output.

Pada komputer mikro, prosesor ini disebut dengan mikroprosesor. CPU terdiri dari dua bagian utama yaitu unit kendali (control unit) dan unit aritmatika dan logika (arithmatic and logic unit). Di samping dua bagian tadi, CPU mempunyai beberapa memori yang berukuran kecil yang disebut register.

 

Sejarah CPU

Iklan pertama untuk mikroprosesor muncul di Electronic News. Federico Faggin, Ted Hoff, dan timnya di Intel Corporation mendesain mikroprosesor 4004 ketika membuat sebuah IC pesanan untuk Busicom, sebuah perusahaan kalkulator Jepang. Mikroprosesor 4004 mempunyai 2.250 transistor PMOS, menangani data 4 bit, dan dapat mengeksekusi 60 ribu operasi per detik. Mikroprosesor 4004 ini adalah salah satu dari seri IC untuk komponen kalkulator tersebut: 4001: memori ROM 2.048 bit; 4002: memori RAM 320 bit; serta 4003: register geser I/O 10 bit.

Pada tahun 1972, 8008 dengan bus data 8 bit digunakan oleh Don Lancaster untuk membuat cikal-bakal personal komputer. 8008 membutuhkan 20 komponen tambahan untuk dapat bekerja penuh sebagai CPU. Lalu tahun 1974, 8080 menjadi otak personal pertama komputer, Altair, diduga merupakan nama tujuan pesawat Starship Enterprise di film TV Star Trek. 8080 hanya membutuhkan 2 perangkat tambahan untuk bekerja. Selain itu 8080 terbuat dari transistor NMOS yang bekerja lebih cepat. 8080 diseut sebagai mikroprosesor generasi kedua. Segera sesudah itu Motorolla membuat MC6800 yang juga merupakan CPU multiguna. MC6800 sangat populer karena menggunakan catu daya +5V, dibanding 8080 dengan catu daya –5V, +5V, -12V, dan +12V. Mikroprosesor lain yang muncul adalah 6502 sebagai CPU komputer Apple II, dan Zilog Z80 untuk CPU Radio Shack TRS-80.

Tahun 1978, IBM menciptakan personal komputer PC-XT yang sangat populer menggunakan mikroprosesor 8086 dan 8088. Keduanya mampu menangani data 16 bit. Bedanya hanya pada ukuran bus data yang hanya 8 bit untuk 8088 (operasi internal 16 bit), dan 16 bit untuk 8086. Kemudian Intel membut 80186 dan 80188 yang juga berisi perangkat peripheral terprogram. Tahun 1982, 80286 adalah prosesor pertama yang dapat menjalankan perangkat lunak yang ditulis untuk pendahulunya, karena instruksi yang dimiliki oleh seri sebelumnya semuanya dimiliki dan ditambahi dengan instruksi lain. Kompatibilitas ke atas ini kemudian menjadi ciri khas mikroprosesor Intel. Dalam 6 tahun, ada 15 juta PC-AT yang menngunakan 80286 sebagai CPU.

Tahun 1985, Intel membuat 80386 (386TM) yang mengandung 275 ribu transistor, dan merupakan mikroprosesor 32 bit yang dapat melakukan multi tasking (menjalankan beberapa program dalam waktu yang bersamaan). Tahun 1989, Intel 486TM adalah prosesor pertama yang mempunyai math coprosesor secara built-in di dalamnya.

Tahun 1993, lahir keluarga prosesor Pentium®. Tahun 1995, prosesor Pentium® Pro didesain untuk server 32-bit, mengandung 5,5 juta transistor dan mempunyai chip memori cache kedua di dalamnya. Tahun 1997, dibuat prosesor Pentium® II dengan 7,5 juta transistor dan teknologi MMX, yang didesain khusus untuk memproses data video, audio and grafik secara efisien. Prosesor ini juga diperkenalkan dengan bentuk cartridge Single Edge Contact (S.E.C). Seiring dengan itu bermunculan seri Celeron yang merupakan versi Pentium dengan beberapa fitur yang dihilangkan untuk menekan biaya produksi.

Tahun 1999 muncul Pentium !!! dengan 70 instruksi baru yang mendukung Internet Streaming SIMD. Processor ini berisi 9,5 juta transistor, dan mengintroduksi teknologi 0,25-micron. Pada saat ini sedang dikembangkan mikroprosesor 64 bit, sehingga operasi-operasi matematis yang dilakukan dapat lebih cepat.

 

Bagian-bagian CPU

1.        Control Unit

Bagian ini bertugas mengatur dan mengendalikan semua peralatan yang ada pada sistem komputer. Control unit mengatur kapan alat input menerima data dan kapan data diolah serta kapan ditampilkan pada alat output. Control unit mengartikan instruksi-instruksi dari program komputer, membawa data dari main memory untuk diolah. Bila ada instruksi untuk perhitungan aritmatika atau perbandingan logika maka control unit akan mengirim instruksi tersebut ke arithmatic and logic unit. Hasil dari pengolaha data ini akan dibawa oleh control unit ke main memory lagi untuk disimpan. Jadi tugas dari control unit adalah sebagai berikut :

  1. Mengatur dan mengendalikan alat-alat input dan output.
  2. Mengambil instruksi-instruksi dari main memory.
  3. Mengambil data main memory kalau diperluka oleh proses.
  4. Mengirim instruksi ke arithmetic and logic unti bila ada perhitungan dan perbandingan logika serta mengawasi kerja arithmetic and logic unit.
  5. Menyimpan hasil proses ke memori utama.

2.        Arithmetic and Logic Unit (ALU)

Tugas utama dari arithmetic and logic unit (ALU) adalah melakukan semua perhitungan aritmatika atau matematika yang terjadi sesuai dengan instruksi yang diberikan oleh program dan melakukan perbandingan logika. ALU melakukan operasi aritmatika dengan dasar pertambahan sedang aritmatika yang lainnya seperti pengurangan, perkalian, dan pembagian dilakukan dengan pengmbangan dari operasi pertambahan. Sebagai contoh a-b akan bernilai sama dengan operasi penamabahan a + (-b) atau operasi perkalian 2 x a akan bernilai sama dengan a + a. Sehingga sirkuit elektronik di ALU yang digunakan untuk melaksanakan operasi aritmatika adalah sirkuit adder.

Ada 4 kelas operasi aritmatika yaitu decimal arithmetic, fixed point arithmetic, floating poit arithmetic, dan logic operation. Decimal arithmetic digunakan untuk operasi komersial dan dinyatakan dalam bilangan decimal dengan memakai tanda (+) untuk bilangan positif dan (-) untuk bilangan negatif. Fixed point arithmetic adalah operasi aritmatika dari data biner dan untuk menyatakan address dari storage. Floating point arithmetic untuk operasi matematika. Operasi logika (logic operation) meliputi perbandingan dua buah elemen logika dengan menggunakan operator logika yaitu sama dengan (=), tidak sama dengan (<>), kurang dari (<), kurang dari atau sama dengan (<=), lebih dari (>), dan lebih dari atau sama dengan (>=).

3.        Register

Register merupakan memory kecil yang mempunyai kecepatan tinggi, lebih cepat lima sampai sepuluh kali lebih cepat jika dibandingkan dengan kecepatan read atau write pada main memory. Register digunakan untuk menyimpan instruksi dan data yang sedang diproses oleh CPU, sedangkan instruksi-instruksi dan data lainnya yang menunggu giliran untuk diproses masih disimpan di main memory.

Secara analog register ini dapat diibaratkan dengan ingatan otak bila anda melakukan pengolahan data secara manual sehingga otak dapat diibaratkan sebagai CPU yang berisi ingatan-ingatan. Satuan kendali yang mengendalikan seluruh kegiatan tubuh dan mempunyai tempat untuk melakukan perhitungan dan perbandingan logika.

Program yang berisi kumpulan dari instruksi-instruksi dan data diletakkan di main memory yang diibaratkan sebagai meja. Anda mengerjakan program tersebut dengan memproses satu per satu instruksi-instruksi yang ada di dalamnya mulai dari instruksi yang pertama. Instruksi ini anda baca dan diingat. Instruksi yang sedang diproses disimpan di register. Misalnya instruksi tersebut berbunyi ”hitung c = a + b” maka anda membutuhkan data nilai a dan b yang masih ada dimeja. Data tersebut anda baca dan masuk ke ingatan anda yaitu a bernlai 2 dan b bernilai 3. sekarang di ingatan otak anda telah tersimpan suatu instruksi dan nilai data a dan b, dengan demikian nilai dari c dapat kita hitung sehingga hasilnya adalah 5. hasil dari perhitungan ini perlu anda tuliskan kembali ke meja. Setelah semua hasil instruksi selesai diproses kemungkinan program, data dan hasil pengolahan ingin anda simpan secara permanen untuk keperluan di lain hari dan dapat anda simpan di fillinf cabinet. Memory luar komputer diibaratkan seperti fillinf cabinet. Jadi, dalam komputer terdiri dari tiga maam memory yaitu :

1.    Register, dipergunakan untuk menyimpan instruksi dan data yang sedang diproses.

2.    Main memory, dipergunakan untuk menyimpan instruksi dan data yang akan diproses

dan hasil dari pengolahan.

3.    Eternal memory, dipergunakan untuk menyimpan program dan data secara permanen.

Register yang berhubungan dengan instruksi yang sedang diproses adalah instruction register dan program counter. Instruction register (IR) atau disebut juga program register digunakan untuk menyimpan instruksi yang sedang dijalankan atau diproses. Program yang berisi kumpulan instruksi disimpan di main memory. Pemrosesan program dilakukan instruksi per instruksi, instruksi yang mendapat giliran untuk diproses diambil dari main memory dan disimpan di register (IR).

Program counter atau disebut juga control counter adalah register yang digunakan untuk menyimpan alamat (address) lokasi dari main memory yang berisi instruksi yang sedang diproses. Selama pemrosesan instruksi yang dilakukan oleh CPU maka isi dari program counter (PC) diubah dengan alamat dari main memory berikutnya yang berisi instruksi selanjutnya yang mendapat giliran untuk diproses. Sehingga bila pemrosesan sebuah instruksi selesai dilakukan tidak ada waktu yang terbuang untuk mencari jejak dari instruksi berikutnya yang akan diproses karena alamat atau letak dari instruksi tersebut sudah berada PC.

Register yang berhubungan dengan data yang sedang diproses adalah general purpose register. Untuk beberapa computer, general purpose register diberi symbol R0, R1, R2, … Rn yang mempunyai kegunaa yang umum seperti untuk menampung data yang sedang diolah(operand register) dan untuk menampung hasil pengolahan (accumulator). Untuk computer IBM PC yang menggunakan mikroprosesor intel 8088 mempunyai general purpose register sebanyak 4 buah register. Satu untuk accumulator, yaitu register yang diberi nama AX register dan 3 buah yang lainnya untuk operand register yaitu BX, CX, dan DX register.

Operand register digunakan untuk menampung data atau operand yang sedang dioperasikan. Accumulator adalah register yang digunakan untuk menyimpan hasil dari operasi aritmatika dan operasi logika yang dilakukan oleh ALU.

Konsep penting yang mempengaruhi kecepatan dari prosesor adalah ukuran dari register. Istilah word size menggambarkan ukuran dari operand register yang berkisar dari 8 sampai 64 bit. Misalnya operand register mempunyai word size 16 bit maka prosesor tersebut dikatakan 16 bit prosesor.

Register lainnya yang digunakan sebagai jembatan antara CPU dengan main memory adalah memory address register (AMR) dan memory data register (MDR). Register ini yang dihubungkan dengan suatu jalur (bus) ke main memory.

Memory data register digunakan untuk menampung data atau instruksi hasil pengiriman dari main memory ke CPU atau untuk menampung data yang akan disimpan ke main memory. Instruksi atau data yang akan diambil dari main memory dikirimkan ke CPU lewat data bus dan diterima terlebuh dahulu di MDR dan akan dipindahkan ke IR bila berbentuk instrusksi atau ke operand register bila berbentuk data. Demikian juga bila hasil operasi yang ada di AC aka disimpan di main memory maka akan diletakkan terlebih dahulu di MDR.

Sedang AMR digunakan untuk menampung alamat (address) data atau instruksi di main memory yang akan diambil atau yang akan disimpan. Bila instruksi atau data akan diambil dari main memory maka main memory harus diberi tahu dahulu letak alamat (address) dari data atau instruksi tersebut di main memory. Alamat tersebut diletakkan di MAR oleh control unit dan dikirimkan ke main memory melalui address bus. Demikian juga bila hasil pengolahan akan disimpan ke main memory maka main memory harus diberi tahu terlebih dahulu alamat penyimpanan dari data di main memory. Control unit akan letakkan alamat tersebut di MAR dan dikirimkan ke main memory lewat address bus.

Sebagai tambahan dari register sebuah CPU menggunakan suatu cache memory dengan maksud supaya kerja CPU lebih efisien dan megurangi waktu yang terbuang. Tanpa cache memory, CPU akan menunggu sampai data atau instruksi diterima dari main memory atau menunggu hasil pengolahan selesai dikirim ke main memory baru proses selanjutnya bisa dilanjutkan padahal proses dari main memory lebih lambat dibandingkan dengan kecepatan register. Cache memory diletakkan di antara CPU dengan main memory.

Cache memory harus lebih cepat dari main memory dan mempunyai ukuran yang cukup besar tetapi tidak lebih besar dari main memory. Sebenarnya cache memory tidak diperlukan jika main memory memiliki kecepatan seperti kecepatan pada cache memory. Tapi karena memory dengan kecepatan yang tinggi dibuat dengan menggunakan superkonduktor yang harganya mahal maka menjadi tidak ekonomis bila menggunakan main memory dengan keceapatan tinggi. Dengan cache memory sejumlah blok informasi di main memory dipindahkan ke cache memory dan selanjutnya CPU akan berhubungan dengan cache memory.

Bila sejumlah besar dari perhitungan harus dilakukan maka untuk mempercepat waktu proses dapat dipergunakan array processor atau co-processor yaitu prosesor terpisah yang dapat ditambahkan pada prosesor utamanya. Dengan array prosesor perhitungan aritmatika yang besar dan sulit dapat dilakukan dengan memecah perhitungan tersebut dan dilakukan bersama-sama antara central processor dengan array processor. Karena array prosesor hanya digunakan untuk perhitungan aritmatika yang rumit maka prosesor ini sering disebut dengan mathprocessor atau numeric data processor.

4.        Main Memory

CPU hanya dapat menyimpan data dan instruksi di register yang ukurannya kecil sehingga tidak dapat menyimpan semua informasi yang dibutuhkan untuk keseluruhan proses dari program. Untuk mengatasi hal ini pada CPU dilengkapi dengan memory yang kapasitasnya lebih besar yitu main storage atau internal memory.

Main memory dapat dibayangkan sebagai kotak-kotak yang masingmasing kotak dapat menyimpan suatu penggal informasi baik berupa data maupun instruksi. Tiap-tiap lokasi dari kotak ditunjukkan oleh suatu alamat (address). Alamat memory merupakan suatu nomeor yang menunjukkan lokasi tertentu dari kotak memori.

a.        RAM (Random Access Memory)

Semua data dan instruksi (program) yang dimasukkan melalui input device akan disimpan terlebih dahulu di main memory, khusunya di RAM. RAM merupakan memory yang dapat diakses yaitu dapat dibaca dan ditulis oleh programmer.

Struktur dari RAM dibagi menjadi 4 bagian yaitu :

  • Input storage, digunakan untuk menampung input yang dimasukkan melalui input device.
  • Program storage, digunakan untuk menyimpan semua instruksi-instruksi program yang akan diproses
  • Working storage, digunakan untuk menyimpan data yang akan diolah dan hasil dari pengolahan.
  • Output storage, digunakan untuk menampung hasil akhir dari pengolahan data yang akan ditampilkan pada output device. Input yang dmasukkan melalui input device pertama kali ditampung terlebih dahulu di input storage, bila input tersebut berbentuk program maka dipindahkan ke program storage dan bila berbentuk data akan dipindahkan ke working storage dan hasil yang akan ditampilkan ke output device dipindahkan ke output storage.

b.        ROM (Read Only Memory)

Memory jenis ini hanya bisa dibaca tapi tidak bisa ditulisi oleh programmer. Isi ROM sudah diisi oleh pabrik pembuatnya berupa sistem operasi yang terdiri dari program-program pokok yang diperlukan oleh sistem komputer.

Isi dari ROM tidak boleh rusak atau hilang. Bila hal itu terjadi maka sistem komputer tidak akan bisa berfungsi lagi. Oleh karena itu para pembuatnya menrancangnya sedemikian rupa sehingga para programmer tidak bisa mengganti isinya. ROM bersifat non voaltile sehingga isinya tidak akan hilang bila listrik mati.

Dalam kasus lain memungkinkan untuk mengubah isi dari ROM yaitu dengan cara memrogram kembali instruksi-instruksi yang ada di dalam ROM tersebut. ROM yang bisa diprogram berbentuk chip yang ditempatkan pada rumahnya yang mempunyai jendela di atasnya. ROM yang dapat diprogram kembali adalah PROM (Programmable ROM) yang dapat diprogram oleh programmer yang selanjutnya tidak bisa diprogram lagi. Jenis lain adalah EPROM (Erasable PROM) yang dapat dihapus dengan sinar UV serta dapat diprogram berulang-ulang. EEPROM (Electrically EPROM) dapat dihapus secara elektrik dan dapat diprogram lagi.

Jenis-jenis main memory yang lain berdasarkan komponen-komponen yang digunakan di antaranya vacum tube, magnetic core storage, planar thin film storage, semiconductor storage, josephon junction dan charge-coupled device (CCD).

5.        Hubungan Antara CPU Dengan Main Memory Dan I/O Device

Hubungan antara CPU dengan main memory dan I/O device dihubungkan oleh suatu saluran yang disebut bus. Hubungan antara CPU dengan main memory melalui jalur bus yang dilekatkan pada MDR, MAR, dan control unit di CPU. Sedang bus yng menghubungkan CPU dengan I/O device tidak dilekatkan langsung ke device-device I/O tersebut melainkan melalui suatu I/O port atau DMA controller atau I/O channel.

a. Bus

Bus merupakan jalur transportasi informasi antara dua atau lebih device dalam sistem komputer. Bus yang menghubungkan CPU dengan main memory disebut dengan internal bus. Sedang bus yang menghubungkan CPU dengan I/O device disebut dengan external bus.

Ada tiga jenis bus utama yaitu data bus, address bus, dan control bus. Data bus adalah bus yang digunakan untuk jalur transportasi data dan instruksi. Address bus adalah bus yang digunakan untuk jalur transportasi alamat di main memory untuk data dan instruksi yang akan diambil atau disimpan. Control bus adalah bus yang digunakan untuk mengirimkan sinyal sebagai pemberitahuan akan dikirimkan suatu informasi atau telah diterimanya informasi yang dikirimkan dari satu device ke device yang lain. Di dalam internal bus hubungan antara CPU dengan main meory melalui data bus yang dihubungkan dengan MDR, address bus yang dihubungkan dengan MAR dan control bus yang dihubungkan dengan control unit.

b. I/O Port

I/O device tidak dilekatkan langsung dengan bus tetapi melelui suatu I/O port I/O interface. I/O device dapat berkomunikasi dengan CPU dengan cara mengirimkan informasi yang akan dikomunikasikan dengan bus. Informasi yang dikirim dari I/O device ke main memory atau ke register di CPU diletakkan di I/O port dan dikirimkan lewat data bus.

Demikian juga bila informasi dari main memory akan dikirimkan ke peripheral device juga melalui data bus dan diterima di I/O port. Cara pengiriman informasi ke I/O device seperti ini disebut dengan program-controlled I/O.

Dengan cara program-controlled I/O seperti tersebut hanya satu word data saja yang dapat dikirimkan setiap saat. Cara ini banyak diterapkan pada I/O device yang hanya dapat menangani satu karakter atau 1 byte saja setiap saat. Jika satu blok data besar dibutuhkan untuk dikirimkan dari atau ke peripheral device, cara yang lain yang harus digunakan adalah Direct Memory Address (DMA).

c. DMA (Direct Address Memory) Controller

Untuk peripheral device yang mempunyai kecepatan tinggi tidaklah ekonomis untuk pengiriman informasi byte per byte atau word per word dan akan lebih ekonomis bila pengiriman informasi dilakukan sekaligus per blok informasi. Bila informasi dikirimkan langsung per blok dan CPU beroperasi lebih cepat dibandingkan dengan proses peripheral device, bila CPU harus selalu mengawasi pengiriman informasi maka akan terjadi suatu waktu yang terbuang di CPU.

Karena CPU banyak menghabiskan proporsi waktu yang cukup besar di dalam proses membaca dan menuliskan informasi dari atau ke peripheral device maka perlu dibuat cara agar proses ini tidak terlalu banyak menyita waktu dari CPU.

DMA merupaka suatu konsep yang akan membuat komunikasi informasi antara peripheral devioce dengan main memory akan lebih efisien. Cara DMA ini dilakukan dengan melekatkan bus pada DMA controller yang dihubungkan dengan peripheral device.

d. I/O Channel

Telah dibahas dua cara untuk menerapkan pengiriman informasi ke peripheral device yaitu program-controlled I/O dan DMA. Program-controlled I/O biasanya digunakan untuk peripheral device yang mempunyai kecepatan rendah sedangkan yang mempunyai kecepatan tinggi dilakukan dengan DMA.

Bila beberapa peripheral device yang mempunyai kecepatan tinggi akan dihubungkan dengan CPU maka tidaklah ekonomis menyediakan beberapa DMA controller yang terpisah untuk masing-masing peripheral device, yang lebih ekonomis adalah menyediakan DMA controller yang akan digunakan untuk sejumlah peripheral device. Pemikiran inilah yang menimbulkan konsep I/O channel. Suatu I/O channel adalah suatu DMA controller yang dipergunakan bersama-sama untuk sejumlah I/O device.

Masing-masing I/O device dihubungkan dengan suatu channel lewat suatu control unit. Sebuah controller dapat digunakan untuk sejumlah I/O device yang sejenis.

 

Cara Kerja CPU

Saat data dan/atau instruksi dimasukkan ke processing-devices, pertama sekali diletakkan di RAM (melalui Input Storage), apabila berbentuk instruksi ditampung oleh Control Unit di Program Storage, namun apabila berbentuk data ditampung di Working Storage). Jika register siap untuk menerima pengerjaan eksekusi, maka Control Unit akan mengambil instruksi dari Program Storage untuk ditampungkan ke Instruction Register, sedangkan alamat memori yang berisikan instruksi tersebut ditampung di Program Counter.

Sedangkan data diambil oleh Control Unit dari Working Storage untuk ditampung di General Purpose Register (dalam hal ini di Operand Register). Jika berdasar instruksi pengerjaan yang dilakukan adalah aritmatika dan logika, maka ALU akan mengambil alih operasi untuk mengerjakan berdasar instruksi yang ditetapkan. Hasilnya ditampung di Accumulator. Apabila hasil pengolahan telah selesai, maka Control Unit akan mengambil hasil pengolahan di Accumulator untuk ditampung kembali ke Working Storage. Jika pengerjaan keseluruhan telah selesai, maka Control Unit akan menjemput hasil pengolahan dari Working Storage untuk ditampung ke Output Storage. Lalu selanjutnya dari Output Storage, hasil pengolahan akan ditampilkan ke Output Devices.

 

Fungsi CPU

CPU 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 tetikus. 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, 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.

Sumber :

http://danang-dancil.blogspot.com/2012/11/cpu.html

http://missnuroxfordutomo.blogspot.com/2011/04/pengertian-cpu-dan-fungsinya.html