Thông tin tài liệu:
Trong Bài giảng Lập trình Assembly Chương 5 Stack và chương trình còn nhằm trình giới về Stack, các lệnh thao tác Stack, và các ví dụ. Stack là vùng nhớ trong của bộ nhớ, tổ chức kiểu vào trước ra sau.
Nội dung trích xuất từ tài liệu:
Bài giảng Lập trình Assembly: Chương 5 - Nguyễn Văn ThọDuyTan University Assembly Language Programming I H C DUY TÂN KHOA CÔNG NGH THÔNG TIN CH NG 5 STACK & CH NG TRÌNH CON Nguy n V n Th B môn i n t vi n thông Khoa Công ngh thông tin, i h c Duy Tân – 2008 Nguyen Van Tho – Duy Tan University. STACK - Là m t vùng nh% trong b nh% - T) ch+c ki.u vào tr0%c-ra sau - Ph5n t6 cu7i cùng g8i là :;nh ngp -Do 2 thanh ghi SS và SP quBn lý - SS ch+a :Da ch; :oEn Stack - SP ch+a :;nh Stack - Khai báo :oEn ngp : .STACK Nguyen Van Tho – Duy Tan University. Ví dN : .STACK 100H Offset STACK SP 00F2h 0100h . . . 00F2h 00F4h 00F6h 00F8h 00FAh 00FCh 00FEh 0100h SP Ng n x5p r7ngDuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University. CÁC L NH THAO TÁC STACK • PUSH • POP • PUSHF • POPF Nguyen Van Tho – Duy Tan University. L NH PUSH Cú pháp : PUSH Source - Source là thanh ghi 16bit hoVc 1 tW nh% (2byte) L[nh PUSH thc hi[n công vi[c sau 1 - GiBm SP :i 2 2 - L^y n i dung c_a source :0a vào :;nh ngp Ví dN : PUSH AX ; c^t AX vào stack PUSH BX ; c^t BX vào stack Nguyen Van Tho – Duy Tan University. L NH POP Cú pháp : POP Dest - Dest là thanh ghi 16bit hoVc 1 word - L[nh PUSH thc hi[n công vi[c sau 1 - L^y n i dung :;nh ngp :0a vào dest 2 - TDuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University. L NH POP Cú pháp : PUSHF POPF Mô tB : PUSHF : PUSh thanh ghi cf POPF : POP thanh ghi cf Nguyen Van Tho – Duy Tan University. Ví dN : .STACK 100H .CODE MOV AX,9876H ; AX=9876h MOV BX,1234H ; BX=1234h PUSH AX ; c^t AX vào Stack PUSH BX ; c^t BX vào stack POP CX ; l^y n i dung :;nh stack :0a vào CX POP DX ; l^y n i dung :;nh stack :0a vào DX END Nguyen Van Tho – Duy Tan University. .STACK 100H Offset STACK MOV AX,9876H 0000h MOV BX,1234H . . 0100h SP . 00F2h 9876h AX 00F4h 00F6h 0100h BX 00F8h 00FAh CX 00FCh 00FEh DX 0100h SP Ng n x5p r7ngDuyTan University Assembly Language Programming Nguyen Van Tho – Duy Tan University. PUSP AX Offset STACK 0000h . . 00FEh SP . 00F2h 9876h AX 00F4h 00F6h ...