电脑软硬件应用网
当前位置: 电脑软硬件应用网 > 电脑学院 > 硬件教程 > 主板 > 正文
明明白白用DEBUG清除CMOS密码
明明白白用DEBUG清除CMOS密码
2007-1-27 12:23:53  文/佚名   出处:电脑软硬件应用网   

今天一位朋友因要更改CMOS设置而又忘记了密码来找我,这种小儿科的问题自然是难不到我。坐到朋友的电脑前,首先进入系统,在命令行状态下运行DEBUG命令后输入如下命令

-o 70 xx(回车)   

-o 71 xx(回车)

-q (回车)

重新启动计算机后顺利进入CMOS,不用再输入密码。

命令说明:

1、其中xx为00到99之间的任意数值;

2、横线(-)为DEBUG命令提示符;

3、-后面为字母O,为DEBUG的O命令,而不是数字零;

其命令格式为,-O 端口号 一字节数据 (表示要将一字节的数据输出(写入)到指定端口)

4、q为DEBUG命令中的退出命令;

5、70和71分别表示端口号,必须配对使用,且先后顺序不能变动。

6、进行如上操作后,重新启动计算机,如果进行CMOS设置时仍有密码,说明cmos中的数据没有被破坏,此时可再运行DEBUG,使用类似的O命令,不过应将70和71后面的数据变化一下。

正准备起身走的时候,朋友发话了(这位朋友也是位好学之人哪),为什么输入这这些命令之后就行了呢?非要我给他解释一番,这下可把我给难住了,虽然很早就从一些报刊和网站上看过用DEBUG清除CMOS密码的方法,也实践了很多回了,但一直都不清楚具体的原因,且也没有从哪里看到过介绍其关于原理方面的文章,于是答应朋友回来后查资料并给他答复。

回来后查阅相关资料,终于从一本老古董的DOS书刊上找到了,弄明白了为什么以上操作可以清除CMOS密码,现在写出来与大家分享。

CMOS的寻址规则是:CMOS中有静态的RAM,其容量上百至千字节,从0开始编地址,它不是内存的一部分,要访问时必须进过端口进行,其端口号为70和71。要通过这两个端口访问CMOS中上百字节的数据,不可能直接访问(访问包括读和写)。因此设计者规定访问CMOS的办法是:先向端口70写入需要访问的CMOS中RAM的单元地址,再通过端口71进行访问。

破坏的原理是:系统BIOS自检时要检查CMOS中的数据是否有效,有效的标准是计算CMOS中所有数据的字节累加和是否为0,为0表示有效,不为0,则表示CMOS中的所有数据无效,正常的CMOS设置程序在改变CMOS中的值后都要计算CMOS中的字节累加和是否为0,如果不为0,则自动进行调整使之为0。破坏的办法是直接写入一随机数到CMOS的某一单元中,而不调整字节和,只要写入的数据与原有数据不同,则下次重新启动时CMOS的字节累加和肯定不为0,因而其中的数据(包括密码数据)将无效,从而达到破坏CMOS密码的目的。

提示:如果是错误的CMOS设置导致系统无法工作且有进入CMOS和进入系统密码,则比较有效的办法就是放电了。

  • 上一篇文章:

  • 下一篇文章:
  • 最新热点 最新推荐 相关文章
    电脑的系统日期自动复位故障的原因及…
    CMOS电池易掉电的维修思路
    TinkPad的BIOS升级步骤
    开机无法进入系统
    进不了BIOS是怎么回事啊?
    开机按DEL键为啥进不去BIOS
    优化BIOS设置的提高速度
    一进BIOS就花屏死机的问题
    BIOS设置错误引起系统慢故障
    电脑的日期总是自动跳回2005年
    关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 |

    Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号