当前位置:编程学习 > 汇编语言 >>

请教个汇编语言问题,各位高手帮帮忙解答下,万分感谢。

题目是问设计一个分程序,当x>0,y=1 ; x=0;y=0; x<0,y=-1。设X放在XX单元,Y放在YY单元,程序如下: STACK SEGMENT STACK DW DUP 256(?) TOP LABEL WORD STACK ENDS DATA SEGMENT XX DB X YY DB Y DATA ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK START:MOV AX,DATA MOV DS,AX MOV AX,STACK MOV SS,AX LEA SP,TOP MOV AL,XX CMP AL,0 JGE NEPA MOV YY,0FFH JMP STOP NEPA: JE NEPB MOV YY,1 JMP STOP NEPB: MOV YY,0 STOP: MOV AH,4CH INT 21H CODE ENDS END SRART 我的主要问题是程序里头有分别获取堆栈段的地址给SS,栈订指针地址送给SP的代码,前前后后我也没见用到什么堆栈,程序我觉得只要定义数据段就可以了,为什么程序里还要定义256个字的堆? 谢谢各位帮忙解答了
答案:是没有用到。估计是考虑=没有堆栈编译时会被WARNING,还有可能是这个程序原来是其他程序的子程序,挪过来的时候没有进行移除。
你可以去掉。
其他:是没有用到。 调用子程序、执行终端都需要用到堆栈,以便执行完成后返回到正确的代码段 

上一个:汇编语言编程题,各位请鼎立相助
下一个:汇编中DW的解释?

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,