====== 3.Debug的使用 ====== Debug:调试工具,可以查看cpu各种寄存器中的内容,内存的情况和在机器码级跟踪程序的运行。 ===== -#1 R查看修改cpu的内容 ===== ==== - 查看cpu寄存器的内容 ==== {{ :assembly:使用r命令查看cpu中各个寄存器中的内容.jpg?nolink&600 |}} ==== - 改变寄存器中的内容 ==== {{ :assembly:用r命令修改寄存器ax中的内容.jpg?nolink&600 |}} ===== -#2 D查看内存中的内容 ===== ==== - 命令格式 ==== 命令:d cs:ip 将列出从指定内存单元开始的128个内存单元的内容 ==== - 内容呈现 ==== {{ :assembly:用d命令查看内存1000的0处的内容.jpg?nolink&600 |}} 在使用d cs:ip 之后,接着使用D命令,可以列出后续的内容 {{ :assembly:列出后续的内容.jpg?nolink&600 |}} ==== - 查看范围内容 ==== d 段地址:起始偏移地址 空格 结尾偏移地址 ''d 1000:0 9'' {{ :assembly:查看指定范围内存单元的内容.jpg?nolink&600 |}} ===== -#3 E改写内存中的内容 ===== ==== - 命令格式 ==== e 起始地址 数据 数据 数据..... {{ :assembly:用e命令修改从1000的0开始的10个单元的内容.jpg?nolink&600 |}} ==== - 可以提问方式逐个修改 ==== 空格表示不修改当前单元格的内容 ==== - 可以写入字符串 ==== ==== - 可以写入机器码 ==== 汇编对应的指令 转化为 机器码 然后写入 ===== -#4 U查看内存中机器码的含义 ===== {{ :assembly:用u命令将内存单元中的内容翻译为汇编指令.jpg?nolink&600 |}} ===== -#5 T执行内存中的机器码 ===== ==== - 命令格式 ==== ===== -#6 A汇编指令编辑内容 ===== {{ :assembly:用a命令向1000的0开始的内存单元中写入指令.jpg?nolink&600 |}} ===== -#7 P =====