Hola Gente,
No se si este es el lugar mas indicado para postear esto, pero si no lo es asi, haganmelo saber.
Si alguno tiene experiencia en lenguaje assembly, podria decirme si la directiva de compilacion WORD PTR para direccionamiento indirecto, se puede usar con la memoria asignada a la pila?
Estoy haciendo este programa y al intentar compilarlo, todas las lineas que incluyen esta directiva dan error de compilacion.
Esto es raro, dado que la directiva ha compilado bien en otros casos.
El programa suma 2 numeros de 32 bits almacenados en memoria, por medio de la subrutina sum32. Se pasa uno de los numeros por referencia y el otro por valor, ambos a traves de la pila.
ORG 1000H
NUM1 DW 0101H
DW 0101H
NUM2 DW 0909H
DW 0909H
RES DW ?
DW ?
ORG 3000H
SUM32: MOV BX,SP
ADD BX,6
MOV DX, WORD PTR [BX]
ADD BX,2
MOV AX, WORD PTR [BX]
SUB BX,4
MOV CX, WORD PTR [BX]
MOV BX,CX
ADD AX, WORD PTR [BX]
ADD BX,2
ADD DX, WORD PTR [BX]
MOV BX,SP
ADD BX,2
MOV CX, WORD PTR [BX]
MOV BX,CX
MOV WORD PTR [BX],AX
ADD BX,2
MOV WORD PTR [BX],DX
RET
ORG 2000H
PUSH AX
PUSH BX
PUSH DX
PUSH CX
MOV AX,NUM1
PUSH AX
MOV AX,NUM1+2
PUSH AX
MOV AX,OFFSET NUM2
PUSH AX
CALL SUM32
POP AX
POP AX
POP AX
POP AX
POP CX
POP DX
POP BX
POP AX
HLT
END
Muchas gracias!