无忧启动论坛

标题: CHS计算器 [打印本页]

作者: sgw888    时间: 2011-7-2 08:31
标题: CHS计算器
原创作品。
输入LBA地址,可以得到CHS地址,并会显示分区表项显示,同时显示是否超过CHS最大值。

该工具在手动修改分区表时会有用。
截图见附件。

chs.JPG (16.64 KB, 下载次数: 108)

chs.JPG

LBA2CHS.rar

392.31 KB, 下载次数: 243, 下载积分: 无忧币 -2


作者: icefox    时间: 2011-7-2 08:53
不错,不知道算法可以不可以公布下!!!
作者: freesoft00    时间: 2011-7-2 09:05
支持好的作品发布。。。
作者: renchmin    时间: 2011-7-2 10:52
这个软件很实用的啊,特别是在手动修改时。
作者: 快雪时晴    时间: 2011-7-2 12:28
标题: 回复 #2 2010icefox 的帖子
444458/240/63 取整 29   --------C

444458-240*63*29=5978
5978/63 取整 94             --------H

5978-63*94 取整+1=57   --------S

其实很简单,搞个1k不到的vbs脚本就能完成
作者: icefox    时间: 2011-7-2 15:35
标题: 回复 #5 快雪时晴 的帖子
不错 谢谢分享!!!
作者: sgw888    时间: 2011-7-2 15:36
回楼上,VBS通用,还是EXE通用性高?
另外,分区表表示部分,你计算了CHS,就可以了???
分区表表示部分,第一部分为磁头数,无需重新计算。但是第二部分为扇区数,它只占用了 低位的六个二进制位,高两位做为柱面的高两位,第三个字节的8位做为柱面的低8位,柱面占用了10个位,也就是说,第二个字节跟第三个字节合起来用于表示扇区数跟柱面数,其中用到移位跟与运算。  想知道VBS是否可以做到?本来打算用个最简单的方法来实现,我甚至想到了CMD的批处理,但是在无意中接触DELPHI时,发现,原来DELPHI是如此的简单。
作者: 2011学无涯    时间: 2011-7-3 00:28
说实话,在实际数据恢复中

分区表项中的 CHS 值,没有实际的意义了,可以顺便填写,不会影响分区的正常读写
作者: sgw888    时间: 2011-7-3 08:16
对于数据恢复,CHS是意义不大,但是对于启动,CHS是重要的,不能你恢复了数据,就什么都不管了吧。难道你恢复完数据,再把分区重新建一遍?还是要通过第三方软件再修正一下?
作者: 快雪时晴    时间: 2011-7-3 13:22
原帖由 sgw888 于 2011-7-2 15:36 发表
回楼上,VBS通用,还是EXE通用性高?
另外,分区表表示部分,你计算了CHS,就可以了???
分区表表示部分,第一部分为磁头数,无需重新计算。但是第二部分为扇区数,它只占用了 低位的六个二进制位,高两位做 ...


在PE里用的话,当然EXE好点,只是说很简单算法设计出几百K的程序有点浪费,你完全可以做到更小,delphi的特点就是高效

分区表表示部分不就是算出的十进制数转十六进制吗?

没有丝毫要贬低你的意思,推出自写工具是值得褒奖的
作者: 快雪时晴    时间: 2011-7-3 14:06
运行图片


hta程序

LBA2CHS.rar (1.19 KB, 下载次数: 99)

[ 本帖最后由 快雪时晴 于 2011-7-3 16:43 编辑 ]
作者: sgw888    时间: 2011-7-3 14:37
原帖由 快雪时晴 于 2011-7-3 14:06 发表
运行图片
125333

hta程序
125335



这个要支持一下。
不过,缺点说一下: 一是没有分区表项表示,你计算出了磁头数,柱面数,扇区数,并不是直接转为十六进制就可以写到分区表项去的。 二是 是否超出CHS最大值只是一个摆设。
作者: 快雪时晴    时间: 2011-7-3 16:45
原帖由 sgw888 于 2011-7-3 14:37 发表



这个要支持一下。
不过,缺点说一下: 一是没有分区表项表示,你计算出了磁头数,柱面数,扇区数,并不是直接转为十六进制就可以写到分区表项去的。 二是 是否超出CHS最大值只是一个摆设。


以上2点都纠正了~~~~



