当前位置:文档之家 > 微机原理与接口技术实验报告参考

微机原理与接口技术实验报告参考

微机原理与接口技术

实验报告

实验一显示程序实验

一、实验目的

1. 掌握在PC机上以十六进制形式显示数据的方法;

2. 掌握部分DOS功能调用使用方法;

3. 熟悉Tddebug调试环境和Turbo Debugger的使用。

二、实验所用设备

1. PC微机一台。

三、实验内容

一般来说,程序需要显示输出提示运行的状况和结果,有的还需要将数据区中的内容显示在屏幕上。本实验要求将指定数据区的数据以十六进制数形式显示在屏幕上,并通过DOS功能调用完成一些提示信息的显示。实验中可使用DOS功能调用(INT 21H)。

(1) 显示单个字符输出

入口:AH=02H

调用参数:DL=输出字符

(2) 显示字符串

入口:AH=09H

调用参数:DS:DX=串地址,’$’为结束字符

(3) 键盘输入并回显

入口:AH=01H

返回参数:AL=输出字符

(4) 返回DOS系统

入口:AH=4CH

调用参数:AL=返回码

四、实验步骤

1.运行Tddebug软件,选择Edit菜单,根据实验内容的描述编

写实验程序,本实验显示部分参考实验流程如图1-1示;

2.使用Compile菜单中的Compile和Link对实验程序进行汇

编、连接;

3.使用Rmrun菜单中的Run,运行程序,观察运行结果;

4.使用Rmrun菜单中的Debug,调试程序,观察调试过程中,

数据传输指令执行后,各寄存器及数据区的内容;

5.更改数据区中的数据,考察程序的正确性。

微机原理与接口技术实验报告参考

图1-1 显示程序实验流程图

五、程序清单

DATA SEGMENT

MES DB 'laoshihao:', 0AH,0DH,'$' SD DB 'b'

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DATA

START: MOV AX, DATA

MOV DS, AX

MOV DX, OFFSET MES

MOV AH, 09H

INT 21H

MOV DI, OFFSET SD

MOV AL, DS:[DI]

AND AL, 0F0H

SHR AL,4

CMP AL, 0AH

JB L1

ADD AL, 07H

L1: ADD AL, 30H

MOV DL, AL

MOV AH, 02H

INT 21H

MOV AL, DS:[DI]

AND AL, 0FH

CMP AL, 0AH

JB L2

ADD AL, 07H

L2: ADD AL, 30H

MOV DL, AL

MOV AH, 02H

INT 21H

MOV AX, 4C00H

INT 21H

CODE ENDS

END START

六、实验调试过程

调试过程中出现警告,显示没有使用堆栈段。但是程序编写本身没有使用,因此程序运行相对正常。第一个实验熟悉了轻松汇编软件的操作,为之后的实验打下了基础。

七、实验运行结果

微机原理与接口技术实验报告参考

实验二数据传送实验

一、实验目的

1. 熟悉Tddebug调试环境和Turbo Debugger的使用;

2. 掌握与数据有关的不同寻址方式。

二、实验所用设备

1. PC微机一台。

三、实验内容

将数据段中的一个字符串传送到附加段中,并输出附加段中的目标字符串到屏幕上。

实验程序:

DDATA SEGMENT

MSR DB "LAOSHIXINKULE!$"

LEN EQU $- MSR

DDATA ENDS

EXDA SEGMENT

MSD DB LEN DUP(?)

EXDA ENDS

MYSTACK SEGMENT STACK

DW 20 DUP(?)

MYSTACK ENDS

CODE SEGMENT

ASSUME CS:CODE, DS:DDATA, ES:EXDA

START: MOV AX, DDATA

MOV DS, AX

MOV AX, EXDA

MOV ES,AX

MOV SI, OFFSET MSR

MOV DI, OFFSET MSD

MOV BX, 0

MOV CX, LEN

NEXT: MOV AL, MSR[BX]

MOV ES:MSD[BX], AL

