Ìîæíî èçâëå÷ü òî, ÷òî
PAGE ,132
TITLE Ôèã. 4.7 Îïåðàöèè ñî ñòåêîì
0000 CODE SEGMENT
ASSUME CS:CODE,DS:CODE
0000 EXWORD LABEL WORD
0000 50 PUSH AX ; Ïîìåñòèòü ðåãèñòð â ñòåê
0001 56 PUSH SI
0002 0E PUSH CS ; Ìîæíî ïîìåñòèòü â ñòåê ñåãìåíòíûé ðåãèñòð
0003 FF 36 0000 R PUSH EXWORD ; Ìîæíî òàêæå ïîìåñòèòü â ñòåê ÿ÷åéêó ïàìÿòè
0007 8F 06 0000 R POP EXWORD ; Ìîæíî èçâëå÷ü òî, ÷òî â ïîìåùåíî â ñòåê
000B 07 POP ES ; Ìîæíî èçâëå÷ü â äðóãîå ìåñòî
000C 5F POP DI
000D 5B POP BX
000E 9C PUSHF ; Äðóãàÿ ìíåìîíèêà äëÿ ôëàãîâ
000F 9D POPF
;----- Ïðèìåð, äåìîíñòðèðóþùèé ïåðåäà÷ó ïàðàìåòðîâ
0010 50 PUSH AX
0011 53 PUSH BX
0012 51 PUSH CX
0013 52 PUSH DX
0014 E8 0017 R CALL SUBROUTINE ; Ïåðåäà÷à óïðàâëåíèÿ
; ... ; Ïðîäîëæåíèå ïðîãðàììû
0017 SUBROUTINE PROC NEAR
0017 8B EC MOV BP, SP ; Çàíåñåíèå â BP àäðåñà ñòåêà
0019 8B 46 02 MOV AX, [BP+2] ; Âûáîðêà ïîñëåäíåãî ïàðàìåòðà (DX)
001C 8B 5E 04 MOV BX, [BP+4] ; Âûáîðêà òðåòüåãî ïàðàìåòðà (CX)
Ñîäåðæàíèå Íàçàä Âïåðåä