Presentasi sedang didownload. Silahkan tunggu

Presentasi sedang didownload. Silahkan tunggu

Stack Segment & Bahasa Assembly

Presentasi serupa


Presentasi berjudul: "Stack Segment & Bahasa Assembly"— Transcript presentasi:

1 Stack Segment & Bahasa Assembly
Triyogatama Wahyu Widodo

2 Triyogatama Wahyu Widodo
Mengenai Segmen Stack Mengapa diperlukan? Apa gunanya stack? Apa kekurangannya? Bagaimana mengakses stack? Operasi apa yang dapat dilakukan pada stack? Apa beda segmen kode dengan segmen stack? Krn tidak mungkin menjejalkan register sebanyak mungkin dan setiap program mempunyai teknik masing2 Utk menyimpan data secara temporer Aksesnya lebih lambat SS:SP dan SS:BP (untuk aplikasi khusus, terutama parameter passing pada C) PUSH/POP -> 16 bit register Arahnya: kode awalnya dr depan & increment, stack awalnya dr belakang & decrement Triyogatama Wahyu Widodo

3 Triyogatama Wahyu Widodo
Contoh Triyogatama Wahyu Widodo

4 Triyogatama Wahyu Widodo
Serba-serbi Segmen Satu alamat fisik dapat diperoleh dari beberapa alamat logik Alamat logik berputar kembali ke awal (wrap around) jika lebih dari alamat fisiknya Triyogatama Wahyu Widodo

5 Triyogatama Wahyu Widodo
Serba-serbi Segmen Triyogatama Wahyu Widodo

6 Triyogatama Wahyu Widodo
Serba-serbi Segmen Dimungkinkan 2 segmen untuk saling tindih (overlap) Triyogatama Wahyu Widodo

7 Triyogatama Wahyu Widodo
Bahasa Assembly Bahasa mesin: 0 dan 1 Rumit: ????? Banyak salah Bahasa assembly: mnemonic, singkatan (umumnya 3 karakter) Lebih mudah dipahami Mengurangi kesalahan Mnemonic  machine language: assembler Triyogatama Wahyu Widodo

8 Program dalam Bahasa Assembly
Terdiri dari baris-baris instruksi bahasa Assembly Instruksi bahasa Assembly terdiri dari mnemonic diikuti dengan nol, satu atau dua operan Operan adalah data yang diolah/dimanipulasi Mnemonic adalah perintah kepada CPU untuk melakukan sesuatu pada operan Triyogatama Wahyu Widodo

9 Struktur Bahasa Assembly
INSTRUKSI/MNEMONIC [OPERAN1[, OPERAND2]] Opsional Triyogatama Wahyu Widodo

10 Instruksi MOV(E) dan ADD
MOV destination, source ADD destination, source Triyogatama Wahyu Widodo

11 Triyogatama Wahyu Widodo
Contoh Instruksi MOV Triyogatama Wahyu Widodo

12 Triyogatama Wahyu Widodo
Fakta Instruksi MOV Menyalin, bukan memindah Dua operan harus sama ukurannya, 8 bit semua atau 16 bit semua Flag register tidak bisa menjadi operan Tidak boleh menyalin data secara langsung ke segment register (CS, DS, ES, SS)  melalui nonsegment register Tidak dapat menyalin data dengan ukuran yang lebih besar Triyogatama Wahyu Widodo

13 Triyogatama Wahyu Widodo
Contoh Instruksi ADD Triyogatama Wahyu Widodo

14 Triyogatama Wahyu Widodo
Fakta Instruksi ADD Dua operan harus sama ukurannya, 8 bit semua atau 16 bit semua Menjumlahkan dengan hasil penjumlahan menimpa data pada operan tujuan Hanya dapat dilakukan pada nonsegment register Triyogatama Wahyu Widodo

15 Triyogatama Wahyu Widodo
Pengalamatan Register: MOV AX, BX Immediate: MOV AX, 1000H Direct: MOV AX, [0200] (DS:0200) Register indirect: MOV AX, [SI] (DS:SI, DS:DI, DS:BX) Based relative: MOV AX, [BX]+10 (DS:BX, SS:BP) Indexed relative: MOV AX, [SI]+1 (DS:SI, DS:DI) Based indexed relative: MOV AX, [BX][DI]+3 (DS:BX+SI/DI, SS:BP+SI/DI) Segment override: MOV AL, ES:[BX] Triyogatama Wahyu Widodo


Download ppt "Stack Segment & Bahasa Assembly"

Presentasi serupa


Iklan oleh Google