Makalah Tugas Pertemuan 3
Makalah Tugas Pertemuan 3
STRUKTUR CPU
3.1.3 Register
Bagian CPU berikutnya adalah register. Register merupakan perangkat
memori sementara yang menyimpan data. Register membantu CPU dalam
melaksanakan instruksi. Mereka dikelola oleh unit kontrol. Register berfungsi
untuk tempat penyimpanan yang berisi data dan informasi lainnya yang sering
dibutuhkan ketika sebuah program sedang berjalan. Register dimaksudkan untuk
dapat diakses dengan sangat cepat. Yang termasuk register di antaranya adalah
register uji dan instruksi. Register instruksi berisi instruksi CPU sedangkan
register uji dimaksudkan untuk menyimpan hasil kerja yang dilakukan oleh CPU.
Register prosesor, dalam arsitektur komputer adalah sejumlah kecil
memori komputer yang bekerja dengan kecepatan sangat tinggi yang digunakan
untuk melakukan eksekusi terhadap program-program komputer dengan
menyediakan akses yang cepat terhadap nilai-nilai yang umum digunakan.
Register merupakan sebagian memori dari mokroprosesor yang dapat
diakses dengan kecepatan yang sangat tinggi.Sebuah register adalah sebuah
tempat penampungan semantara untuk data-data yang akan diolah oleh prosesor,
dan dibentuk oleh 16 titik elektronis didalam chip mikroprosesor itu
sendiri.dengan adanya penampungan data sementara ini,proses pengolahan akan
bisa dilakukan secara cepat di bandingkan apabila data-data tersebut harus diambil
langsung dari lokasi-lokasi memori. Register adalah sebagian kecil memory
komputer yang dipakai untuk tempat penampungan data.Data yang terdapat dalam
register dapat diproses dalam berbagai operasi dengan melihat berapa besar
kemampuan register tersebut (8 atau 16 bit).
4 Jenis kelompok register sebagai berikut:
1. General Purpose Register
a) Accumulator Register AX
Fungsi: Sebagai akumulator dan berhubungan dengan jenis-jenis
operasi khusus seperti Aritmetika, In/Out, Shift,Logic, Rotate, dan
operasi desimal berkode biner.
b) Base Register BX
Fungsi: Sebagai register base untuk mereferensi alamat memori.
Operasi yang dapat dilakukan adalah Rotate, Logic, Shift, dan
Aritmetika.
c) Counter Register CX
Fungsi: Sebagai pencacah implisit dengan instruksi tertentu,
misalnya terhadap perintah Loop dan operasi string. Counter naik jika
direction flag bernilai 0, dan counter turun jika direction flag bernilai
1.
d) Data Register DX
Fungsi: Menyimpan alamat port I/O selama operasi I/O tertentu,
baik alamat port 8 bit maupun 16 bit. Digunakan juga dalam operasi
perkalian dan pembagian.
2. Pointer dan Index Register
a) Register SP (Stack Pointer, 16 bit)
Fungsi: Digunakan untuk operasi stack seperti menyimpan alamat
return saat memanggil subroutine. SP merupakan register yang secara
implisit digunakan oleh perintah PUSH dan POP yaitu menyimpan dan
mengambil kembali dari stack.
b) Register BP (Base Pointer, 16 bit)
Fungsi: Sebagai penunjuk base dalam stack yang disediakan untuk
penyimpanan data. BP juga digunakan si dengan bahasa pemrograman
misalnya Assembler dan C.
c) Register SI dan DI (Source Index dan Destination index, 16 bit)
Fungsi: Menyimpan nilai-nilai offset dalam segment data memori pada
saat bersangkutan.
d) Register IP (Instruction Pointer, 16 bit)
Fungsi: Register yang berpasangan dengan CS sebagai register utama
untuk menunjukkan baris perintah program. Pada saat program dijalankan,
IP akan langsung menunjuk pada awal program. Code Segment dan
Instruction Pointer berfungsi sebagai program counter ditulis dengan
format CS:IP. Secara umum, kode mesin diletakkan di Code Segment,
semua data diletakkan di Data Segment, dan operasi PUSH dan POP
dilakukan di Stack Segment.
3. Register Segment (16 bit)
a) Register CS (Code Segment)
Fungsi: Mencatat segment dari kode program atau instruksi, register
CS berpasangan dengan register IP (Instruction Pointer) dalam format
CS:IP.
b) Register DS (Data Segment)
Fungsi: Menyimpan alamat dari segment dimana data terletak.
c) Register SS (Stack Segment)
Fungsi: Menyimpan alamat segment memori yang dipergunakan
sebagai stack.
d) Register ES (Extra Segment)
Fungsi: Menyimpan alamat segment tambahan, misalnya alamat
display, alamat sistem operasi, dan sebagainya.
4. Register Flag
Mikroprosesor 8086/8088 mempunyai Status Flag 1 bit dan 4 Kontrol Flag
yang dikonfigurasikan dalam register 16 bit. Status Flag terdiri dari:
a) CF (Carry Flag)
Tugas: Dimana sebuah carry out atau borrow, jika hasilnya adalah bit
tertinggi (nilai 1).
b) PF (Parity Flag)
Tugas: Menset (nilai 1), jika instruksi menghasilkan sebuah angka
genap (even parity).
c) AF (Auxiliary Flag)
Tugas: Digunakan oleh instruksi pegaturan desimal.
d) ZF(Zero Flag)
Tugas: Menset (nilai 1), jika hasil instruksi adalah 0.
e) SF (Sign Flag)
Tugas: Menset (nilai 1), jika hasilnya adalah negatif dan bernilai 0 jika
positif. Kontrol Flag terdiri dari:
f) OF (Overflow Flag)
Tugas: Menunjukkan sebuah operasi yang tidak benar yaitu merubah
hasil daripada tanda bit.
g) IF (Interrupt Enable Flag)
Tugas: Jika diset (nilai 1) dapat melakukan operasi interupsi dan
sebaliknya bila bernilai 0, maka interupsi tidak dapat dilakukan.
h) DF (Direction Flag)
Tugas: Mengontrol arah dari operasi string. Jika DF=1, maka register
SI dan DI nilainya menurun (decrement); jika DF=0, maka register DI dan
SI nilai menaik (increment). Register ini digunakan untuk instruksi-
instruksi MOVS, MOVSB, MOVSW, CMPS, CMPSB, dan CMPSW.
i) TF (Trap Flag)
Tugas: Ditempatkan dalam single step mode untuk keperluan debug.
3.1.4 CPU Interconnections
CPU interconnection adalah sistem koneksi dan bus yang menghubungkan
komponen internal CPU, 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
Interkoneksi yang banyak digunakan sampai saat ini adalah system bus.
Dalam arsitektur komputer, sebuah bus adalah sebuah subsistem yangmentransfer
data antar komponen komputer pada sebuah komputer atauantar komputer.Secara
umum fungsi saluran bus dikategorikan dalam tigabagian : Address Bus, data bus,
dan Control bus. Berikut kinerja masing-masing bus :
a) Data bus
Kinerja : memindahkan data antar modul dalam sistem computer
yangbersifat bldirectional, artinya CPU dapat membaca dan menerima
datamelalui data bus ini. Data bus biasanya terdiri atas 8, 16, 32, atau
64 paralel.
b) Address Bus
Kinerja : menandakan lokasi sumber ataupun tujuan pada
prosestransfer data. Pada jalur ini, CPU akan mengirimkan alamat
memori yangakan ditulis atau dibaca. Address bus biasanya terdiri atas
16, 20, 24, atau32 jalur paralel.
c) Control Bus
Kinerja : mengontrol penggunaan serta akses ke Data Bus dan
Address Bus. terdiri dari 4 sampai 10 jalur parallel
Pada awal setiap siklus instruksi CPU membaca instruksi dari memori.
Pada CPU yang umum, suatu register yang disebut program counter (PC) dipakai
untuk mengawasi instruksi yang akan dibaca selanjutnya secara berurutan (yaitu,
instruksi yang terletak pada alamat yang lebih tinggi berikutnya, di dalam
memori). Sebagai contoh saja, masing-masing instruksi menempati sebuah word
16 byet di memori dan anggaplah bahwa PC disetel pada lokasi 300. Maka CPU
kemudian akan membaca instruksi pada lokasi 300. Siklus instruksi selanjutnya,
CPU akan membaca instruksi dari lokasi 301, 302, 303, dst. Urutan dapat berubah
apabila ada proses interrupt dari perangkat lain yaitu (I/O,memori).
Berikut adalah cara CPU mengeksekusi program (3 siklus fetch dan 3 tiga
eksekusi) :
a) Program Counter (PC) berisi 300 alamat instruksi pertama. Kemudian
alamat ini dimuatkan ke dalam Instruction Register (IR). Sedangkan
Memori Address Register (MAR) dan Memory Buffer Register (MBR)
diabaikan dulu.
b) 4 byet pertama di dalam IR (format instruksi 16 byet) mengindikasikan
bahwa akumulator (AC) akan dimuatkan. 12 byet sisanya menentukan
alamat dlm memori, yaitu 940.
c) PC dinaikkan nilainya, dan instruksi berikutnya akan diambil.
d) Isi AC yang lama dan isi lokasi 941 ditambahkan, dan hasilnya disimpan
di dalam AC.
e) PC dinaikkan nilainya, instruksi berikutnya akan diambil.
f) Isi AC akan disimpan pada lokasi 941.
3.3 Kesimpulan
Komputer adalah serangkaian ataupun sekelompok mesin elektronik yang
terdiri dari ribuan bahkan jutaan komponen yang dapat saling bekerja sama, serta
membentuk sebuah sistem kerja yang rapi dan teliti.
Pada komputer terdiri hardware (perangkat keras pada komputer),
software (perangkat lunak pada komputer) dan brainware (perangkat manusia
pada komputer). Pada komputer terdapat CPU (Central Processing Unit). CPU
salah satu komponen perangkat keras yang sangat dibutuhkan pada komputer.
Disinilah semua data diolah pada CPU. Maka dari itu CPU sangat dibutuhkan
untuk CPU.
CPU siingkatan dari Central Processing Unit adalah perangkat keras
komputer yang berfungsi untuk menerima dan melaksanakan perintah dan data
dari perangkat lunak.
Struktur CPU terdiri dari, yaitu:
1. ALU ( Arithmetic Logic Unit ).
2. CU ( Control Unit ).
3. Register.
4. CPU interconnection.
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 tombol, 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 (MAA), yang mana setiap instruksi akan diberi
alamat unik yang disebut alamat memori.
CPU menjalankan program – program yang disimpan dalam memori
utama dengan cara mengambil instruksi – instruksi, menguji instruksi tersebut dan
mengekse kusinya satu persatu sesuai alur perintah.Sehingga langkah-langkah
pada operasi CPU , yaitu operasi :
a) Pembacaan instruksi (fetch) dan
b) Pelaksanaan instruksi (execute
Detail siklus operasi, yaitu :
a) Instruction Addess Calculation (IAC),
b) Instruction Fetch (IF),
c) Instruction Operation Decoding (IOD),
d) Operand Address Calculation (OAC),
e) Operand Fetch (OF),
f) Data Operation (DO),
g) Operand store (OS).