Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

REGISTER Oleh : Oman Somantri, S.Kom

Presentasi serupa


Presentasi berjudul: "REGISTER Oleh : Oman Somantri, S.Kom"— Transcript presentasi:

1 REGISTER Oleh : Oman Somantri, S.Kom
POLITEKNIK HB D3 TEKNIK KOMPUTER

2 Gbr. Register Mikroprocessor Intel 8086
General Purpose Register Pointer Register Indeks Register Flag Register Segmen Register 16 bit Gbr. Register Mikroprocessor Intel 8086

3 General Purpose Register (Register Serbaguna)
Merupakan register yang dapat digunakan untuk menyimpan data yang akan diolah atau hasil suatu operasi oleh ALU. 8086 memiliki 8 buah register serba guna yakni: AH, AL, BH, BL, CH, CL, DH, DL. Register-register ini juga dapat digunakan secara berpasangan sehingga membentuk register 16 bit, yaitu; AX (gabungan dari AH dan AL), BX, CX, dan DX. AX biasanya digunakan untuk menyimpan hasil operasi, sehingga disebut akumulator. CX (count) biasanya digunakan untuk pencacah untuk keperluan perulangan (loop), sehingga disebut Counter. BX (base) dan DX (data) biasanya digunakan sebagai penyimpan alamat offset dari alamat data di memori (dengan segmen DS).

4 General cont….

5 General cont…. AX: merupakan akumulator, sering digunakan untuk menyimpan hasil sementara setelah operasi aritmetika dan logika. BX: sering digunakan sebagai register base untuk menyimpan address base data yang terletak didalam memori dan juga address base tabel data. CX: dapat digunakan sebagai register count. DX: dapat digunakan sebagai register data.

6 Flag Register 8086 memiliki flag register dengan panjang16-bit. Dari 16-bit itu terdapat 9 bendera yang aktif. Dari 9 bendera yang aktif, 6 bendera diantaranya (bendera kondisi) digunakan untuk menunjukkan kondisi-kondisi (status) yang dihasilkan oleh pelaksanaan instruksi yakni bendera CF (carry flag), PF (parity flag), AF (auxiliary carry flag), ZF (zero flag), SF (sign flag), dan OF (overflow flag). Sedangkan 3 bendera lainnya (bendera kontrol) digunakan untuk mengendalikan beberapa operasi prosesor.

7 Flag-flag kontrol ini berbeda dengan 6 bendera kondisi dalam hal cara set dan reset-nya.
Keenam flag kondisi diset dan direset oleh EU, berdasarkan hasil operasi-operasi aritmetika atau logika, sedangkan 3 flag kontrol diset dan direset oleh instruksi-instruksi khusus yang ada pada program. Flag itu adalah Single Step Trap Flag (TF), Interrupt Flag (IF), dan String Direction Flag (DF).

8

9 Carry Flag Bendera carry akan diset ( CF=1 ), jika operasi ALU menghasilkan carry. Contoh:

10 Parity Flag Bendera paritas (parity flag) akan diset (PF=1), jika pelaksanaan perintah oleh ALU menghasilkan jumlah bit 1 genap dan reset (PF=0) jika jumlah bit 1 ganjil. Contoh: Output ALU= , maka PF= 1 Output ALU= , maka PF= 0

11 Auxiliary Carry Flag Bendera AF (auxiliary carry flag) akan diset (AF=1), jika dalam penjumlahan, bit ke 3 menghasilkan carry. Contoh:

12 Contoh lain : Bendera Zero akan diset (ZF=1), jika operasi ALU memberikan hasil 0. Bendera Sign akan diset (SF=1), jika pelaksanaan perintah oleh ALU menghasilkan bilangan negatif.

13 Overflow Flag Bendera OF (Overflow Flag) akan set jika terjadi overflow yakni jumlah bit hasil operasi lebih besar dari lebar akumulator. Contoh: Jika suatu operasi menghasilkan bilangan dengan panjang 17-bit, sedangkan akumulator 8086 hanya16-bit, maka bendera OF akan set.

14 Bendera TF (Trap Flag) digunakan pada mode operasi langkah tunggal (single step atau trace). Jika bendera ini set, maka pelaksanaan instruksi akan dilakukan step demi step. Bendera IF (Interupt Flag) digunakan untuk mengijinkan interupsi dari program. Bendera DF (String Direction Flag) digunakan pada operasi string.

15 Register Antrian Pada saat EU mendekode atau melaksanakan suatu instruksi, ia tidak memerlukan menggunakan bus sehingga dapat digunakan oleh BIU untuk mengambil 6 byte instruksi sebagai instruksi berikutnya yang akan dilaksanakan. Instruksi-instruksi tersebut dinamakan prefetched instruction dan oleh BIU disimpan dalam register FIFO (first-in first-out) yang disebut juga register antrian.

