2.debug指令
1.r (register)
用于查看、修改CPU寄存器的内容
上图展示了查看寄存器的内容并将AX寄存器中的内容改为5678
2.d (dump)
用于查看内存中的内容
如上图,表示查看从0000开始偏移为3处开始查看
如上图,表示从0000开始偏移为4,并限定输出长度为2f
3.e (enter)
用于修改内存中的内容
如上图,表示从0000:0处写入数据12 34 56 78
4.a (assemble) 和 t (trace)
a 用于在内存中以汇编格式写入一条机器指令
t 用于执行==一条==写入的汇编指令
如上图所示,我们先用r命令将ax改为1,bx改为2,然后用a命令在073f:0100处(即cx:ax,为什么?(CS:IP两个寄存器指示了CPU当前将要读取的指令的地址,其中CS为代码段寄存器,而IP为指令指针寄存器))写入汇编代码:
add bx,ax
mov cx,ax
表示将ax与bx相加并放到bx,然后将ax中的内容拷贝一份放到cx
然后用t命令逐条运行
5. u (unassemble)
用于将内存中的机器指令反编译成汇编指令
如上图,我们可以先用d命令查看一下内存中机器指令的样子
然后我们用u命令将内存中机器指令翻译为汇编指令: