zoukankan      html  css  js  c++  java
  • debug 的基本用法

    debug 的基本用法


    接下来,来讲述一下 debug 的基本用法

    debug 基本指令 指令全称 用法 用途
    ---------- ? 显示debug的命令列表
    A assemble A [ address ] 将输入源程序的指令汇编成目标代码并从指定的地址单元开始存放。若省缺起始地址,则从当前CS:100地址开始存放。A命令按行汇编,主要用于小段程序的汇编或对目标程序的修改
    C compare C range address 比较内存的两个部分
    D dump D [ range ] 显示部分内存的内容
    E enter E address [ list ] 从指定地址开始,将数据输入
    F fill F range list 使用指定值填充一段内存
    G go G [ = address ] [ addresses ] 运行在内存中的可执行文件
    H hex H value1 value2 执行十六进制运算
    I input I port 显示来自特定端口的 1 字节值
    L load L [ address ] [driver ] [ firstsector ] [ number ] 将文件或磁盘扇区内容加载到内存
    M move M range address 复制内存块中的内容
    N name N [ pathname ] [ arglist ] 指定 Debug l(加载)或 w(写入)命令的可执行文件的名称,或者指定正在调试的可执行文件的参数
    O output O port byte 向输出端口发送 1 个字节的值
    P proceed P [ =address ] [ number ] 执行循环、重复的字符串指令、软件中断或子例程;或通过任何其他指令跟踪
    Q quit Q 退出 debug会话,不保存当前测试文件
    R register R [ register ] 若给出寄存器名,则显示该寄存器的内存并可进行修改。缺省寄存器名,则显示所有寄存器的内容及当前值( 不能修改 )
    S search S range list 在部分内存中搜索一个或多个字节值的模式
    T trace T [ =address] [ value ] 执行一条指令,然后显示所有寄存器的内容、所有标志的状态和Debug下一步要执行的指令的解码形式
    U unassemble U [ range ] 反汇编字节并显示相应的原语句
    W write W [address ] [ drive ] [ firstsector ] [ number ] 将测试文件写入磁盘
    XA allocate expanded memory XA [ # pages ] 分配扩展内存
    XD deallocate expanded memory XD [ handle ] 释放扩展内存
    XM map expanded memory pages XM [ Lpage ] [ Ppage ] [ handle ] 映射扩展内存页
    XS display expanded memory status XS 显示扩展内存的状态

    以上便是debug的简介。


    学习汇编语言并且调用debug调试的时候,主要使用到 -L -U -D -G -T -P 指令

    -L 装入 -G 运行 -U 反汇编 -T 单步(可以进入子程序) -P 单步(不进入子程序)-D 查询内存

    汇编语言程序建立步骤:

    • edit 建立源文件 格式:edit xxx.asm ( 必须以 asm 为扩展文件名,否则不能使用 masm 调用 ),生成 obj 文件。
    • masm 生成链接文件 格式:masm xxx.asm 然后生成 obj 文件,obj 文件是可连接文件,接下来需要使用link链接文件生成exe
    • link 生成 exe 文件 格式:link xxx.obj 生成 exe 可执行文件
    这是小睿的博客,如果需要转载,请标注出处啦~ヾ(≧▽≦*)o谢谢。
  • 相关阅读:
    ie浏览器下载附件中文乱码
    js 获取字符串中某字符第二次出现的下标
    uploadify附件上传 传参
    hibernate hql语句 注意事项
    违反检查约束条件
    xml中的<if>和截取字符串
    引用不了XXservice,怎么办?
    enctype="multipart/form-data"的form传参
    freemarker 嵌套循环 (导出word时,修改ftl模板)
    springboot 打包问题 项目依赖三方jar ,之前的同事是直接丢到项目lib下 ,今天使用springbioot打包的时候,找不到这个jar
  • 原文地址:https://www.cnblogs.com/Yunrui-blogs/p/11530651.html
Copyright © 2011-2022 走看看