16 Ketika EU siap melaksanakan instruksi berikutnya, ia dengan mudah membaca instruksi-instruksi dari register antrian dalam BIU. Jadi, ketika EU sedang melaksanakan suatu instruksi, bus dapat digunakan oleh BIU untuk menulis dan membaca memori serta mengambil instruksi berikutnya.

17 Teknologi yang memungkinkan pengambilan instruksi berikutnya sambil melaksanakan instruksi yang ada dinamakan Pipelining. Berikut ini adalah contoh perbedaan prosesor 8085 tanpa pipelining dan 8086 dengan pipelining dalam melakukan pengambilan instruksi, pelaksanaan instruksi, operasi read dan operasi write. Nampak bahwa pipelining memberikan tingkat penggunaan bus yang lebih efektif.

18 Gbr. Prosesor 8085 tanpa Pipelining dan 8086 dengan Pipelining

19 Register Segmen 8086 mampu mengalamati 220 lokasi memori, sedangkan panjang register IP (Instruction Pointer) yang dimilikinya hanya 16-bit. Untuk memperoleh 20-bit sinyal alamat, 8086 menggunakan bantuan register segmen. Gabungan antara register segmen16-bit dan IP 16-bit akan menghasilkan 20-bit sinyal alamat. 8086 memilki 4 buah register segmen yakni CS (code segment), SS (stack segment), ES (extra segment), dan DS (data segment).

20 Penempatan alamat segmen pada memori 8086

21 Contoh : Jika suatu register segmen berisi kode misalnya CS berisi 348A, maka CS dianggap memiliki alamat awal 348A0. BIU secara otomatis akan menambahkan angka 0 dibelakang isi segmen. Setiap segmen menempati 64K byte memori, dan dapat ditempatkan dimana saja didalam ruang alamat 1-M byte.

22 Register Segmen IP berisi instruksi berikutnya yang akan diambil. Alamat fisik yang dihasilkan BIU diperoleh dengan cara seperti disamping

23 Bagian alamat awal segmen yang tersimpan didalam register segmen dinamakan segment base, dalam contoh 348A adalah segment base yang tersimpan dalam CS. Isi IP merupakan offset atau jarak (displacement) antara alamat awal segmen dengan alamat fisik yang dihasilkan. Pada contoh, IP = 4214 berarti merupakan jarak antara 348A0 (alamat awal segmen) s.d. 38AB4 (alamat fisik).

24 Format penulisan alamat fisik :
segment base : offset form Contoh : Jika CS berisi 348A dan IP = 4214, akan menghasilkan alamat fisik 38AB4. Alamat fisik tersebut dapat direpresentasikan / disajikan atau ditulis dalam bentuk : CS:IP atau 348A:4214 atau CS:IP=38AB4 Berapa alamat fisik yang direpresentasikan oleh 4 370:561E, dan 7A32:0028 ?

25 Register Stack Pointer
Stack adalah bagian memori yang digunakan untuk menyimpan alamat dan data selama subprogram dilaksanakan. Jika sub program selesai dilaksanakan, isi stack dikembalikan ke lokasi semula, yakni IP dan akumulator. SP merupakan register yang berisi offset 16-bit yang menghasilkan alamat fisik teratas dari memori stack. Untuk membangkitkan alamat fisik 20-bit, SP memerlukan bantuan register SS (stack segment).

26 Contoh: jika isi SS = 5000 dan isi SP = FFE0, maka akan menghasilkan alamat fisik :
Alamat fisik tersebut dapat direpresentasikan dalam 5FFE0 (single number) atau dalam bentuk SS:SP yakni 5000:FFE0

27 Register Index & Pointer
Kecuali SP, EU pada 8086 juga memiliki register base pointer (BP)16-bit, dan juga register index SI (source index) 16-bit, dan DI (destination index) 16-bit. Walaupun BP, SI, dan DI dapat digunakan sebagai penyimpan sementara dari data seperti halnya pada register serbaguna, namun penggunaan utama mereka adalah menyediakan offset 16-bit dari data untuk suatu segmen base. Contoh: Alamat fisik data pada memori akan dibangkitkan dengan menambah isi SI dengan alamat segmen base yang direpresentasikan oleh bilangan16-bit dalam register DS.

28 SEKIAN TERIMA KASIH


Download ppt "REGISTER Oleh : Oman Somantri, S.Kom"

Presentasi serupa


Iklan oleh Google