[ 本帖最后由 快雪时晴 于 2011-7-3 16:48 编辑 ]
作者: sgw888    时间: 2011-7-4 08:53
不错不错,效果跟EXE完全一样。在系统下完全够用。另外,我对DELPHI一巧不通,属于那种现学现卖的,就在百草霜远程给我演示如何构建一个FORM,然后显示欢迎信息,我就尝试来做这个了,其实,我的初衷是检查J大帮我搞的另一个程序在执行时遇到的问题,因为J大最近一直没空,我又看不懂他给我写的程序,我就自己瞎折腾了,真的没想到,我能把它写出来。
算法是简单的,但要变成目标程序就些难了,就比方我让J大搞的程序,本来是挺简单一事,就是修正CHS而已,可以说很简单,但是一直没弄好,他给我搞的程序半成品,其中的错误点,我已经跟踪到了,但是我不知道如何去修正它,CHS计算的部分,我已经修正了,其它的都没搞定。 百草大说,有一部分代码被封装了,烦恼的很。。。。。
作者: andos    时间: 2011-7-4 09:15
HTA应该不是每款PE都能运行吧?
作者: sgw888    时间: 2011-7-4 09:30
pe 好像不行 ,HTA,我的理解是类似于IE脚本。
作者: shinobiyan    时间: 2011-7-5 10:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: 幸运的草    时间: 2011-7-9 07:16
标题: 回复 #1 sgw888 的帖子
楼主:
     想在工具中增加一个获取镜像文件参数的功能,但不知怎么获取,目前软盘(不带分区)的IMG/IMA,镜像获取方法已经解决,但硬盘镜像不知道方法,能否告知一二?
作者: freesoft00    时间: 2011-7-17 21:04
就是功能上太单一了。如果能把郝斌楠那个excel的计算器用程序做出来就好了。这样pe下计算就方便多了。当然可以针对数据恢复做更多人性化的设计。

分区进制转换.part01.rar

400 KB, 下载次数: 62, 下载积分: 无忧币 -2

分区进制转换.part02.rar

370.73 KB, 下载次数: 59, 下载积分: 无忧币 -2


作者: wama    时间: 2011-7-20 17:33
这个有用,谢谢分享。
作者: yun2673436976    时间: 2018-4-5 22:11
本帖最后由 yun2673436976 于 2018-4-5 23:18 编辑




现在的硬盘都是lba寻址我用你的计算器计算出的磁头、柱面都是物理地址,diskgenius里的磁头、柱面地址都是逻辑地址,我扫描坏道,知道了具体的lba地址,图片中鼠标所指的扇区:,用你的计算器计算的都是磁头、柱面物理地址,diskgenius里都是逻辑地址,逻辑地址和物理地址完全不一样,我怎么才能把磁头、柱面物理地址转成diskgenius里的逻辑地址?

作者: yun2673436976    时间: 2018-4-5 23:17
快雪时晴 发表于 2011-7-3 16:45
以上2点都纠正了~~~~



现在的硬盘都是lba寻址我用你的计算器计算出的磁头、柱面都是物理地址,diskgenius里的磁头、柱面地址都是逻辑地址,我扫描坏道,知道了具体的lba地址,图片中鼠标所指的扇区:,用你的计算器计算的都是磁头、柱面物理地址,diskgenius里都是逻辑地址,逻辑地址和物理地址完全不一样,我怎么才能把磁头、柱面物理地址转成diskgenius里的逻辑地址?

作者: yun2673436976    时间: 2018-4-5 23:18
freesoft00 发表于 2011-7-17 21:04
就是功能上太单一了。如果能把郝斌楠那个excel的计算器用程序做出来就好了。这样pe下计算就方便多了。当然 ...
快雪时晴 发表于 2011-7-3 16:45
以上2点都纠正了~~~~




现在的硬盘都是lba寻址我用你的计算器计算出的磁头、柱面都是物理地址,diskgenius里的磁头、柱面地址都是逻辑地址,我扫描坏道,知道了具体的lba地址,图片中鼠标所指的扇区:,用你的计算器计算的都是磁头、柱面物理地址,diskgenius里都是逻辑地址,逻辑地址和物理地址完全不一样,我怎么才能把磁头、柱面物理地址转成diskgenius里的逻辑地址?

作者: 最帅李白    时间: 2019-12-18 02:27
只能看不能下




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3