汇编过程调用问题

gao_jj 2007-04-24 08:50:49
将一个过程中的一段代码独立出来作为一个过程后就运行出错了
该段代码如下,调用此过程的主过程与此过程在同一模块
sub_read proc ;参数:si

READFILE 1,s.stuID[si],R_FILEHANDLE,R_ERR ;2--------
READFILE s.stuID[si],s.stuID[si+1],R_FILEHANDLE,R_ERR

READFILE 1,s.NAME1[si],R_FILEHANDLE,R_ERR
READFILE s.NAME1[si],s.NAME1[si+1],R_FILEHANDLE,R_ERR

READFILE 1,s.ASSEMBLY[si],R_FILEHANDLE,R_ERR
READFILE s.ASSEMBLY[si],s.ASSEMBLY[si+1],R_FILEHANDLE,R_ERR

READFILE 1,s.COMSTRUCT[si],R_FILEHANDLE,R_ERR
READFILE s.COMSTRUCT[si],s.COMSTRUCT[si+1],R_FILEHANDLE,R_ERR

READFILE 1,s.OS[si],R_FILEHANDLE,R_ERR
READFILE s.OS[si],s.OS[si+1],R_FILEHANDLE,R_ERR
ret
sub_read endp
...全文
202 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zara 2007-04-25
  • 打赏
  • 举报
回复
嗯, 在顶楼不是说将其 "独立出来作为一个过程后就运行出错了" ?
gao_jj 2007-04-24
  • 打赏
  • 举报
回复
仔细检查过了,进栈出栈都是匹配的,如果作为一个过程也没问题
gao_jj 2007-04-24
  • 打赏
  • 举报
回复
其中readfile是宏指令,从文件中读取数据
应该是过程调用中常见的问题,不知哪位大虾碰到过没有
zara 2007-04-24
  • 打赏
  • 举报
回复
一段代码独立为子程后有问题, 有可能是堆栈不平衡, 致子程不能正确返回

21,500

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