汇编问题(王让定汇编语言与接口技术)
时间:2011-06-06
来源:互联网
1、就是课本第68页,图3.2左边那段代码的最后一行是不是错误的呢?
书上是这么写的: MOV EAX,[500] ;EAX<---DS:500H单元中双字。书上的意思是把偏移地址为500处内存中的数据赋给eax对吧。可是反编译的时候是这样的:EAX,500。直接把数值500赋给了eax,并不像书上所说的那样。如果要想达到书上想要的结果得这样写:mov ebx,500
mov eax,[ebx]
我想求证一下是书上错了,还是我哪里出错了呢?
2、先看个程序:
.MODEL SMALL
.DATA
X DB 27,57,45
.STACK
.CODE
.STARTUP
MOV AL,X ;标记1 执行后的结果为:(AL)=1Bh(也就是十进制的27)
MOV BL,[X] ;标记2 执行后的结果为:(BL)=00
MOV CX,OFFSET X ;标记3 执行后的结果为: (cx)=0000
.EXIT 0
END
我的问题是:标记1和标记2有何区别呢?还有标记3和标记2又有什么联系呢?
书上是这么写的: MOV EAX,[500] ;EAX<---DS:500H单元中双字。书上的意思是把偏移地址为500处内存中的数据赋给eax对吧。可是反编译的时候是这样的:EAX,500。直接把数值500赋给了eax,并不像书上所说的那样。如果要想达到书上想要的结果得这样写:mov ebx,500
mov eax,[ebx]
我想求证一下是书上错了,还是我哪里出错了呢?
2、先看个程序:
.MODEL SMALL
.DATA
X DB 27,57,45
.STACK
.CODE
.STARTUP
MOV AL,X ;标记1 执行后的结果为:(AL)=1Bh(也就是十进制的27)
MOV BL,[X] ;标记2 执行后的结果为:(BL)=00
MOV CX,OFFSET X ;标记3 执行后的结果为: (cx)=0000
.EXIT 0
END
我的问题是:标记1和标记2有何区别呢?还有标记3和标记2又有什么联系呢?
作者: zhouyg1992 发布时间: 2011-06-06
木这本书,你的结果不对吧,仔细调试一下1 2 3
作者: mydo 发布时间: 2011-06-06
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28