Untuk menunjukan apakah suatu bilangan bertanda atau tidak dan sebagainya menggunakan register jenis

Pada artikel ini saya akan membahas mengenai Pengertian Register, Jenis register dan Fungsi register. Dalam sebuah komputer register sangat berpengaruh karena tanpa register komputer ataupun laptop dan sejenisnya tidak akan dapat bekerja dengan cepat. Oke pada paragraph dibawah akan diulas lebih detail mengenai Pengertian Register adalah?, Jenis Register adalah?, Fungsi Register adalah?

1. General Purpose Register

2. Pointer

3. Index Register

4. Register Segment

5. Flag Register

General Purpose Register [Register Serbaguna]

Register untuk keperluan umum yang terdiri atas :

  • Register AX [Accumulator register]

Berfungsi sebagai tempat sementara hasil suatu operasi  

  • berfungsi sebagai tempat Sementara hasil suatu operasi arithmetika atau logika [AL, AH, AX dan EAX]. 
  • berfungsi Sebagai akumulator dan berhubungan dengan jenis-jenis operasi khusus seperti Aritmetika, In/Out, Shift,Logic, Rotate, dan operasi desimal berkode biner.  
  • berfungsi untuk Memasukkan nomor layanan interupsi, untuk keperluan pemesanan sebuah layanan interupsi [register AH].  
  • berfungsi Menyimpan bilangan yang dikalikan [reg AL, AX, EAX] dan setengan bagian terkecil [LSB] dari hasil perkalian [register DX-AX dan EDX-EAX].  
  • dan Menyimpan setengah bagian terkecil[LSB] sebuah bilangan dibagi [DX-AX dan EDX-EAX] dan hasil bagi [AL, AX, EAX].

  • Register BX [Base Register] 

Base register adalah register untuk menyimpan alamat offset data yang terletak di memori [BL, BH, BX dan EBX]

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

  • Register CX [Counter Register]
Counter register adalah register serbaguna yang berfungsi sebagai:
  • Pencacah untuk operasi loop [CX dan ECX]
  • Pencacah untuk operasi shift dan rotate [CL]
  • Pencacah [counter] untuk operasi string [CX]

  • Register DX [Data register]
  • Data register adalah register serbaguna yang berfungsi sebagai :
  • Penyimpan hasil perkalian 16 bit [DX-AX] dan 32 bit [EDX-EAX].
  • Penyimpan hasil pembagian [DX-AX dan EDX-EAX]
  • Penyimpan data hexadesimal [kode ASCII] di reg DL untuk dicetak di layar monitor.

Pointer Register


Pointer Register untuk menunjukkan alamat sebuah data di lokasi memori, dipakai saat operasi perpindahan data [dari/ke memori], operasi stack [PUSH/POP] dan penunjukkan alamat suatu instruksi. Berikut adalah macam-macam pointer register: SP [Stack Pointer] dan ESP, BP [Base Pointer] dan IP [Instruction Pointer].

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

Index Register

Index Register sama dengan pointer register, sering digunakan untuk menunjukkan alamat sebuah data di lokasi memori pada operasi string. Macam-macam register Index adalah : SI [Source Index], DI [Destination Index].

  • Register SI dan DI [Source Index dan Destination index, 16 bit]
Fungsi: Menyimpan nilai-nilai offset dalam segment data memori pada saat bersangkutan.

Segment Register

Segment register membentuk alamat memori untuk data. Pada operasi real mode suatu segment register akan berbeda dengan segment register pada operasi protected mode. Yang termasuk ke dalam segment register antara lain :

  • Code segment -> untuk menunjukkan alamt instruksi berikutnya, Mencatat segment dari kode program atau instruksi, register CS berpasangan dengan register IP [Instruction Pointer] dalam format CS:IP.
  • Data segment -> untuk menunjukkan alamat data pada transfer register, Menyimpan alamat dari segment dimana data terletak.
  • Extra segment -> register tambahan untuk operasi string, Menyimpan alamat segment tambahan, misalnya alamat display, alamat sistem operasi, dan sebagainya.
  • Stack segment -> dengan SP u/ menunjukkan stack dan memanggil suatu prosedur [CALL] dan mengarah ke program utama [RET], Menyimpan alamat segment memori yang dipergunakan sebagai stack.
  • FS dan GS register -> register tambahan u/ segmen memori yang besar.

Flag Register

