Friday, March 6, 2015

Register

Register merupakan sebagian memori dari mikroprosesor yang dapat diakses dengan kecepatan yang sangat tinggi.

4 Jenis kelompok register :

1. General Purpose Register


2. Pointer dan Index Register

3. Register Segment

4. Flag Register

General Puspose Register
1.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.

2.Base Register BX

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

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

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

Pointer dan Index Register


1.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.
2. 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.

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

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

Segment Register

  1. 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.
  2. 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 Flag


Flags register ini mampu memcatat sampai 16 keadaan.Mikroprosesor 8086/8088 mempunyai Status Flag 1 bit dan 4 Kontrol Flag yang dikonfigurasikan dalam register 16 bit. Flag yang terdapat di mikroprosesor 8088 keatas yaitu:
CF (Carry Flag)
Tugas: Jika terjadi borrow pada operasi pengurangan atau carry pada penjumlahan, bit ini akan bernilai 1.
PF (Parity Flag)
Tugas: Menset (nilai 1), jika instruksi menghasilkan sebuah angka genap (even parity)
AF (Auxiliary Flag)
Tugas: Digunakan oleh instruksi pegaturan desimal.

ZF(Zero Flag)
Tugas: Menset (nilai 1), jika hasil instruksi adalah 0.
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.
SF (Sign Flag)
Tugas: Menset (nilai 1), jika hasilnya adalah negatif dan bernilai 0 jika positif

OF (Overflow Flag)
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

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.

TF (Trap Flag)
Tugas: Ditempatkan dalam single step mode untuk keperluan debug.
NT (Nested Task)
Digunakan pada prosesor 80286 dan 80386 untuk menjaga jalannya interupsi yang terjadi secara beruntun.™ 
IOPL (I/O Protection level)
Flag ini terdiri atas 2 bit dan digunakan pada prosesor 80286 dan 80386 untuk mode proteksi.

 sumber referensi


semakin besar frekuensi xtal maka semkin cepat pemprosesannya


No comments:

Post a Comment

Soal dan Jawaban Test Glints Academy Career Exploration

Berikut beberapa contoh soal dasar tentang HTML dan CSS yang mungkin anda temui di Glints Career Exploration. Semoga Bermanfaat. Jawaba...