TUGAS 4.doc
Transcript of TUGAS 4.doc
REGISTER
LAPORAN TUGAS 4
oleh
Dwi Sandhi Agustian111910201010
JURUSAN TEKNIK ELEKTROFAKULTAS TEKNIK
UNIVERSITAS JEMBER2014
R E G I S T E R
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. Umumnya nilai-nilai
yang umum digunakan adalah nilai yang sedang dieksekusi dalam waktu tertentu.
Register prosesor berdiri pada tingkat tertinggi dalam hierarki memori: ini
berarti bahwa kecepatannya adalah yang paling cepat; kapasitasnya adalah paling
kecil; dan harga tiap bitnya adalah paling tinggi. Register juga digunakan sebagai
cara yang paling cepat dalam sistem komputer untuk melakukan manipulasi data.
Register umumnya diukur dengan satuan bit yang dapat ditampung olehnya,
seperti "register 8-bit", "register 16-bit", "register 32-bit", atau "register 64-bit"
dan lain-lain.
Istilah register saat ini dapat merujuk kepada kumpulan register yang dapat
diindeks secara langsung untuk melakukan input/output terhadap sebuah instruksi
yang didefinisikan oleh set instruksi. untuk istilah ini, digunakanlah kata "Register
Arsitektur". Sebagai contoh set instruksi Intel x86 mendefinisikan sekumpulan
delapan buah register dengan ukuran 32-bit, tapi CPU yang mengimplementasikan
set instruksi x86 dapat mengandung lebih dari delapan register 32-bit.
Register adalah sebagian kecil memori komputer yang dipakai untuk tempat
penampungan data dengan ketentuan bahwa data yang terdapat dalam register
dapat diproses dalam berbagai operasi dengan melihat berapa besar kemampuan
menampung register tersebut.
Register dapat dibagi dalam 5 golongan, yaitu:
1.General Purpose Register (Scratch-Pad Register), terdiri dari:
AX (AH + AL) = Accumulator Register
BX (BH + BL) = Base Register
CX (CH + CL) = Counter Register
DX (DH + DL) = Data Register
2.Segment Register
CS = Code Segment Register
DS = Data Segment Register
SS = Stack Segment Register
ES = Extra Segment Register
3.Pointer Register
IP = Instruction Pointer Register
SP = Stack Pointer Register
BP = Base Pointer Register
4. Index Register
SI = Source Index Register
DI = Destination Index Register
5.Flag Register
A. GENERAL PURPOSE REGISTER
General Purpose Register terdiri dari emapt buah (4) register yang mempunyai
kemampuan 16 bit dan dapat dibagi menjadi Register Low dan High Bits yang masing-
masing berkemampuan 8 bit.
Register AX
Register AX merupakan register aritmatik, karena register ini selalu dipakai dalam
operasi penambahan, pengurangan, perkalian dan pembagian.
Setiap register general purpose mempunyai Register Low dan Register High, maka
untuk AX register low-nya adlaah AL dan register high-nya adalah AH. Register AH
merupakan tempat menaruh nilai service number untuk beberapa Interrupt tertentu.
Register BX
Register BX adalah salah satu dari dua register base Addressing Mode yang dapat
mengambil atau menulis langsung dari/ke memori.
Register CX
Register CX merupakan suatu counter untuk meletakkan jumlah lompatan pada Loop
yang anda lakukan.
Register DX
Register DX mempunyai tiga tugas, yaitu:
Membantu AX dalam proses perkalian dan pembagian, terutama perkalian dan
pembagian 16 bit.
DX merupakan register offset dari DS
DX bertugas menunjukkan nomor port pada operasi port
B. PENGALAMATAN MEMORI DAN SEGMENT REGISTER
Bila memori yang terdapat pada komputer adalah 1 megabyte maka ruang memorinya adalah :
00000
00001
00002
00003
00004
.
.
.
FFFF9
FFFFA
FFFFB
FFFFC
FFFFD
FFFFE
FFFFF
Pengalamatan ruang memori pada gambar diatas merupakan pengalamatan
mutlak dengan kemampuan 20 bit. Sedangkan pada 8088 hanya berkemapuan 16
bit, berarti masih kekurangan 4 bit untuk menampung suatu alamat memori.
Karena hal tersebut diatas, maka dilakukan penomoran dengan dua register.
Sebuah register berisi 16 bit dihitung dari kanan dan 16 bit yang lain dari sebelah
kiri.
Register yang mengisi 16 bit dari kiri biasa disebut Register Segment dan
Register yang mengisi 16 bit dari kanan adalah Register Offset. Isi Register
Segment disebut Segment dan isi Register Offset disebut Offset.
Cara pengalamatan memori yang dilakukan komputer sering disebut
Relative Address. Contoh Relative Address dan Alamat Mutlak:
i. A123:099A
Komposisi Bit Segment 1010 0001 0010 0011 0000
Komposisi Bit Offset 0000 1001 1001 1010
Alamat Mutlak 1010 0001 1011 1100 1010
(HEXA:A1BCA)
ii. 5674:9001
Komposisi Bit Segment 0101 0110 0111 0100 0000
Komposisi Bit Offset 1001 0000 0000 0001
Alamat Mutlak 0101 1111 0111 0100 0001 (HEXA:5F741)
Register CS
Tugas register CS yang penting adalah menunjukkan segment program
berada. Pasangan register ini adalah register IP.
Register DS dan SS
Tugas register DS dan SS adalah menunjukkan segmen dari segment data
dan segment stack. Pasangan dari register DS adalah DX dan register SS
adalah SP.
Register ES
Register ini tidak mempunyai tugas, namun berguna untuk pemrograman
pada saat melakukan operasi ke segment lain.
C. POINTER REGISTER
Pointer Register bertugas untuk menyimpan offset dari relative address.
Register IP
Pasangan register IP adalah register CS yang merupakan register terpenting
untuk menunjukkan baris perintah program. Pada pertama program
dijalankan register ini akan langsung menunjuk pada awal program.
Register SP
Pasangan register SP adalah register SS yang digunakan untuk operasi
stack. Pada saat program pertama dijalankan register ini akan menunjuk
pada byte terakhir stack.
Register BP
Register BP mempunyai fungsi yang sama dengan register BX yaitu dapat
menulis dan membaca ke atau dari memori secara langsung.
Perbedaannya adalah BX menulis dan membaca dengan segment SS (Stack
Segment).
Register BP digunakan juga dalam komunikasi anatara bahasa komputer,
seperti PASCAL dengan Assembler ataupun Turbo C dengan Assembler.
D. INDEX REGISTER
Index Register terdiri dari dua register yaitu register DI dan SI, dimana
kedua register ini merupakan register yang dipakai untuk melakukan Operasi
String. Kedua register ini sering digunakan untuk menulis dan membaca ke atau
dari memori seperti BX dan BP.
E. FLAG REGISTER
X X X X O D I T S Z X A X P X C
Flag Bits :
O = Overflow Flag
D = Direction Flag
I = Interrupt Flag
T = Trap Flag
S = Sign Flag
Z = Zero Flag
A = Auxiliary Carry Flag
P = Parity Flag
C = Carry Flag
X = Reserved (kosong)
Flag register ini merupakan suatu komposisi register 16 bit dengan ketentuan
seperti gambar diatas, dimana komposisi bitnya dapat mengecek apakah sesuatu
berfungsi atau tidak.