Flag Register berfungsi untuk menunjukkan status [keadaan] sesaat dari mikroprosessor.

Bit-bit pada flag akan mengalami perubahan, tergantung proses yang baru saja berlangsung. Adapun kode bit yaitu sebagai berikut :

  • C [carry] -> 1=ada carry out 0= tdk ada carry out
  •  P [Parity] -> 1=paritas genap 0= paritas ganjil
  • A [auxxiliary carry] -> 1=ada carry 0=tdk ada carry
  •  Z [zero] -> 1=hasilnya nol 0=hasilnya bukan nol
  •  S [sign] -> 1=hasilnya negatif 0=hasilnya positif
  •  T [trap] -> bila diset 1 dimungkinkan melakukan debugging.
  •   I [interrupt] -> 1= pin INTR enable 0=pin INTR disable
  • D [direction] -> 1=cacahan turun 0=cacahan naik
  •  [Overflow] -> menunjukkan adanya kelebihan kapasitas atau tidak
  •  IOPL [input-output privalege level] -> untuk protected mode
  •  NT [nested task] -> indikasi dari penggabungan dengan operasi lain.
  •  RF [resume] -> untuk debugging
  • VF [Virtual mode] -> untuk operasi virtual pada protected mode
  • AC [alignment check] -> untuk data word dialamati ke memori        

Register merupakan tempat menyimpan data sementara yang berada dalam C

Register terdiri atas 5jenis yaitu : General Purpose Register, Pointer Register, Index Register, Segment Register, Flag Register.

Fungsi setiap register bermacam-macam sesuai peruntukannya yang telah diatur oleh pembuat mikroprosesor.

Page 2

REGISTER PADA SISTEM OPERASI

Dalam pemrograman dengan bahasa Assembly, mau tidak mau anda harus berhubungan dengan apa yang dinamakan sebagai Register. Lalu apakah yang dimaksudkan dengan register itu sebenarnya ?Register merupakan sebagian memori dari mikroprosesor yang dapat diakses dengan kecepatan yang sangat tinggi. Dalam melakukan pekerjaannya mikroprosesor selalu menggunakan register-register sebagai perantaranya, jadi register dapat diibaratkan sebagai kaki dan tangannya mikroprosesor.

JENIS-JENIS REGISTER

Register yang digunakan oleh mikroprosesor dibagi menjadi 5 bagian dengan tugasnya yang berbeda-beda pula, yaitu :

1. Segmen Register.

Register yang termasuk dalam kelompok ini terdiri atas register CS, DS, ES dan SS yang masing-masingnya merupakan register 16 bit. Register-register dalam kelompok ini secara umum digunakan untuk menunjukkan alamat dari suatu segmen.

  • Register CS [Code Segment] digunakan untuk menunjukkan tempat dari segmen yang sedang aktif, sedangkan register SS [Stack Segment] menunjukkan letak dari segmen yang digunakan oleh stack. Kedua register ini sebaiknya tidak sembarang diubah karena akan menyebabkan kekacauan pada program anda nantinya.
  • Register DS [Data Segment] biasanya digunakan untuk menunjukkan tempat segmen dimana data-data pada program disimpan. Umumnya isi dari register ini tidak perlu diubah kecuali pada program residen.
  • Register ES [Extra Segment], sesuai dengan namanya adalah suatu register bonus yang tidak mempunyai suatu tugas khusus. Register ES ini biasanya digunakan untuk menunjukkan suatu alamat di memory, misalkan alamat memory video. Pada prosesor 80386 terdapat tambahan register segment 16 bit, yaitu FS dan GS .

2. Pointer dan Index Register.

Register yang termasuk dalam kelompok ini adalah register SP, BP, SI dan DI yang masing-masing terdiri atas 16 bit. Register- register dalam kelompok ini secara umum digunakan sebagai penunjuk atau pointer terhadap suatu lokasi di memory.

  • Register SP [Stack Pointer] yang berpasangan dengan register segment SS [SS:SP] digunakan untuk mununjukkan alamat dari stack, sedangkan register BP [Base Pointer] yang berpasangan dengan register SS [SS:BP] mencatat suatu alamat di memory tempat data.
  • Register SI [Source Index] dan register DI [Destination Index] biasanya digunakan pada operasi string dengan mengakses secara langsung pada alamat di memory yang ditunjukkan oleh kedua register ini. Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu ESP, EBP, ESI dan EDI.

3. General Purpose Register.

