自学王爽版汇编语言,请问3个有关问题
发布时间:2010-06-14 15:48:13 文章来源:www.iduyao.cn 采编人员:星星草
自学王爽版汇编语言,请教3个问题
使用的是masm 5.0 link3.6
1.运行程序时可以用g命令执行到指定位置,那么直接用g命令把一段程序中的int 21h执行完可以吗?
2.一道题(王爽-汇编语言第二版 检测点6.1(2)):下面程序实现一次用内存0:0~0:15单元中的内容改写程序中的数据,数据传送用栈来进行,栈空间设置在程序内,填空完成程序:
assume cs:code
code segment
dw 0123h,0456h,789h,0abch,0defh,0fedh,0cbah,0987h
dw 0,0,0,0,0,0,0,0,0,0
start:mov ax,cs
mov ss,ax
mov sp,36
mov ax,0
mov ds,ax
mov bx,0
mov cx,8
s:push [bx]
pop cs:[bx]
add bx,2
loop s
mov ax,4c00h
int 21h
code ends
end start
这样做对吗?按道理来说没错,为什么最后几个数据不能实现?
3.还是上面的程序,将可执行文件f1.exe载入内存并跟踪:
-d0:0 f
0000:0000 68 10 A7 00 8B 01 70 00-16 00 E2 06 8B 01 70 00 h.....p.......p.
-d17e1:0 f
17E1:0000 23 01 56 04 89 07 BC 0A-EF 0D ED 0F BA 0C 87 09 #.V.............
执行mov ax,cs
-d0:0 f
0000:0000 68 10 A7 00 BB 13 24 12-16 00 E2 06 B1 13 24 12 h.....$.......$.
为什么d0:0 f的数据会变?怎么避免?
搜索汇编语言论坛,就这儿最大了,希望知道的老师们答复啊,谢谢
------解决方案--------------------
第三题用D命令查看的是系统的内存区域,该区域不能写,只能读。
------解决方案--------------------
1 g 可以直接执行完一般的 int中断
2 不要用g指令,用t或p指令。
------解决方案--------------------
第一题看不懂;
第二题:你的sp 都是错误的,应该是32吧
第三题:这段内存的内容是什么本来就不确定的,又不一定是你的程序所在地。。随时会变的。
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
MSN通讯协议逆向
MSN 进行数据通讯中,据说用了TWN认证,通过SSL/TLS连接到login.passport.com和 loginnet.passportr.com 等服务器。
...
-
win7+64位cpu的exe反汇编问题,多次问人,无果
vs20008写的一个很简单的c++控制台程序
平台是:win7 64位操作系统
用od进行反汇编,...
-
可能很白痴的问题:想给ax赋一个负数怎么做?
比如想要赋一个-5给ax,是不是只有求出这个-5的补码,然后mov进这个补码这一种方法?
------...
-
居然显示不出负数来,悲剧
Assembly code
.386
.model flat,stdcall
include kernel32.inc
includelib kernel32.lib
include ms...
-
call far ptr '标号'的问题[在线等答案]
为什么ax会是1010?不是1006??求详细解答
难道call far ptr不是执行了push cs,push ip,jm...
-
CPU的程序计数器PC和指令指针寄存器IP是一个东西吗?
看上去好像功能完全一样,又觉得不应该是一回事,求教
------解决方案----------...
-
菜鸟问题,高人来帮忙
编程,统计data段中数值为8的字节的个数,用ax保存结果
我的代码
Assembly code
assume cs:code,ds:data
data se...
-
一个死循环问题
什么原因造成内循环才刚循环一次还没完,到了loop s1的时候cx突然变成F?
Assembly code
assume cs:codesg,ds:datas...
-
初学MUL乘法指令,写法求解释下
MUL r8/m8 ;无符号字节乘:AX←AL×r8/m8
MUL r16/m16 ;无符号字乘:DX.AX←AX×r16/...
-
汇编如何 取到8051的P0口的内容呢?
Assembly code
ORG 0000H
AJMP START
ORG 0030H
START: MOV P0,#00H
LOOP: ...