返回列表 发帖

DEBUG指令的一些总结和调试方法

DEBUG指令的一些总结和调试方法
首先如入一下门,debug都是从这些东东来的
1。 主要的命令及格式,这些命令是debug最基本的命令,如何灵活使用就看你自己的硬件知识了,不过我会举一些具体粒子的
  A(Assemble): 汇编语句 A[address]   
  C(Compare): 比较内存 C range address  
  D(Dump): 显示内存 D[address]或D[range]  
  E(Enter): 改变内存 E address
      
      F(Fill): 填充内存 F range list  
      G(Go): 执行程序 G[=address[address[address...]]  
      H(Hexarithmetic): 十六进制运算命令 H[address[drive|sector|sector]]  
      I(Input): 输入 I portaddress  
      L(Load): 装入内存 L[address[drive|sector|sector]]  
      M(Move): 传送内存 M range address  
      N(Name): 定义文件和参数 N[d:][path]filename[.ext]  
      O(Output): 输出字节 O portaddress byte  
      P(Proceed): 在下条指令前停止  P[=address][value]  
      Q(Quit): 结束DEBUG程序 Q  
      R(Hexarithmetic): 显示寄存器/标志位 R[registername]  
      S(Search): 捡索字符 S range list  
      T(Trace): 执行并显示(跟踪) T[=address][value]  
      U(Unassemble): 反汇编指令 U[address]或U[range]  
      W(Write): 把文件或数据写盘 W[address[drive|sector|sector]]  
       
      开始介绍一些具体应用,有些不光给出debug命令,还会列举其他方法
      2。 上次我写T40评测用的D命令,用来察看主板的生产日期或者版本与生产厂
    D ffff:05 察看日起
    D fe00:0e 察看版本
       
      3。 不知道bios密码怎么办?  
    a debug法,清除bios密码
    o 70 10
    o 71 10
    g
    g
    重启
    不过这一招太狠读了,还有
    b debug法二,前提是进入系统
    o70 21  
    o70 20  
    p  
      
    c 万能密码法,适用于较老的机型。对Award BIOS,试试下面的密码:AWARD--SR,j62,HLT,SER,
    SKY_FOX,BIOSTAR,ALFAROME,lkwpeter,j256,AWARD?SW,LKWPETER,Syxz,aLLy,589589 ,589721,awkward,
    COMCAT等。对AMI BIOS,试试下面的密码:AMI,BIOS,PASWORD,HEWITTRAND,AMI?SW,AMI--SW,
    LKWPETER,A.M.I.等。
      
    4。保存硬盘的引导扇区和文件分配表  
    这是保存C盘的引导程序,其余的类推!
    L 100 2 0 1 ;0代表A,1代表B,2代表C盘, 0就是0扇区。  
    N c:Boot.com ;保存到  
    R CX ;CX寄存器用来表示写文件的大小。
    :200  
    W  
    Q  
    5。恢复硬盘的引导扇区和文件分配表  
    恢复C盘的引导扇区程序
    n c:boot.com  
    l 100  
    r cx  
    :200  
    w 100 2 0 1 ;其中0为A盘,1为B盘,2为C盘。依此类推!  
    q  
       
    6。LCD亮点或暗点检查
    用F填充命令
    f b800:00 f9f 20 40  (40代表红)  
    f b800:00 f9f 20 10  (10代表兰)
    依此类推,还有20代表绿,30代表紫红,70代表灰白等
      
    7。方便的调试程序。  
    例如,将一段小写字符改为大写  
    s ...  用DEBUG的“-S”功能检索到那个字符
    e ...  E改变内存命令修改字符的ASCII码(小写改大写是-20(16进制),大写改小写反之)  
    在例如,
    如果是批量修改一个段地址下相临偏移地址的字符串,就用“-F”填充命令。
    海例如,其实A指令就是一条编译指令
      
    8。检查路由器配置及工作状态,在超级权限模式下  
    debug 命令可以实时显示路由器的工作情况,缺省状态下,debug信息只能在与console端口连接的
    终端上显示。当然最简单还是ping或者telnet了。
      
    9。要显示扩展内存信息,可以键入以下命令:
    xs
      
    Debug 显示与以下类似的信息:
    Handle 0000 has 0000 pages allocated
    Handle 0001 has 0002 pages allocated
    Physical page 00 = Frame segment C000
    Physical page 01 = Frame segment C400
    Physical page 02 = Frame segment C800
    Physical page 03 = Frame segment CC00
    2 of a total 80 EMS pages have been allocated
    2 of a total FF EMS handles have been allocated
      
    10。对指定的两个参数执行十六进制运算。
      
    h value1 value2

返回列表