INC BX

LOOP NEXT

PUSH ES

POP DS

MOV DX, OFFSET MSD

MOV AH, 9

INT 21H

MOV AX, 4C00H

INT 21H

CODE ENDS

END START

四、实验步骤

1.运行Tddebug软件,选择Edit菜单编写实验程序;

2.使用Compile菜单中的Compile和Link对实验程序进行汇编、

连接;

3.使用Rmrun菜单中的Run,运行程序,观察运行结果;

4.使用Rmrun菜单中的Debug,调试程序,观察调试过程中,

数据传输指令执行后,各寄存器及数据区的内容;

5.更改数据区中的数据,考察程序的正确性。

五、实验调试过程

程序中使用了寄存器相对寻址的方式。编译、连接、运行后程序运行正常。

输入的字符显示在屏幕上。

六、实验运行结果

微机原理与接口技术实验报告参考

实验三数码转换程序实验

一、实验目的

掌握不同进制数及编码相互转换的程序设计方法。

二、实验所用设备

PC微机一台。

三、实验步骤

1.运行Tddebug软件,选择Edit菜单编写实验程序;

2.使用Compile菜单中的Compile和Link对实验程序进行汇编、

连接;

3.使用Rmrun菜单中的Run,运行程序,观察运行结果;

4.使用Rmrun菜单中的Debug,调试程序,观察调试过程中,

数据传输指令执行后,各寄存器及数据区的内容;

5.更改数据区中的数据,考察程序的正确性。

四、实验内容

计算机输入设备输入的信息一般是由ASCII码或BCD码表示的数据或字符,CPU用二进制数进行计算或其它信息处理,处理结果的输出又必须依照外设的要求变为ASCII码、BCD码或七段显示码等。因此,在应用软件中,各类数制的转换和代码的转换是必不可少的。计算机与外设间的数码转换关系如图3-1所示,数码对应关系如表3-1所示。

微机原理与接口技术实验报告参考

图3-1 计算机与外设间的数码转换关系

1.将ASCII码表示的十进制数转换为二进制数

十进制数可以表示为:Dn×10n+Dn-1×10n-1+…+D0×100 =Di×10i 其中Di代表十进制数1、2、3…9、0。

上式可以转换为:

ΣDi×10i=((…(Dn×10+Dn-1)×10)+Dn-2)×10+…+D1)×10+D0 由上式可归纳十进制数转换为二进制的方法:从十进制数的最高位Dn开始作乘10加次位的操作,依次类推,则可求出二进制数结果。

本实验要求将缓冲区中的一个五位十进制数00012的ASCII码转换成二进制数,并将转换结果按位显示在屏幕上。转换过程的参考流程如图3-2所示。

(1)实验流程图

微机原理与接口技术实验报告参考

图3-2 十进制ASCII转换为

二进制数参考流程(2)实验程序

DATA SEGMENT

MSR DB "00012"

LEN EQU $-MSR

DATA ENDS

CODE SEGMENT ;

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV SI,OFFSET MSR

MOV CX,LEN-1

MOV AL,DS:[SI]

MOV AH,0

SUB AX,30H

A1: MOV BX,0AH

MUL BX

INC SI

MOV DL,DS:[SI]

MOV DH,0

SUB DX,30H

ADD AX,DX

DEC CX

JNZ A1

MOV CL,16

MOV BX,AX

A2: ROL BX,1

MOV DL,BL

AND DL,01H

ADD DL,30H

MOV AH,2H

INT 21H

DEC CL

JNZ A2

MOV AX,4C00H

INT 21H

CODE ENDS

END START

(3)调试过程

调试过程正常没有出现问题。

(4)实验结果

微机原理与接口技术实验报告参考

2.将十进制数的ASCII码转换为BCD码

本实验要求将键盘输入的一个五位十进制数54321的ASC II码存放入数据区中,转换为BCD 码后,并将转换结果按位分别显示于屏幕上。若输入的不是十进制数的ASC II码,则输出“FF”。提示:

