Papp Róbert

SZámítógép ARchitektúra jegyzet 2005/I.

(Bartók Tamás / Szerda 16:00-17:00)
9. gyakorlat - 2005. 11. 16.

Eljárások

Név	PROC
	...
	RET;POP IP
Név	ENDP
CALL Név	;=PUSH IP, "JMP Név"

Paraméter átadása

I. Regiszteren keresztül

;AX, BX-et módosítja
Szoroz PROC
	MUL BX
	RET
Szoroz ENDP

II. DS-ben:

adat SEGMENT
	a dw ?
	b dw ?
	eredm dd ?
adat ENDS
...
Szoroz PROC
	PUSH AX BX DX
	MOV AX,a
	MOV BX,b
	MUL BX
	MOV eredm, AX
	MOV eredm+2, DX
	POP DX BX AX
	RET
Szoroz ENDP

III. Stack relatív címzéssel

Szoroz PROC
;eredmény (DX:CX)
	PUSH AX BX BP
	MOV BP, SP
	MOV AX, [BP+10]	; SS:	(5*2 byte = 10)
	MOV BX, [BP+8]	; SS:	(4*2 byte = 8)
	MUL BX
	MOV CX, AX	; helyette lehetne: MOV [BP+8], DX és MOV [BP+10], AX
	POP BP BX AX
	RET
Szoroz ENDP
© All rights reserved by TWiStEr & PaulikR. Köszönöm -[PaulikR]-nek a segítséget!