汇编语言程序设计实验内容(川大微机原理实验资料和内容以及MASM使用方法)

  • 格式:doc
  • 大小:88.50 KB
  • 文档页数:8

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第一部分汇编语言程序设计

实验一熟悉、使用DEBUG调试工具

一.上机目的:

1.了解并逐步熟悉汇编语言的编辑方法及特点.

2.复习8088汇编语言的段结构、常用的指令与伪指令、存储空间的分配等。

3.掌握汇编语言的编辑、汇编及连接的过程。

4.了解并逐步掌握运用DEBUG进行调试汇编语言程序。

二.实验内容:

1.运用8086汇编语言,编辑多字节非压缩型BCD数除法的简单程序,文件名取为*.ASM。

2.运用MASM﹒EXE文件进行汇编,修改发现的各种语法错误,直至正确,形成*.OBJ 文件。

3.运用LINK.EXE文件进行连接,形成*.EXE文件。

4.仔细阅读附录中的DEBUG部分,掌握各种命令的所有方法。

5.运用DEBUG。EXE文件进行调试,使用单步执行命令—T两次,观察寄存器中内容的变化,使用察看存储器数据段命令—D,观察存储器数据段内数值。

6.再使用连续执行命令—G,执行程序,检查结果是否正确,若不正确可使用DEBUG 的设置断点,单步执行等功能发现错误所在并加以改正。

程序清单:

多字节非压缩型BCD数除法(88754/6=14792)

DA TA SEGMENT

A D

B 8,8,7,5,4

B DB 6

C DB 5DUP (0)

N EQU 5

DA TA ENDS

CODE SEGMENT

ASSUME CS:CODE;DS:DATA;ES:DATA,

START MOV AX,DA TA

MOV DS,AX

MOV ES,AX

CLD

LEA SI,A

LEB DI,C

MOV CX,N

MOV AH,0

LP1:LODSB

AAD

DIV B

STOSB

LOOP LP1

MOV CX,N

LEA DI,C

LP2:MOV DL,[DI]

MOV AH,2

INT 21H

DEC DI

LOOP LP2

MOV AH,4CH

INT 21H

CODE: ENDS

END START

实验二设计汇编语言程序

一.8088提供了一套字符串处理指令,这些指令的特点是:在使用前必须先在指定的寄存器中存入源字符串和目的字符串的首地址及相关字符数,在处理

过程中还可以使用REP重复操作前缀。灵活使用这些特点,将会给编程带来

很大的方便。

8088对算术运算只提供了基本指令。实际编程中需要我们加以扩展,这也要求我们很好地掌握。

二.实验内容

1.字符串统计。

在数据段中建立一个缓冲区BUFFER,变量VER,编程使得程序具有如下功能:从键盘输入一个子字符串存入VER,从键盘输入包含一个或几个子字符串的字符串存入BUFFER。统计BUFFER中的字符串含有多少个子字符串以及每个子字符串的位置。

2.双字乘法程序。

设计一个程序实现32位带符号双精度数乘法运算。由于只有8位和16位的乘法指令。因此32位乘法运算是不能直接用指令实现的。但可以用16位乘法指令,通过4次想乘然后把部分积想加。对于带符号数,可以先根据绝对值求得积。然后判断积的符号,若积为负数,应将其用补码表示。

三.实验报告:

1.提供所设计的完整的程序清单。

2.记录调试过程中发现的问题及解决方法。

3.可以考虑如何设计更好功能的程序。

提示:可以参考的程序流程图

被乘数存放:NUM1 乘数存放:NUM2

积数存放:MRLT 乘积符号标志存放:SIGN

变量NUM1,NUM2,MRLT均用DW

32位带符号数乘法流程图

32位无符号乘法子程序流程图

实验三中值滤波与均值滤波

一.在一般工业控制装置中,最常遇到的问题就是干扰。由于有工业干扰信号的存在,使得从工业现场检测的数据出错,对于不同类型的干扰可以采用不同的办法来排除。其中对于脉冲干扰常采用中值滤波和均值滤波的方法来解决能获得较好的效果。因为脉冲干扰是随机叠加在被检测信号之上的,它们造成的后果是使有用信号的幅度增大或变小。我们在采样程序中加入上述数字滤波程序就可以消除或减少这类干扰的影响。

(1)中值滤波程序:在一个采样周期中连续进行奇数次采样,依次可得奇数个采样值,取其中大小为“中值”的那个采样值作为该采样周期的测量值。

(2)均值滤波:在一个采样周期中,连续进行偶数次采样,去掉最大和最小的两个采样值,求出其余采样值的平均值。

二.实验内容

1.在数据段设变量数组合TADA1和TADA2,并存入假设的两组采样值作为某一采样周期的奇数个和偶数个采样值。

2.设计中值滤波程序求出测量值。

3.设计均值滤波程序求出测量值。

4.每个程序应能将结果显示在屏幕上。

5.在计算机上调试程序,并获得正确结果。

四.实验报告:

1.分析中值滤波和均值滤波各有什么优缺点。

2.整理出运行正确的程序清单(加以注释)。并给出程序流程图。

3.试提出对数字滤波器的改进方法或新的方法。

第二部分接口程序设计

实验四8253定时器/计数器接口与数字电子琴

一,原理

PC机的主机箱上装有一只小喇叭,由定时器8253和并行接口芯片8255控制其发音,其电路如下:

8253 DRIVER