Salam sobat, selamat datang di blog saya. saya kali ini posting mengenai Register dan Fungsi-fungsinya, selamat membaca dan jangan lupa komentar.
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:
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:
1. General Purpose Register
2. Pointer dan Index Register
3. Register Segment
4. Flag Register
1. General Purpose Register
·
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.
·
Base Register BX
Fungsi: Sebagai register base untuk mereferensi
alamat memori. Operasi yang dapat dilakukan adalah Rotate, Logic, Shift, dan
Aritmetika.
·
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.
·
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
·
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:
·
CF (Carry Flag)
Tugas: Dimana sebuah carry out atau borrow, jika hasilnya adalah
bit tertinggi (nilai 1).
·
PF (Parity Flag)
Tugas: Menset (nilai 1), jika instruksi menghasilkan sebuah angka
genap (even parity).
·
AF (Auxiliary Flag)
·
ZF(Zero Flag)
Tugas: Menset (nilai 1), jika hasil instruksi adalah 0.
·
SF (Sign Flag)
Tugas: Menset (nilai 1), jika hasilnya adalah negatif dan bernilai
0 jika positif. Kontrol Flag terdiri dari:
·
OF (Overflow Flag)
·
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.
SEMOGA BERMANFAAT
sumber : https://aris83.wordpress.com/2013/05/18/jenis-jenis-register-dan-fungsinya-pada-komponen/
SEMOGA BERMANFAAT
sumber : https://aris83.wordpress.com/2013/05/18/jenis-jenis-register-dan-fungsinya-pada-komponen/
Tidak ada komentar:
Posting Komentar