| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 637 人关注过本帖
标题:【原创】16位的debug调试32位程序的五里雾
只看楼主 加入收藏
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
结帖率:100%
收藏
 问题点数:0 回复次数:4 
【原创】16位的debug调试32位程序的五里雾
;************************************************************************************************************************
;作者:zklhp  
;Email:zklhp@
;QQ:493165744
;2012.5.8
;版权所有 转载请保持完整
;************************************************************************************************************************

性好道术,能作五里雾    ——后汉书·张楷传

16位调试器 比如debug 是不能调试32位程序的 这个是常识

可是 真的不能调试么

呵呵 不要忘了 32位程序首先是一个16位程序 虽然这个程序的功能比较简单 只不过输出了几句话然后退出 但确实是货真价实的16位程序

所以。。。。

0C67:0000 0E            PUSH    CS
0C67:0001 1F            POP     DS
0C67:0002 BA0E00        MOV     DX,000E
0C67:0005 B409          MOV     AH,09
0C67:0007 CD21          INT     21
0C67:0009 B8014C        MOV     AX,4C01
0C67:000C CD21          INT     21
0C67:000E 54            PUSH    SP
0C67:000F 68            DB      68
0C67:0010 69            DB      69
0C67:0011 7320          JNB     0033
0C67:0013 7072          JO      0087
0C67:0015 6F            DB      6F
0C67:0016 67            DB      67
0C67:0017 7261          JB      007A
0C67:0019 6D            DB      6D
0C67:001A 206361        AND     [BP+DI+61],AH
0C67:001D 6E            DB      6E
0C67:001E 6E            DB      6E
0C67:001F 6F            DB      6F

这样的代码 可不仅仅是输出两句话就结束了这么简单 因为这根本不是16位程序 只不过是一个32位程序的开头

这样看或许明白一点

0C67:0000  0E 1F BA 0E 00 B4 09 CD-21 B8 01 4C CD 21 54 68   ........!..L.!Th
0C67:0010  69 73 20 70 72 6F 67 72-61 6D 20 63 61 6E 6E 6F   is program canno
0C67:0020  74 20 62 65 20 72 75 6E-20 69 6E 20 44 4F 53 20   t be run in DOS
0C67:0030  6D 6F 64 65 2E 0D 0D 0A-24 00 00 00 00 00 00 00   mode....$.......
0C67:0040  1D ED D5 EA 59 8C BB B9-59 8C BB B9 59 8C BB B9   ....Y...Y...Y...
0C67:0050  9A 83 B4 B9 5F 8C BB B9-59 8C BA B9 80 8C BB B9   ...._...Y.......
0C67:0060  9A 83 E6 B9 5E 8C BB B9-E6 83 DB B9 5B 8C BB B9   ....^.......[...
0C67:0070  9A 83 E5 B9 58 8C BB B9-9A 83 E4 B9 6D 8C BB B9   ....X.......m...

可惜啊 一上来我也没看明白 这就是五里雾罢。。


                                                                                                              zklhp
                                                                                                          2012 5 8

搜索更多相关主题的帖子: 版权 Email 
2012-05-08 21:12
zklhp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:china
等 级:贵宾
威 望:254
帖 子:11485
专家分:33241
注 册:2007-7-10
收藏
得分:0 
自己顶一下 记下来省得忘了
2012-05-08 21:17
于祥
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:蒙面侠
威 望:5
帖 子:1047
专家分:4132
注 册:2011-4-24
收藏
得分:0 
呵呵,我也来顶一下z版

最基础的往往是你最容易忽略的!
2012-05-08 21:41
pklpklong007
Rank: 1
等 级:新手上路
帖 子:46
专家分:7
注 册:2007-9-10
收藏
得分:0 
mz头,dos stub为了向下兼容
2012-05-09 13:06
马甲1号
Rank: 5Rank: 5
等 级:职业侠客
帖 子:68
专家分:312
注 册:2011-4-4
收藏
得分:0 
那是, PE文件, 可移植执行程序文件

???????
2012-05-10 12:43
快速回复:【原创】16位的debug调试32位程序的五里雾
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.035273 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved