|
网站首页
|
业界新闻
|
小组
|
威客
|
人才
|
下载频道
|
博客
|
代码贴
|
在线编程
|
编程论坛
|
登录
注册
短消息
我发表的主题
我参与的主题
我收藏的贴子
我上传的附件
我下过的附件
编辑个人资料
我的博客
用户控制面板
搜索
道具
恢复默认风格
碧海青天
秋意盎然
棕红预览
粉色回忆
蓝雅绿
紫色淡雅
青青河草
e点小镇
橘子红了
红红夜思
水晶紫色
雪花飘飘
新年快乐
风格
短消息
论坛展区
帮助
编程论坛
→
开发语言
→
『 汇编论坛 』
→ 一个很简单的问题,帮忙看一下 谢谢
我的收件箱(0)
欢迎加入我们,一同切磋技术
用户名:
密 码:
共有
1189
人关注过本帖
标题:
一个很简单的问题,帮忙看一下 谢谢
只看楼主
加入收藏
daiwulong
等 级:
新手上路
帖 子:27
专家分:0
注 册:2009-2-28
结帖率:
100%
楼主
收藏
已结贴
√
问题点数:10 回复次数:16
一个很简单的问题,帮忙看一下 谢谢
代码如下:
INCLUDE Irvine32.inc
.code
main PROC
mov EBP,402000H
mov eax,19E0H
mov [EBP],eax
exit
main ENDP
END main
但是当执行到mov【ESP】,eax是出现错误,见附件。
谢谢各位了
有点急。
搜索更多相关主题的帖子:
附件
2009-10-08 19:53
举报帖子
使用道具
赠送鲜花
东海一鱼
等 级:
贵宾
威 望:
48
帖 子:757
专家分:4760
注 册:2009-8-10
第
2
楼
收藏
得分:0
代码段不可写。这样肯定会写异常。
两种解决方式:
1、在LINK时,指定代码段可写、可执行。
2、用虚拟内存管理API修改代码段可写。
举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2009-10-08 20:55
举报帖子
使用道具
赠送鲜花
你们都要疼我哦
来 自:火星
等 级:
贵宾
威 望:
49
帖 子:1296
专家分:2746
注 册:2008-7-13
第
3
楼
收藏
得分:0
你看的是Intel汇编语言程序设计这本书吧.
小妹,哥哥看你骨骼清奇,绝非凡人,将来必成大业,不如这样,你先把裤裤脱了,待哥哥为你开启灵窍,然后我们一起努力钻研如何
2009-10-08 21:44
举报帖子
使用道具
赠送鲜花
daiwulong
等 级:
新手上路
帖 子:27
专家分:0
注 册:2009-2-28
第
4
楼
收藏
得分:0
回复 2楼 东海一鱼
谢谢,我刚刚学习汇编,都不怎么懂。第一种是怎么回事啊
我用的是2005,我直接F10单步执行到那个地方就这样了。
能不能说一下第一种怎么实现的。谢谢
2009-10-08 22:33
举报帖子
使用道具
赠送鲜花
daiwulong
等 级:
新手上路
帖 子:27
专家分:0
注 册:2009-2-28
第
5
楼
收藏
得分:0
回复 3楼 你们都要疼我哦
我们老师给了我们这个Assembly Language For Intel-Based Computers Fourth Edition
英文电子的,但是我们都没看,英文的看着太累人了
英语学得不好
2009-10-08 22:36
举报帖子
使用道具
赠送鲜花
onepc
等 级:
黑侠
威 望:
3
帖 子:223
专家分:569
注 册:2009-8-27
第
6
楼
收藏
得分:0
代码如下:
INCLUDE Irvine32.inc
.code
main PROC
mov EBP,402000H
mov eax,19E0H
mov [EBP],eax
exit
main ENDP
END main
但是当执行到mov【ESP】,eax是出现错误,见附件。
谢谢各位了
有点急。
以下是引用东海一鱼在2009-10-8 20:55:42的发言:
代码段不可写。这样肯定会写异常。
两种解决方式:
1、在LINK时,指定代码段可写、可执行。
2、用虚拟内存管理API修改代码段可写。
楼主你看下402000H这个地址的地方是什么来的?是否代码段之类的。
用od载入可以看下。。。
一般建议装入点没给占用的话一般都是400000的。偏二千的地方是什么来的。看下。
2009-10-09 08:42
举报帖子
使用道具
赠送鲜花
daiwulong
等 级:
新手上路
帖 子:27
专家分:0
注 册:2009-2-28
第
7
楼
收藏
得分:0
回复 6楼 onepc
执行到mov [EBP],eax的时候寄存器显示
EAX = 000019E0 EBX = 7FFD6000 ECX = 0012FFB0 EDX = 7C92E514 ESI = 0A07F99C EDI = 00000000 EIP = 0040101A ESP = 0012FFC4 EBP = 00402000 EFL = 00000246
00402000 = CCCCCCCC
等到执行完这步时就会弹出这个错误,你们能不能再你们的机器上试一试,谢谢了
我刚看看汇编什么都不会,你们说的我也不懂啊 ,我编写的东西是不是不对啊?
2009-10-09 10:30
举报帖子
使用道具
赠送鲜花
onepc
等 级:
黑侠
威 望:
3
帖 子:223
专家分:569
注 册:2009-8-27
第
8
楼
收藏
得分:0
00402000 = CCCCCCCC
已写进去了。
你看下那个exit是什么来的。这个我还没用过。。
2009-10-09 10:35
举报帖子
使用道具
赠送鲜花
daiwulong
等 级:
新手上路
帖 子:27
专家分:0
注 册:2009-2-28
第
9
楼
收藏
得分:0
回复 8楼 onepc
到那一步就不能继续执行了,就是弹出错误了。
我已经把eax赋值为19E0H,再把eax给了402000这个地址,但是执行不到exit就出现那个错误了
谢谢你了
2009-10-09 10:47
举报帖子
使用道具
赠送鲜花
onepc
等 级:
黑侠
威 望:
3
帖 子:223
专家分:569
注 册:2009-8-27
第
10
楼
收藏
得分:0
哦。那就是写不入402000这里了。看东海一条鱼的回复。。
2009-10-09 10:51
举报帖子
使用道具
赠送鲜花
17
1/2页
1
2
快速回复:
一个很简单的问题,帮忙看一下 谢谢
数据加载中...
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.037042 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved