Tuliskan dan jelaskan minimal 5 jenis register dalam arsitektur CPU modern

Mikroprosesor 8086/8088 memiliki 4 register yang masing-masingnya terdiri dari 16 bit, ditambah 9 register flag. Tiga set yang menyediakan tempat register adalah General Purpose Register, Pointer dan Index Register, dan Segment Register. 4 Jenis kelompok register tersebut sebagai berikut:

Tuliskan dan jelaskan minimal 5 jenis register dalam arsitektur CPU modern


1. General Purpose Register

2. Pointer dan Index Register

3. Register Segment

4. Flag Register

1.        General Purpose Register

Fungsi: Sebagai akumulator dan berhubungan dengan jenis-jenis operasi khusus seperti Aritmetika, In/Out, Shift,Logic, Rotate, dan operasi desimal berkode biner.

Fungsi: Sebagai register base untuk mereferensi alamat memori. Operasi yang dapat dilakukan adalah Rotate, Logic, Shift, dan Aritmetika.

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.

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
  • 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.

  • 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.

  • Register SI dan DI (Source Index dan Destination index, 16 bit)

Fungsi: Menyimpan nilai-nilai offset dalam segment data memori pada saat bersangkutan.

  • 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)

  • Register CS (Code Segment)

Fungsi: Mencatat segment dari kode program atau instruksi, register CS berpasangan dengan register IP (Instruction Pointer) dalam format CS:IP.

  • Register DS (Data Segment)

Fungsi: Menyimpan alamat dari segment dimana data terletak.

  • Register SS (Stack Segment)

Fungsi: Menyimpan alamat segment memori yang dipergunakan sebagai stack.

  •  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:

Tugas: Dimana sebuah carry out atau borrow, jika hasilnya adalah bit tertinggi (nilai 1).

Tugas: Menset (nilai 1), jika instruksi menghasilkan sebuah angka genap (even parity).

Tugas: Digunakan oleh instruksi pegaturan desimal.

Tugas: Menset (nilai 1), jika hasil instruksi adalah 0.

Tugas: Menset (nilai 1), jika hasilnya adalah negatif dan bernilai 0 jika positif. Kontrol Flag terdiri dari:

Tugas: Menunjukkan sebuah operasi yang tidak benar yaitu merubah hasil daripada tanda bit..

  • IF (Interrupt Enable Flag)

Tugas: Jika diset (nilai 1) dapat melakukan operasi interupsi dan sebaliknya bila bernilai 0, maka interupsi

tidak dapat dilakukan.

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.

Tugas: Ditempatkan dalam single step mode untuk keperluan debug.


Page 2

Adalah.Co.Id – Register adalah sebuah tempat penampungan sementara untuk data-data yang akan diolah oleh prosesor, dan dibentuk oleh 16 titik elektronis di dalam chip mikroprosessor itu sendiri. Dengan lokasi penyimpanan data sementara ini, pemrosesan dapat dilakukan jauh lebih cepat daripada jika data harus diambil langsung dari lokasi penyimpanan.

Register merupakan alat penyimpanan kecil yang mempunyai kecepatan akses cukup tinggi, yang digunakan untuk menyimpan data dan atau instruksi yang sedang diproses. Memori ini bersifat sementara dan biasanya digunakan untuk menyimpan data selama pemrosesan atau data untuk diproses lebih lanjut.

Demikian pula, register ini dapat dibandingkan dengan memori otak dengan secara manual memproses data sehingga otak dapat dibandingkan dengan memori yang mengandung CPU, pengontrol yang mengontrol semua aktivitas fisik dan memiliki ruang untuk perhitungan dan perbandingan logis.

Register juga bisa disebut variasi bahasa berdasarkan ranahnya (domain). Dengan kata lain, register merupakan variasi bahasa yang digunakan berdasarkan bidang penggunaan, gaya, tingkat keformalan, dan media penggunaannya, misalnya bahasa dalam bidang olahraga, sosial media, televisi, jurnalistik, radio, dan lain sebagainya.

