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

汇编test指令和cmp指令 汇编语言test指令用法_快捷键

法一:

1.使用e命令将指令写入内存,并使用u命令进行反汇编。

汇编test指令和cmp指令 汇编语言test指令用法_只读存储器_02

(此处▲为截图快捷键误按)

2.使用t指令单步执行。

汇编test指令和cmp指令 汇编语言test指令用法_汇编test指令和cmp指令_03

(此处▲为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_04

(此处a为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_汇编test指令和cmp指令_05

(此处aa为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_06

汇编指令结束后,再进行单步执行,令人玩味。

法二:

1.使用a命令将指令写入内存。

汇编test指令和cmp指令 汇编语言test指令用法_汇编test指令和cmp指令_07

(此处a为截图快捷键误按)

注:

1.输入数字时,后面不要加H或h,8086默认16进制的数字。

2.add al,bh   不是add al bh   中间是“,”   不是空格。

2.使用t命令单步执行。

同上


任务二:将下面3条指令写入从2000:0开始的内存单元中,利用这3条指令计算2的8次方。

mov ax,1

add ax,ax

jmp 2000:0003

1.使用a命令将指令写入内存单元。

汇编test指令和cmp指令 汇编语言test指令用法_脱机_08

(此处▲为截图快捷键误按)

2.使用t指令单步执行。

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_09

(此处▲为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_汇编test指令和cmp指令_10

(此处▲为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_11

(此处▲为截图快捷键误按)

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_12

(此处▲为截图快捷键误按)


任务三:查看内存中的内容。

  PC机主板上的ROM中写有一个生产日期,在内存FFF00H~FFFFFH的某几个单元中,请找到这个生产日期并试图改变它。

1.使用d命令查看内存FFF00H~FFFFFH的内容

汇编test指令和cmp指令 汇编语言test指令用法_开发语言_13

(此处▲为截图快捷键误按)

2.使用e命令修改,并使用d命令查看修改后的内容。

汇编test指令和cmp指令 汇编语言test指令用法_汇编test指令和cmp指令_14

结论:并没有达到修改的目的。

解释:ROM(read-only memory),“只读存储器”;存储器的任何单元只能随机地读出信息,而不能写入新信息,称为只读存储器ROM,其信息通常是厂家制造时在脱机情况或者非正常情况下写入的。


任务四:向内存从B8100H开始的单元中填写数据,如:

-e B810:0000 01 01 02 02 03 03 04 04

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_15

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_16

**使用e命令修改此段内存内容,再使用d命令查看此段内存内容,前面的 “.” 变得更密了。

汇编test指令和cmp指令 汇编语言test指令用法_开发语言_17

但是,在修改后,上图的位置出现了这个图案,很奇怪。

结合老师上课演示的内容,初步推断,这段图案应该出现在查看内存  “.”  比较密的位置,偏移的具体原因暂不知晓。

                                                              注:修改其他段的内存并没有什么现象产生。

汇编test指令和cmp指令 汇编语言test指令用法_快捷键_18