微机原理与系统设计实验

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

微机原理与系统设计实验

指导书

电子科学与技术

福州大学物理与信息工程学院

目录

实验一数据传送程序 (1)

实验二数据运算程序 (2)

实验三键盘、显示器操作程序 (4)

实验四8255接口实验 (5)

实验五8253音频接口实验 (7)

实验六0832小直流机转速实验 (9)

实验七综合实验 (12)

附:DEBUG主要命令 (12)

实验一数据传送程序

一、实验目的:

1、掌握传送类程序的基本设计框架;

2、掌握程序汇编、连接、调试的全过程;

3、掌握汇编程序Debug的使用及观察方式。

二、实验内容

已知有一个以“$”为标志结束的字符串存于以地址string1开始的内存中,编程将上述字符串存于以地址string2开始的内存中。

三实验步骤

用masm.exe实现正确编译,用link.exe实现正确连接,用debug.exe实现对程序的跟踪、调试、观察。

用debug.exe对程序调试、观察

-N C:\JK\JK\CAI2000\STR.EXE

-L ;调入文件

-T ;单步运行

-T30 (或G 001C);运行

-D DS:0000 ;看结果

-Q ;退出

四、编程提示

由于字符串未知不能用计数方式,要使用“$”来控制循环的退出。

参考程序(有部分错误,需要修改)

DATA SEGMENT

STRING1 DB 'MNOPQXYZ $'

STRING2 DB 50 DUP(?)

DATA ENDS

COEG SEGMENT

ASSUME DS:DATA,CS:COEG

START:MOV AX,DATA

COV DS,AX

LEA SI,STRING1

LEA DI.STRING2

NEXT: CMP BYTE PTR [SI] ,'$'

JZ JSP

MOV AL,[SI]

MOV [DI],AL

INC SI

INC DI

JMP NEXT

JSP:MOV AH,4CH

INT 21H

COEG ENDS

END START

五思考问题

1 单步运行的结果如何查看。

2 Debug各常用指令T,D,Q,G,L,N的用法。(附录部分有说明)

3 各段寄存器的内容及指针的内容如何看。

4 内存的查看及表示含义, 字符串查看的方法。

5 结果正确与否,如何验证?

6 每一指令的具体用途?

7 LST文件如何生成,如何查看?它的作用。

8如何用DEBUG中的G指令直接执行结果处。

实验二数据运算程序

一、实验目的:

1、掌握运算类程序的基本设计框架;

2、掌握汇编程序调试和验证方法;

3、掌握Debug的使用及观察方式。

二、实验内容

从内存num开始的单元中存放8个同学的某门课的考试成绩,试编写程序求出该门课的总成绩及平均成绩。

三、实验步骤:

用debug.exe对程序调试、观察。

-N C:\JK\JK\CAI2000\STR.EXE

-L ;调入文件

-T

-T30 (G 0000 0030);运行

-D DS:0000H ;看结果

-Q ;退出

四、编程提示

由于循环次数已知,可用mov cx,08h;loop sum 方式循环。注意:除法运算、移位运算、累加和的进位等.

参考程序

DATA SEGMENT

num Dw 1,2,3,4,5,6,7,8

sum dw ?

ave dw ?

DATA ENDS

STACK SEGMENT

STACK ENDS

COEG SEGMENT

ASSUME DS:DATA,SS:STACK, CS:COEG

START:MOV AX,DATA

MOV DS,AX

LEA SI,NUM

MOV CX,08H

MOV AX,0H

LOP:ADD AX,[SI]

INCC SI

INC SI

LOOP LOP

MOV SUM AX

SHR AX,1

SHR AX,1

MOV AVE ,AX

MOV AH,4CH

INT 21H

COEG ENDS

END START

五思考要求

1 如何验证结果的正确及运行过程中的错误。

2 比较字节与字的存储。

3 修改程序,求出最大值,放入内存。

4 内存的查看及表示含义,数的查看。

实验三键盘、显示器操作程序

一、实验目的:1、掌握EXE文件的执行;

2、掌握汇编程序的DOS功能调用;

3、掌握汇编程序的键盘和显示器的使用。

二、实验内容

从键盘上输入5个字符如ABCDE,每组中间用空格分割后加括号输出< A B C

D E >。

三、实验步骤:

执行exe程序,直接观察结果。

四、编程提示

验证结果的正确(通读程序,对程序修改,需要增加指令后,才能看到结果,然后再按要求修改程序)

DATA SEGMENT

NUM DB '<',13 DUP (?),'>','$'

DATA ENDS

STACK SEGMENT

STACK ENDS

COSEG SEGMENT

ASSUME DS:DATA, SS:STACK, CS:COSEG

START:MOV AX, DATA

MOV DS,AX

LEA SI,NUM

INC SI

MOV CX,05H

LOP: MOV AH,01H

INT 21H

MOV [SI],AL

INC SI

MOV [SI],20H

INC SI

LOOP LOP

DEC SI

MOV [SI],'>'

LEA DX,NUM

MOV AH,09H

INT 21H

相关文档
最新文档