Tuliskan dan jelaskan minimal 5 jenis register dalam arsitektur CPU modern
Register Adalah

Register antara satu bidang dan lainnya karena itu memiliki ekspresi kata yang kontras (Chaer, 1995: 90). Bahasa komentator radio dan sepak bola tentu sangat berbeda. Ada konsep tertentu yang hanya di satu bidang dan tidak di bidang lain. Selain istilah, ada juga intonasi nada yang berbeda. Misalnya, jangkar register di televisi dengan komentator sepak bola.

Register-register untuk Komunikasi dengan Unit-unit Diluar CPU

1. MAR (Memory Address Register)

Digunakan untuk menyatakan alamat lokasi operand dalam memori yang akan dibaca atau ditulis oleh CPU

2. MBR / MDR (Memory Buffer atau Data Register)

Merupakan tempat penyimpanan (sementara) data yang baru saja dibaca atau data yang akan dituliskan ke memori

3. PC (Program Counter)

Digunakan untuk menyatakan alamat lokasi instruksi yang akan dibaca oleh CPU dari memori.

Jenis-jenis Register

1. Register Data

Digunakan untuk menyimpan angka-angka dalam bilangan bulat (integer)

2. Register Alamat

Digunakan untuk menyimpan alamat-alamat memori dan juga untuk mengakses memori

3. Register General Purpose

Digunakan untuk menyimpan angka dan alamat secara sekaligus

4. Register Floating Point

Digunakan untuk mnyimpan angka-angka bilangan titik mengambang (floating point)

5. Register Konstanta (constant register)

Digunakan untuk menyimpan angka-angka tetap yang hanya dapat dibaca (bersifat read – only)

6. Register Vektor

Digunakan untuk menyimpan hasil pemprosesan vektor yang dilakukan oleh prosesor SIMD)

7. Register Special Purpose

Digunakan untuk menyimpan data internal prosesor, seperti halnya instruction pointer, stack pointer, dan status

8. Register yang Spesifik Terhadap Model Mesin (mechine specific register)

Digunakan untuk menyimpan data internal prosesor atau pengaturan yang berkaitan dengan prosesor itu sendiri.

General Purpose Register (Scratch Pad Register / Memori Serbaguna)

General purpose register merupakan register yang memiliki kapasitas penyimpanan sebesar 16 bit yang kemudian dibagi lagi menjadi register low dan register high, yang masing-masing bagiannya memiliki kapasitas penyimpanan sebesar 8 bit. Dalam general purpose register, terdapat 4 bagian register lagi, yang memiliki fungsi yang berbeda, yaitu:

1. Register AX (AH + AL) / Accumulator Register

Register AX adalah register untuk menyimpan dan membaca data yang terkait dengan operasi aritmatika termasuk perkalian, pembagian, penambahan dan pengurangan (KABATAKU). Karena setiap register tujuan umum memiliki register tinggi dan rendah, register rendah adalah AL dan AH tinggi untuk register AX.

2. Register BX (BH + BL) / Base Register

Register BX adalah salah satu dari dua mode pengalamatan basis register yang memungkinkan data ditulis atau diambil langsung dari atau ke memori. Secara umum, register BX bertindak sebagai lokasi untuk menyimpan alamat offset data dalam memori.

3. Register CX (CH + CL) / Counter Register

Register CX adalah memori di mana jumlah lompatan yang dibuat oleh mikroprosesor disimpan dalam loop. Secara umum, ada beberapa fungsi register CX, yaitu:

  1. Melakukan operasi penghitungan untuk operasi loop
  2. Melakukan operasi penghitungan untuk operasi pemindahan dan rotasi
  3. Melakukan operasi penghitungan pada operasi string

4. Register DX (DH + DL) / Data Register

