实验内容
1.(1)综合使用loop,[bx],编写完整汇编程序,实现向内存b800:07b8开始的连续16个宇单元重复填充字数据0403H;
代码如下:
运行结果:
(2)将源代码程序中字数据0403H—修改为0441H,再次运行;
代码如下:
运行结果:
2.综合使用loop,[bx],编写完整汇编源程序,实现向内存0:200~0:23F依次传送数据 0~63(3FH)。
代码如下:
汇编、连接后,结果如下:
d命令查看如下:
g命令、t命令、p命令调试如下:
3.教材实验4(3) (P121)
代码如下:
汇编、连接结果如下:
用d命令查看0:200 之后的若干字节
t命令、g命令、p命令调试如下:
答案:此题有多个答案,因为mov用在寄存器之间传送数据的指令是2个字节,用在寄存器和立即数之间是3个字节
- 答案1:mov ax,cs (占2个字节) ;mov cx,17
- 答案2:mov ax,code (占3个字节); mov cx,18
- 答案3:mov ax,cs 或mov ax,code, 把mov cx, 改成 sub cx,5
(因为在载入程序时,cx保存程序的长度,减去5是为减去mov ax,4c00h和int 21h的长度)
总结与体会
这次的实验让我学会了如何使用loop指令,并且更深刻的理解了程序段中各代码的含义,再一次复习使用了debug中的t、g、d、u各指令。