实验四报告

Posted ddddddian

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实验四报告相关的知识,希望对你有一定的参考价值。

实验名称 实验 4 [bx]和 loop 的使用

实验日期 11/21学院 计软院 专业 计科 年级 2017 级  4 班次 姓名  任心怡  学号  20171308152

一、实验目的

1. 理解和掌握寄存器间接寻址方式[bx]

2. 通过汇编指令 loop 的使用理解编程语言中循环的本质

3. 熟练掌握使用 debug 按需调试完整汇编源程序的方法

二、实验准备

1. 学习/复习第 5 章使用[bx]和 loop 实现循环的编程应用示例(教材 5.5 节,5.8 节)

2. 复习第 3 章「栈」的知识

3. 结合第 4 章课件,复习完整汇编源程序编写→汇编→连接→运行→调试的方法

三、实验内容

1. 综合使用 loop,[bx],编写完整汇编程序,实现向内存 b800:07b8 开始的连续 16 个 字单元重复填充字数据 0403H。

代码如下:

技术分享图片

 

进行编译链接和运行

技术分享图片

2. 综合使用 loop,[bx],编写完整汇编源程序,实现向内存 0:200~0:23F 依次传送数据 0~63(3FH)。

(1)必做:综合使用 loop, [bx], mov 实现

代码如下:

技术分享图片

进行编译链接运行,得到运行结果:

技术分享图片

(2)选做*:利用栈的特性,综合使用 loop,push 实现(限定仅使用 8086 中已学过 指令实现)

代码如下:

技术分享图片

得到运行结果:

技术分享图片

3. 教材实验 4(3)(P121)

经过尝试后,最终得出代码如下:

技术分享图片

 

 

技术分享图片

没有说明从哪个具体位置开始复制,自动默认为从cs段寄存器开始

因为 mov ax,4c00h前指令所占17个字节 所以 mov cx,17

 

实验总结:

一开始写代码时候【bx】的使用并不到位,后来查看书中代码后发现,【bx】是一个内存单元,偏移地址是bx

可以配合mov指令将数据放入【bx】中。

loop指令需要通过改变cx的值来确定循环数,而cx的值要看具体问题而定。

通过前两小题的代码编写后,我发现使用栈的特性来实现相同功能时,写起来就很轻松。一开始看见是选做,想着先试试吧,结果编写起来毫不费劲,还挺快乐哈哈。

这次实验重要要掌握的是:【bx】和loop的指令使用。

也可以尝试使用段前缀来表达内存单元。

 

 

 

 

 

 

 

 

 

   

以上是关于实验四报告的主要内容,如果未能解决你的问题,请参考以下文章

2018-2019-20175205实验四《Android程序设计》实验报告

2017-2018-2 20165228 实验四《Android程序设计》实验报告

实验四 《Android开发基础》 20175301李锦然实验报告

实验四实验报告

实验报告四

区块链技术与应用实验报告(实验四)