assembly - 在 PROC 中取消引用参数时出现问题
问题描述
.MODEL SMALL
.STACK 100h
.DATA
a DW 12h
.CODE
example PROC NEAR
MOV BP,SP
MOV AX , [BP+2] ; value here isn't 12h
RET 2
example ENDP
start:
MOV AX, @DATA
MOV DX, AX
PUSH a
CALL example
MOV AX , 4CH
INT 21H
END start
这是DOSBOX调试的图片 点击这里的图片
AX 应该是 12h,但在将 [BX+2] 传递给 AX 时它是一些随机值
解决方案
推荐阅读
- swift - 如何在 Swift 中使用计时器切换布尔值
- python - np.int64 在数学运算中的行为与 int 不同
- javascript - 如何根据javascript中的文本大小设置行高?
- reactjs - 未能遵守
- r - r 中的 table() 函数 - 有没有更好的方法,例如 dplyr?
- r - 在公式中使用 selectInput 中的选择
- c# - 只刷新gridview中的一行
- path - 未找到 Jest 配置 setupFilesAfterEnv 选项
- node.js - android chrome 浏览器上的谷歌语音到文本质量差
- node.js - 为什么在Nodejs中运行快速实例后我无法访问`userService`变量