实验二 多个逻辑段的汇编源程序编写和调试

一、实验目的 1. 理解和掌握8086多个逻辑段的汇编源程序 2. 理解和熟练应用灵活的寻址方式 3. 通过汇编指令loop的使用理解编程语言中循环的本质,掌握其在嵌套循环中的正确使用 4. 掌握使用debug调试8086汇编程序的方法   二、实验准备 复习教材5-8章: 包含多个逻辑段的汇编源程序结构 寻址方式 汇编指令loop, div用法     三、实验内容 1. 实验任务1 1-1:在debug中执行到line17结束、line19之前 实验二 多个逻辑段的汇编源程序编写和调试

DS=076A,SS=076B,CS=076C

code段的段地址是X,则,data段的段地址是X-2, stack的段地址是X-1。

 

1-2:在debug中执行到line17结束、line19之前

实验二 多个逻辑段的汇编源程序编写和调试

 

DS=076A,SS=076B,CS=076C

code段的段地址是X,则,data段的段地址是X-2, stack的段地址是X-1。

 

1-3:在debug中执行到line17结束、line19之前

实验二 多个逻辑段的汇编源程序编写和调试

DS=076A,SS=076C,CS=076E

code段的段地址是X,则,data段的段地址是X-4, stack的段地址是X-2。

 

1-4:在debug中执行到line17结束、line19之前

实验二 多个逻辑段的汇编源程序编写和调试

 

 

DS=076C,SS=076E,CS=076A

code段的段地址是X,则,data段的段地址是X+2, stack的段地址是X+4。

 

1-5:

对于如下定义的段,程序加载后,实际分配给该段的大小是 N字节

将所有伪指令end start改成end:只有 task1_4可以正确执行可以正确执行

因为end start改为end后,前三个以数据段开头,cs指向出现错误,而第四个开头即为程序段,所以仍然能执行.

 

 

 

实验任务2

实验二 多个逻辑段的汇编源程序编写和调试

 

实验任务3: 反汇编: 实验二 多个逻辑段的汇编源程序编写和调试

 

内存情况: 实验二 多个逻辑段的汇编源程序编写和调试

实验任务4:

结果:

实验二 多个逻辑段的汇编源程序编写和调试

内存情况:

实验二 多个逻辑段的汇编源程序编写和调试

 

实验任务5:

结果:

实验二 多个逻辑段的汇编源程序编写和调试

 25行之后27行之前

实验二 多个逻辑段的汇编源程序编写和调试

 

 源程序的功能是打印大写彩色的NUIST

第4行用来设置显示字符的颜色

 

实验任务6:

结果:

实验二 多个逻辑段的汇编源程序编写和调试

 

 

实验任务7:

结果:

实验二 多个逻辑段的汇编源程序编写和调试

 

 本次实验,我充分认识到了汇编语言的繁琐性,也进一步懂得了汇编语言代码书写的规范。

 

上一篇:IDEA中Debug调试的使用


下一篇:Java学习Day5