Mac下搭建汇编环境二:工具应用实验

Debug使用:

1.r命令:查看,修改CPU寄存器的内容

2.d命令:查看内存中的内容

3.e命令:改写内存中的内容

4.u命令:将内存中的机器码翻译成汇编指令

5.t命令:执行一条机器指令

6.a命令:以汇编指令的格式在内存中写入一条机器指令

执行r命令显示寄存器的状态上篇已经介绍

r命令修改ax寄存器的内容:

-r ax

:1111

执行这两个语句的命令之后查看寄存器的内容r变为1111

同理修改cs为:1400 ip为1111

实验任务:使用debug后将下面的程序段写入内存中,逐条执行,观察每条指令执行后,cpu的相关寄存器的内存变化

机器码:    汇编指令

b8 20 4e    mov ax 4e20H

05 16 14     add ax 1416H

bb 00 20     mov bx 2000H

01 d8             add ax bx

89 c3               mov bx ax

01 d8               add ax bx

b8 1a 00            mov ax 001aH

bb 26 00            mov bx 0026H

00 d8                    add al bl

00 dc                    add ah bl

00 c7                    add ah al

b4 00                    mov ah 0

00 d8                     add al bl

04 9c                       add al 9ch

注意:可用E命令和A命令以两种方式将指令写入内存,注意用T指令执行时,cs:ip的指向

实验操作步骤:


Mac下搭建汇编环境二:工具应用实验_第1张图片
图1

1.图1表示debug下输入a命名然后开始输入汇编指令,左边是内存地址右边是指令;

2.输入完毕后使用d 073f:0100查看内存中的机器码指令,使用u 073f:0100查看内存中的汇编指令;

3.分别使用r cs修改cs地址,r ip修改ip地址,修改为内存命令首地址;

4.使用t命令执行一条汇编指令,指令后寄存器状态如图2,可以看到ax为4e20 cs:ip变为:073f:0103


图2


5.继续执行t命令,直到命令执行完毕

你可能感兴趣的:(Mac下搭建汇编环境二:工具应用实验)