Register DX adalah register serbaguna dengan beberapa fungsi utama yang berguna untuk mendukung register AX, termasuk dukungan untuk register AX ketika melakukan operasi aritmatika, terutama untuk operasi penggandaan dan pembagian 16 atau 32 bit data, dan Menyimpan data heksadesimal dalam Kode ASCII dalam register DL, yang ditampilkan pada layar monitor dan juga menyimpan dan menampilkan nomor port dalam mode port.

Segment Register

Segment register merupakan register yang berfungsi untuk membuat alamat memori untuk data yang akan disimpan kedalam register, sehingga mudah dalam pencarian dan pengaksesan data. Dalam mode operasi nyata, register segmen berada dalam posisi pengoperasian mode perlindungan, sehingga data yang akan disimpan benar-benar terlindungi. Ada 4 bagian lebih kecil di register segmen, masing-masing memiliki fungsi yang berbeda, yaitu:

  1. Segmen kode (register CS) digunakan untuk menampilkan alamat perintah selanjutnya pada mikroprosesor.
  2. Segmen data (register DS) yang memiliki fungsi menampilkan alamat data dalam register transmisi.
  3. Segmen tumpukan (register SS) yang memiliki fungsi panggilan (CALL) dan meneruskan operasi stack ke program utama (RET).
  4. Segmen tambahan (register ES) sebagai memori tambahan untuk operasi string pada CX dalam register tujuan umum.

Pointer Register

Pointer register merupakan register yang berfungsi sebagai memori penyimpanan offset dari suatu relative address. Register pointer dapat menunjukkan alamat data di lokasi memori dan digunakan saat mentransfer data ke dan dari memori, operasi penumpukan menjadi PUSH atau POP, dan alamat perintah pada mikroprosesor. Ada tiga jenis register pointer:

  1. Register IP (Instruction Pointer) yang menampilkan alamat perintah atau baris perintah dalam program.
  2. Register SP (Stack Pointer), yang menunjukkan byte terakhir dalam operasi susun.
  3. Register BP (Base Pointer), yang memiliki fungsi kurang lebih sama dengan register BX, membaca dan menulis data langsung dari atau ke memori.

Index register merupakan register yang berfungsi untuk melakukan operasi (membaca dan menulis) string. Terdapat dua register dalam index register, yaitu Source (lokasi sumber) Index dan Destination (tujuan) Index.

Flag Register

Flag register berfungsi sebagai penanda yang menunjukkan status atau keadaan dari suatu mikroprosessor. Bit-bit data pada flag yang berfungsi sebagai penanda status, akan mengalami perubahan tergantung kepada proses yang sedang berlangsung. Adapun nilai dan kode dari bit pada flag register yaitu :

  1. C (carry) dengan nilai : 1 berarti ada carry out dan 0 berarti tidak ada carry out
  2. P (Parity) dengan nilai 1 berarti paritas genap 0 berarti paritas ganjil
  3. A (auxiliary carry) dengan nilai 1 berarti ada carry dan 0 berarti tidak ada carry
  4. Z (zero) dengan nilai 1 berarti hasilnya nol dan 0 berarti hasilnya bukan nol
  5. S (sign) dengan nilai 1 berarti hasilnya negatif dan 0 berarti hasilnya positif
  6. T (trap) bila di-set 1 dimungkinkan melakukan debugging.
  7. I (interrupt) dengan nilai 1 berarti pin INTR enable dan 0 berarti pin INTR disable
  8. D (direction) dengan nilai 1 berarti cacahan turun dan 0 berarti cacahan naik
  9. O (Overflow) menunjukkan adanya kelebihan kapasitas atau tidak
  10. IOPL (input-output privilege level) untuk protected mode
  11. NT (nested task) sebagai tanda indikasi dari penggabungan dengan operasi lain.
  12. RF (resume) sebagai tanda untuk debugging
  13. VF (Virtual mode) sebagai tanda untuk operasi virtual pada protected mode
  14. AC (alignment check) sebagai tanda untuk data word di alamati ke memori.

Sekian artikel tentang Register ini semoga bisa memberi manfaat bagi kita semua, Terimakasih.

Baca Juga Artikel Lainnya >>>