一字节ASC II码取其低四位即变为BCD码。转换部分的实验流程参见3-3。

(1)实验流程

微机原理与接口技术实验报告参考

图3-3 十进制ASCII转换为

BCD码参考流程

(2)实验程序

DATA SEGMENT

STRING DB 'INPUT:','$'

STRING1 DB 'OUTPUT:','$'

MSR DB 6,?,6 DUP(?)

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

LEA DX,STRING

MOV AH,09H

INT 21H

MOV DX,OFFSET MSR

MOV AH,0AH

INT 21H

MOV DL,0AH

MOV AH, 02H

INT 21H

MOV DL,0DH

MOV AH, 02H

INT 21H

LEA DX,STRING1

MOV AH,09H

INT 21H

MOV CL,[MSR+1]

MOV SI,0002H

MOV BX,OFFSET MSR A1: MOV AL,[BX+SI]

CMP AL,40H

JNC B1

SUB AL,30H

MOV CH,0

PUSH CX

MOV CL,4

MOV DH,AL

SHL DH,CL

A2: ROL DH,1

MOV DL,DH

AND DL,01H

ADD DL,30H

MOV AH,02H

INT 21H

DEC CL

JNZ A2

POP CX

INC SI

DEC CL

JNZ A1

B1: JZ B2

MOV DL,46H

MOV AH,02H

INT 21H

INC SI

DEC CL

JNZ A1

B2: MOV AX,4C00H

INT 21H

CODE ENDS

END START

(3)调试过程

调试过程中在换行显示时遇到了问题,无法换行显示。经过检查发现在显示过程中的换行代码写错了,改正之后程序显示正常。

(4)实验结果

微机原理与接口技术实验报告参考

3.将十六进制数的ASCII码转换为十进制数

十六位二进制数的值域为0-65535,最大可转换为五位十进制数。五位十进制数可表示为:

N D =D

4

×104+D

3

×103+D

2

×102+D

1

×10+D

因此,将十六位二进制数转换为五位ASCII码表示的十进制数,

就是求D

1-D

4

,并将它们转化为ASCII码。

本实验要求将缓冲区中存放的000CH的ASCII码转换成十进制数,并将转换结果显示在屏幕上。

(1)实验流程

微机原理与接口技术实验报告参考

图3-4 将十六进制数的ASCII码转换为十进制数

(2)实验程序

DATA SEGMENT

MSR DW 000CH

MDR DB 5 DUP(?),'$'

DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET MDR

MOV SI,5

MOV AX,[MSR]

A1: DEC SI

MOV DX,0

MOV CX,0AH

DIV CX

ADD DL,30H

MOV [BX+SI],DL

CMP AX,0

JNE A1

JE A3

A2: DEC SI

MOV AL,30H

MOV [BX+SI],AL

CMP SI,0

JNE A2

A3: MOV DX,OFFSET MDR

MOV AH,09H

INT 21H

MOV AX,4C00H

INT 21H

CODE ENDS

END START

(3)调试过程

调试过程中在显示时遇到了问题,无法逐个显示。改为直接显示之后程序显示正常。

(4)实验结果

第17 页

微机原理与接口技术实验报告参考

4.BCD码转换为二进制码

本实验要求将四个二位十进制数的BCD码存放在某一内存单元中,转换出的二进制数码存入其后的内存单元中,转换结束,送屏幕显示。

(1)实验流程

第18 页

微机原理与接口技术实验报告参考

图3-5 BCD码转换为二进制码

参考流程

(2)实验程序

DATA SEGMENT

MSR DB 03H,02H,03H,05H,07H,06H,07H,08H,4 DUP(?) DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA

START: MOV AX,DATA

MOV DS,AX

MOV BX,OFFSET MSR

MOV DI,8

MOV CX,4

MOV DH,0AH

A1: MOV SI,1

MOV AL,[BX+SI]

MUL DH

DEC SI