Register yang termasuk dalam kelompok ini adalah register AX, BX, CX dan DX yang masing-masing terdiri atas 16 bit. Register- register 16 bit dari kelompok ini mempunyai suatu ciri khas, yaitu dapat dipisah menjadi 2 bagian dimana masing-masing bagian terdiri atas 8 bit, seperti pada gambar 4.1. Akhiran H menunjukkan High sedangkan akhiran L menunjukkan Low.

Secara umum register-register dalam kelompok ini dapat digunakan untuk berbagai keperluan, walaupun demikian ada pula penggunaan khusus dari masing-masing register ini yaitu :

  • Register AX, secara khusus digunakan pada operasi aritmatika terutama dalam operasi pembagian dan pengurangan.
  • Register BX, biasanya digunakan untuk menunjukkan suatu alamat offset dari suatu segmen.
  • Register CX, digunakan secara khusus pada operasi looping dimana register ini menentukan berapa banyaknya looping yang akan terjadi.
  • Register DX, digunakan untuk menampung sisa hasil pembagian 16 bit. Pada prosesor 80386 terdapat tambahan register 32 bit, yaitu EAX,EBX,ECX dan EDX.

4. Index Pointer Register

Register IP berpasangan dengan CS [CS:IP] menunjukkan alamat dimemory tempat dari intruksi [perintah] selanjutnya yang akan dieksekusi. Register IP juga merupakan register 16 bit. Pada prosesor 80386 digunakan register EIP yang merupakan register 32 bit.

5. Flags Register.

Sesuai dengan namanya Flags [Bendera] register ini menunjukkan kondisi dari suatu keadaan< ya atau tidak >. Karena setiap keadaan dapat digunakan 1 bit saja, maka sesuai dengan jumlah bitnya, Flags register ini mampu memcatat sampai 16 keadaan. Adapun flag yang terdapat pada mikroprosesor 8088 keatas adalah :

  • OF Jika terjadi OverFlow pada operasi aritmatika, bit ini akan bernilai 1.
  • SF Jika digunakan bilangan bertanda bit ini akan bernilai 1
  • ZF Jika hasil operasi menghasilkan nol, bit ini akan bernilai 1.
  • CF Jika terjadi borrow pada operasi pengurangan atau carry pada penjumlahan, bit ini akan bernilai 1.

Susunan Flags Register 8088
  • PF Digunakan untuk menunjukkan paritas bilangan. Bit ini akan bernilai 1 bila bilangan yang dihasilkan merupakan bilangan genap.
  • DF Digunakan pada operasi string untuk menunjukkan arah proses.
  • IF CPU akan mengabaikan interupsi yang terjadi jika bit ini 0.
  • TF Digunakan terutama untuk Debugging, dengan operasi step by step.
  • AF Digunakan oleh operasi BCD, seperti pada perintah AAA.
  • NT Digunakan pada prosesor 80286 dan 80386 untuk menjaga jalannya interupsi yang terjadi secara beruntun.
  • IOPL Flag ini terdiri atas 2 bit dan digunakan pada prosesor 80286 dan 80386 untuk mode proteksi.

Adapun susunan dari masing-masing flag didalam flags register dapat anda lihat pada gambar diatas. Pada prosesor 80286 dan 80386 keatas terdapat beberapa tambahan pada flags register, yaitu :

  • PE Digunakan untuk mengaktifkan mode proteksi. flag ini akan bernilai 1 pada mode proteksi dan 0 pada mode real.
  • MP Digunakan bersama flag TS untuk menangani terjadinya intruksi WAIT.
  • EM Flag ini digunakan untuk mensimulasikan coprosesor 80287 atau 80387.
  • TS Flag ini tersedia pada 80286 keatas.
  • ET Flag ini digunakan untuk menentukan jenis coprosesor 80287 atau 80387.
  • RF Register ini hanya terdapat pada prosesor 80386 keatas.
  • VF Bila flag ini bernilai 1 pada saat mode proteksi, mikroprosesor akan memungkinkan dijalankannya aplikasi mode real pada mode proteksi. Register ini hanya terdapat pada 80386 keatas.

REGISTER DAN JENIS-JENIS REGISTER PADA SISTEM OPERASI 2016-01-24T12:55:00+07:00 Rating: 4.5 Diposkan Oleh: Unknown

Video yang berhubungan

Video yang berhubungan

Bài mới nhất

Chủ Đề