中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-15 18:51
47,813 主题排行 / 349,903 发帖 / 今日 1 篇 / 48,258 会员排行
DOS疑难解答 & 问题讨论 (解答室) » [解决]用Debug载入大于64K文件后.怎样搜索大于64K的部分
可打印版本  1,202 / 13
第1楼 knoppix7 发表于 2008-06-08 21:35
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
[解决]用Debug载入大于64K文件后.怎样搜索大于64K的部分
RT.
用Debug XXX.txt加载以后.
附近的东西怎么都差不多..郁闷.
在Google上搜索过.但是没看见这个方面的解答..

怎样才能搜索超过64K的部分??

一定要把文件按FFFF拆分后载完成搜索吗?

谢谢各位了.

[ Last edited by knoppix7 on 2009-5-2 at 00:32 ]
第2楼 bat-zw 发表于 2008-06-08 22:46
金牌会员 发帖 1,276 积分 3,105
汗,不懂debug,因此对于兄弟的问题是无能为力了,也想学学这个东东,就是一直下不了这个决心,因为在实际中也好像没什么地方要用到debug。。。
第3楼 GOTOmsdos 发表于 2008-06-08 23:04
铂金会员 发帖 1,827 积分 5,154
debug 有64kb的限制, 如果要突破这个限制,可试一试用 TODISK,它没有这个限制,如下:
http://www.cn-dos.net/forum/viewthread.php?tid=28884
第4楼 PPdos 发表于 2008-06-09 04:39
高级用户 发帖 268 积分 783
dfff,1fff 这里假设为结束位置为1fff 要看你超过了多少,既然你加载到内存就读的出来
第5楼 knoppix7 发表于 2008-06-18 18:39
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
Originally posted by GOTOmsdos at 2008-6-8 11:04 PM:
debug 有64kb的限制, 如果要突破这个限制,可试一试用 TODISK,它没有这个限制,如下:
http://www.cn-dos.net/forum/viewthread.php?tid=28884&fpage=1&highlight=%2B%2Bgotomsdos



搜索的话要怎么弄?
看过前几页的说明.,没有找到相关的东西.
第6楼 knoppix7 发表于 2008-06-18 18:43
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
Originally posted by PPdos at 2008-6-9 04:39 AM:
dfff,1fff 这里假设为结束位置为1fff 要看你超过了多少,既然你加载到内存就读的出来



D的确可以.
另外..S的话该怎么写..
-S 0000 l 1 "DIM "
-S 0000 l 10000 "dim "
^ Error
-S 0000 FFFFF "DIM"
^ Error

那么FFFF以后该怎么搜索?..
第7楼 GOTOmsdos 发表于 2008-06-18 21:49
铂金会员 发帖 1,827 积分 5,154
Originally posted by knoppix7 at 2008-6-18 06:43 PM:



D的确可以.
另外..S的话该怎么写..
-S 0000 l 1 "DIM "
-S 0000 l 10000 "dim "
^ Error
-S 0000 FFFFF "DIM"
^ Error

那 ...


用debug 是不能处理超过64KB的文件的 !(最多是 FFFF个字节)
用TOdisk就可以
方法如下:

把文件 FILE 从 第100扇区处 开始,显示 12345个扇区 到屏幕 ,满屏暂停:

TOdisk -PFS -PAUSE FILE 100 12345

也可直接指定扇区的偏移(即第几个字节):
把文件 FILE 从 第100扇区处的第123个字节开始, 显示 12345个扇区 到屏幕 ,满屏暂停:
TOdisk -PFB -PAUSE FILE 100 123 12345

如不要暂停,去掉 -PAUSE 即可

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

TODISK还可用作文件截取器,方法如下:


把FILE1从内容的起始扇区45 偏移123处复制678个字节到FILE2中
TOdisk -FWF FILE1 45 123 FILE2 678

如果压缩:
TOdisk -FWFZ FILE1 45 123 FILE2 678

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
如果你不要显示,只要搜索,可以用 FIND 、FINDSTR 和 第三方程序,如 STRING 等

[ Last edited by GOTOmsdos on 2008-6-18 at 10:10 PM ]
第8楼 knoppix7 发表于 2008-06-18 22:29
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
谢谢了.
主贴忘说了.
我需要读取制定关键字[如:"DIM "]后N个字节的内容.
如果搜索不到制定关键字的地址的话还是不行.
第9楼 knoppix7 发表于 2008-06-18 22:30
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
如果不行就研究一下Find+For的定位法.
第10楼 GOTOmsdos 发表于 2008-06-18 23:32
铂金会员 发帖 1,827 积分 5,154
Originally posted by knoppix7 at 2008-6-18 10:29 PM:

我需要读取制定关键字后N个字节的内容.


find、findstr、strings、get 好像都不能直接做到。
而且 他们也仅仅能够找到字符串坐在的行数,不能得到精确的位置。
要写程序才行,否则只能借助程序手工解决

如果我有时间可以给你写一个
第11楼 netbenton 发表于 2009-04-23 11:46
银牌会员 发帖 752 积分 1,916 来自 广西
debug 是可以处理大于64K的数据的,
可以用段前缀来协助就可以了。

如当前段为:ds=0afa
d 0 命令看到的是当前段数据

要看下一个64K的数据这样就可以了:d 1afa:0
支持这样收索:s 1afa:0 lffff "DIM"
第12楼 s11ss 发表于 2009-04-23 14:42
银牌会员 发帖 566 积分 2,098
Originally posted by netbenton at 2009-4-23 11:46 AM:
debug 是可以处理大于64K的数据的,
可以用段前缀来协助就可以了。

如当前段为:ds=0afa
d 0 命令看到的是当前段数据

要看下一个64K的数据这样就 ...

debug最大可以处理多大的文件?
我debug一个900多KB的文件提示什么“Insufficient memory”,最大能处理640KB的文件?
第13楼 netbenton 发表于 2009-04-23 21:08
银牌会员 发帖 752 积分 1,916 来自 广西
这要看常规内存有多大了,通常来说是达不到640K的,
因为那640k内存中还有系统占用(向量表,ascii码表,键盘缓冲等),以及debug.com本身占用。
一般的情况是600k左右吧,没有去测试过。
有一点就是,只要能加载,就能处理。
只要是1M以内的内存debug就能操作,但是它无法把文件数加载到640以上的内。
第14楼 knoppix7 发表于 2009-04-24 09:40
银牌会员 发帖 634 积分 1,287 来自 cmd.exe
Originally posted by s11ss at 2009-4-23 02:42 PM:

debug最大可以处理多大的文件?
我debug一个900多KB的文件提示什么“Insufficient memory”,最大能处理640KB的文件?


mem 命令可以看.
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023