ADD AL,[BX+SI]

MOV [BX+DI],AL

PUSH CX

第19 页

微机原理与接口技术实验报告参考
微机原理与接口技术实验报告参考_调查/报告_表格/模板_实用文档。下载可编辑 微...
微机原理与接口技术实验报告
资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。 微机原理与接口技术实验报告 班级: 通信 1309 姓名: 张哲熙 学号: 13212171 资料内容仅供您学习......
微机原理与接口技术实验报告
微机原理与接口技术实验报告_计算机软件及应用_IT/计算机_专业资料 人阅读|次下载 微机原理与接口技术实验报告_计算机软件及应用_IT/计算机_专业资料。. 目录实验......
微机原理与接口技术 实验报告
微机原理与接口技术 实验报告 学院: 计算机与通信工程学院 专业: 计算机科...
微机原理与接口技术 实验报告
微机原理与接口技术 实验报告 计算机与通信工程学院学院: 计算机科学与技术专业:...
微机原理与接口技术实验报告
微机原理与接口技术 实验报告 班级: 姓名: 学号: 授课教师: 自动化(铁道信号) *** 1121*** 福恩 目录 1. 实验一 ... 微机原理与接口技术 实验报告 班级:......
微机原理与接口技术实验报告》模板
武汉工程大学实验报告 姓名:刘斐 班级:楼宇自动化 01 班 学号 1104170109 实验台编号: 7 同组成员 石希希,郭闻凰,邢梦瑶 课程名称:微机原理与接口技术 实验成绩......
微机原理与接口技术实验报告
微机原理与接口技术实验报告_计算机软件及应用_IT/计算机_专业资料。《微机原理...
微机原理与接口技术 实验报告
微机原理与接口技术 实验报告 学院: 计算机与通信工程学院 专业: 计算机科学与技术 班级: 学号: 姓名: 注:文档可能无法思考全面,请浏览后下载,供参考。 实验一 ......
微机原理与接口技术实验报告
微机原理与接口技术实验报告班 级: 通信 1309 姓名: 张哲熙 学号: 指导...
微机原理与接口技术 实验报告
. 实验一 8259 中断控制器应用实验一、实验目的 1.掌握 PC 机中断 . 微机原理与接口技术 实验报告学院: 计算机与通信工程学院 专业: 计算机科学与技术 班级: ......
微机原理与接口技术 实验报告
. 实验一 8259 中断控制器应用实验 一、实验目的 1.掌握 PC 机中断 . 微机原理与接口技术 实验报告 学院: 计算机与通信工程学院 专业: 计算机科学与技术 班级:......
微机原理与接口技术实验报告-全实例代码
微机原理与接口技术实验报告-全实例代码_计算机软件及应用_IT/计算机_专业资料...
微机原理与接口技术实验报告
微机原理与接口技术实验报告通信 1309 姓名: 张哲熙学 号:13212171...
微机原理与接口技术实验报告.
关键词: 控制继电器 8255A 芯片 3 南京信息工程大学《微机原理与接口技术综合实验》实验报告书一.实验目的 1、进一步熟悉汇编语言的设计编写 2、掌握继电器控制的......
微机原理与接口技术实验报告
. 微机原理与接口技术 实验报告学院: 计算机与通信工程学院 专业: 计算机科学...
微机原理与接口技术实验报告
微机原理与接口技术 实验报告 班级:通信 0702 姓名:刘海帝 学号:0721...
微机原理与接口技术-实验报告
微机原理与接口技术-实验报告_计算机软件及应用_IT/计算机_专业资料。. 微机原理与接口技术 实验报告 学院: 计算机与通信工程学院 专业: 计算机科学与技术 班级: ......
微机原理与接口技术实验报告
v1.0 可编辑可修改微机原理与接口技术实验报告班 级: 通信 1309 姓名:...
微机原理与接口技术实验报告
微机原理与接口技术实验报告 班级: 通信 1309 姓名: 哲熙 学号: 132...