Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Arsitektur Perangkat Lunak 8086
Di dalam Mikroprosesor 8086 terdapat lima kelompok register yaitu General Purpose register (AX, BX, CX, DX), register Pointer (SP, BP, IP), register index (SI, DI), register segment (ES, CS, SS, DS) dan register status flag. Adapun secara blok bagian dari register-register tersebut dapat digambarkan sebagai berikut : NEXT
2
Register dalam Mikroprosesor 8086
NEXT
3
Register AX (Accumulator)
Register Umum Register AX (Accumulator) Nama lain untuk register ini adalah akumulator. Register ini senantiasa dipakai untuk operasi perkalian dan pembagian, dan mungkin adalah register yang paling efisien untuk operasi aritmatika, logika dan pemindahan data. Register BX (Base) Sifat khusus register BX adalah kemampuan untuk menunjuk lokasi memori melalui perintah tidak langsung (misal, mov al,[bx]). Nilai default untuk penunjukkan lokasi memori melalui register BX adalah relatif terhadap register DS. NEXT
4
Register CX (Counter) Kegunaan khusus register CX adalah sebagai pencacahan untuk program yang melakukan looping. Register DX (Data) Register ini adalah satu-satunya register yang dapat mencatat lokasi I/O untuk transfer data ke dan dari lokasi I/O Di samping kemampuan ini, register DX juga dipakai untuk proses perkalian dan pembagian 32 bit. NEXT
5
Register SI (Source Index)
Register Index Register SI (Source Index) Kemampuan register ini hampir sama dengan register BX, namun melalui perintah khusus register ini dapat berbuat lebih banyak dibandingkan dengan register BX. Register DI (Destination Index) Kegunaan register ini hampir sama dengan register SI, perbedaannya adalah SI untuk indeks pengalamatan sumber (source) sedangkan DI untuk indeks pengalamatan tujuan (destination). NEXT
6
Register BP (Base Pointer)
Register Pointer Register BP (Base Pointer) Fungsi register ini hampir sama dengan register BX, SI, dan DI. Namun, tidak seperti BX, SI, dan DI yang menunjukkan lokasi memori relatif terhadap DS (Data Segmen), penunjukkan register BP adalah relatif terhadap SS (Stack Pointer). Register SP (Stack Pointer) Register ini digunakan pada operasi stack. Operasi ini dapat dibayangkan sebagai tumpukan piring. Piring (dalam Mikroprosesor adalah data) terakhir diletakkan di tempat paling atas. Jika hendak diambil piring (data), maka harus diambil piring (data) yang paling atas, yang terakhir kali ditumpuk. Piring yang ditumpuk (PUSH) paling akhir, akan diambil (POP) pertama kali, ini disebut sebagai last ini first out (LIFO). NEXT
7
Register Segmen Seperti telah dijelaskan sebelumnya bahwa Mikroprosesor mampu mengakses lokasi memori sebesar 1 M byte Di dalam lokasi terdapat 4 segmen yang masing-masing segmen 64 kilo byte. Empat register segmen dalam BIU digunakan untuk menyimpan 16-bit terbesar dari alamat yang dimulai pada empat segmen memori pada saat 8086 bekerja. Keempat register segmen tersebut adalah, Code Segmen (CS), Stack Segmen (SS), Extra Segmen (ES) dan Data Segmen (DS). Gambar di bawah memperlihatkan bagaimana keempat register segmen diposisikan dalam memori pada suatu saat. NEXT
8
Peta Memori Register Segmen.
NEXT
9
Suatu register segmen digunakan untuk menyimpan 16-bit terbesar pada alamat untuk tiap-tiap segmen. Code Segmen register digunakan untuk menyimpan byte-byte kode instruksi sebagai contoh dimulai pada alamat 384A0H Stack segmen bagian dari memori yang diset untuk menympan alamat dan data pada saat sub program dieksekusi, sebagai contoh dimulai pada alamat 50000H. Extra segmen dan data segmen digunakan untuk menyimpan 16-bit terbesar pada alamat awal dari 2 memori yang digunakan untuk data, masing-masing tersimpan pada alamat 70000H dan 2FFFFH. NEXT
10
Register Flag Flag adalah flip-flop yang menunjukkan beberapa kondisi yang dihasilkan akibat pelaksanaan dari sebuah instruksi. Register flag terdiri dari 16 bit dan hanya 9 bit yang aktif dari 9 bit flag aktif digunakan untuk menunjukkan kondisi akibat pelaksanaan instruksi. Sebagai contoh carry flag (CF) akan di set ke 1 jika penambahan dua buah bilangan 16 bit menghasilkan bit lebih (carry), dan CF akan tetap 0 (no carry) jika penambahan 2 buah bilangan 16-bit tidak menghasilkan bit lebih (carry). Enam flag kondisi tersebut adalah, Carry Flag (CF), Parity Flag (PF), Auxiliary Carry Flag (AF), Zero Flag (ZF), Sign Flag (SF), dan Overflow Flag (OF). Tiga flag yang lain digunakan untuk mengontrol operasi prosesor. NEXT
11
Berbeda dengan flag kondisi, flag kontrol ini akan di set atau di reset dengan instruksi khusus. Flag kontrol tersebut adalah Trap Flag (TP), untuk menunjukkan bahwa dalam program terjadi pelaksanaan hanya satu langkah program. Interupt Flag (IF) menunjukkan dalam program akan menggunakan instruksi INT atau tidak. Untuk mengeset interupt dengan instruksi STI sedangkan untuk mereset digunakan CLI. Direction Flag (DF) menunjukkan adanya operasi string. NEXT
12
Instruction Pointer Register (IP)
Fungsi utama dari register IP ini adalah sebagai penunjuk alamat instruksi yang akan dieksekusi. Untuk keperluan tersebut register ini berpasangan dengan register code segment (CS). Seperti telah dijelaskan sebelumnya bahwa register code segment adalah register segment yang berisi byte-byte code instruksi. Dalam fungsinya sebagai penunjuk alamat instruksi pasangan CS:IP, IP menunjuk 16 bit alamat yang disebut OFFSET sedangkan CS menunjuk 16 bit disebut dengan segment. Pasangan CS:IP membentuk alamat relatif yang dapat dilihat menggunakan program debug, selanjutnya untuk memperoleh 20 bit alamat fisik (physical address) isi dari register IP harus ditambahkan kepada isi register CS. NEXT
13
Gambar di bawah menunjukkan bagaimana 16 bit alamat offset ditambahkan dengan 16 bit alamat segment untuk menghasilkan 20 bit alamat fisik. Dua buah bilangan 16 bit tidak ditambahkan secara langsung sebagai satu garis karena register CS berisi 16 bit tertinggi dari alamat dasar. Sebagai contoh jika CS berisi 348AH ini berarti menunjukkan alamat alamat 348A0H. Jika unit interface menambah offset 4214H dalam register IP ke segmen ini akan menghasilkan 20 bit alamat fisik 38AB4H. NEXT
14
Penambahan offset ke segment untuk membentuk alamat fisik.
NEXT
15
Soal : 1. Gambarkan dan jelaskan lima kelompok register dalam Mikroprosesor 8086! 2. Apa yang dimaksud dengan register umum, dan jelaskan ke empat buah register umum tersebut! 3. Gambarkan dan jelaskan peta memori register segmen! 4. Coba terangkan dengan gambar apa yang dimaksud dengan penambahan offset ke segmen untuk membentuk alamat fisik! NEXT
16
TUTUP AA TERIMA KASIH
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.