寄托天下
查看: 8150|回复: 12
打印 上一主题 下一主题

[编程天地] 今天被一段5行的汇编差点搞崩溃 [复制链接]

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

跳转到指定楼层
楼主
发表于 2010-3-5 07:42:44 |显示全部楼层 |倒序浏览
其实很简单的代码,把错误的贴出来,看看大家有没有发现错在哪里:

  1.         __asm{
  2. sleep:
  3.                 mov eax, 8
  4.                 dec eax
  5.                 cmp eax, 0
  6.                 jnz sleep
  7.         }
复制代码
回应
0

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

沙发
发表于 2010-3-11 22:49:49 |显示全部楼层
还在老地方啊。呵呵

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

板凳
发表于 2010-3-12 07:22:36 |显示全部楼层
呵呵。4楼和5楼回答的都不对。偷偷的笑一下。
MOV的ORDER没错。我例子程序是在MS VS 里面,用的INTEL格式,不是AT&T格式。即使你用AT&T重写一遍,还是同样的错误。(其实我最早是用AT&T在LINUX下写的,但是不好调,所以换到MS VS 里面又写了一遍)
DEC能否影响ZF不清楚,不过CMP一下也没错。关键的错误不在这里。

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

地板
发表于 2010-3-13 07:25:59 |显示全部楼层
INC, DEC没啥问题。关键问题是1楼的程序会死循环。这个提示够强了吧?

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

5
发表于 2010-3-13 23:08:32 |显示全部楼层
赞下小披风同学的认真态度. 其实我开始就是没看出来那个死循环. 而且比较郁闷的是,我开始是在一个类似DOS的环境下跑的. 一死就整个机器死了,调都没法调. 后来把代码搬到 VS 上单步几下就看出来了.

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

6
发表于 2010-3-14 06:27:01 |显示全部楼层
是无意中死循环的......

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

7
发表于 2010-6-4 03:12:20 |显示全部楼层
发现小披风很厉害的啊。
今天又碰到一个进程该如何结束的问题,看了下你的代码,才找到答案。

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

8
发表于 2010-6-4 06:04:22 |显示全部楼层
囧。。。

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

9
发表于 2010-6-30 21:28:25 |显示全部楼层
没错。后面的帖子有说明

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

10
发表于 2010-7-1 07:41:45 |显示全部楼层
ls 说的没错 :lol

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

11
发表于 2010-7-10 22:39:35 |显示全部楼层
:L

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

12
发表于 2010-11-23 22:18:03 |显示全部楼层
是滴。后面发现了。

使用道具 举报

Rank: 11Rank: 11Rank: 11Rank: 11

声望
3110
寄托币
48275
注册时间
2003-9-1
精华
44
帖子
1795

荣誉版主 GRE斩浪之魂 Golden Apple

13
发表于 2010-12-19 01:43:11 |显示全部楼层
恩,知道正确答案的人很多。。。

使用道具 举报

RE: 今天被一段5行的汇编差点搞崩溃 [修改]
您需要登录后才可以回帖 登录 | 立即注册

问答
Offer
投票
面经
最新
精华
转发
转发该帖子
今天被一段5行的汇编差点搞崩溃
https://bbs.gter.net/thread-1067232-1-1.html
复制链接
发送
报offer 祈福 爆照
回顶部