Selasa, 02 Desember 2014

Stack (Tumpukan)

     Posting lagi ah, ya ngga jauh - jauh dari tugas sih. Kali ini saya akan posting tentang stack. Apa sih stack itu? Ok, langsung simak aja y.

    Stack bisa diterjemahkan secara bebas sebagai "tumpukan". Stack merupakan bagian memory yang digunakan untuk menyimpan nilai dari suatu register untuk sementara. Operasi - operasi assembler yang langsung menggunakan stack misalnya PUSH, POP, PUSHF, POPF.
   
     Berikut contoh program assembly penggunaan stacks.



















     Pada perintah LEA DX,kal kita mendapatkan alamat efektif dari kal. Kemudian perintah PUSH DX akan menyimpan nilai dari register DX yang menunjuk offset "kal" ke dalam variable stacks.

Perintah MOV,09 merupakan nilai servis untuk mencetak karakter.
Perintah INT 21h untuk menampilkan ke monitor.
Perintah LEA DX,ganti untuk mendapatkan nilai efektif dari "ganti" kemudian tampilkan ke layar dengan INT 21h. Nilai dari "ganti" adalah 13,10 merupakan kode untuk ganti baris.

Perintah POP DX akan mengeluarkan nilai dari DX yang tersimpan pada stacks. Kemudian mencetak ke monitor dengan perintah INT 21h.

     Hasil dari program diatas seperti berikut.



 





    Sekian posting dari saya, semoga bermanfaat.  

Tidak ada komentar:

Posting Komentar