8088微机原理及接口技术报告.docx

上传人:b****5 文档编号:3065538 上传时间:2022-11-17 格式:DOCX 页数:9 大小:18.88KB
下载 相关 举报
8088微机原理及接口技术报告.docx_第1页
第1页 / 共9页
8088微机原理及接口技术报告.docx_第2页
第2页 / 共9页
8088微机原理及接口技术报告.docx_第3页
第3页 / 共9页
8088微机原理及接口技术报告.docx_第4页
第4页 / 共9页
8088微机原理及接口技术报告.docx_第5页
第5页 / 共9页
点击查看更多>>
下载资源
资源描述

8088微机原理及接口技术报告.docx

《8088微机原理及接口技术报告.docx》由会员分享,可在线阅读,更多相关《8088微机原理及接口技术报告.docx(9页珍藏版)》请在冰豆网上搜索。

8088微机原理及接口技术报告.docx

8088微机原理及接口技术报告

8088微机原理及接口技术报告

课程(项目)名称:

微机原理与接口技术学院:

自动化专业:

自控姓名:

学号:

指导教师:

成绩:

2021年11月26日

实验一认识实验及多字节加减法程序

一、任务与目的

1.实验任务:

(1)熟悉和掌握MASM汇编程序及TD调试软件的使用;

(2)熟悉代码段、数据段、堆栈段的结构;(3)掌握8086/8088汇编程序的结构;(4)掌握多字节加减法程序的编写。

2.实验目的:

(1).掌握8086/8088汇编程序及调试程序的基本使用方法;

(2)熟悉8086/8088汇编语言编写的基本结构;(3)熟悉多字节加减算术运算的基本方法。

二、原理(条件)

1.相关知识:

(1)MASM汇编程序及TD调试软件的使用方法;

(2)8086/8088汇编程序结构及算术运算等相关指令。

2.实验条件:

MASM汇编程序及TD调试软件。

三、内容步骤

1.启动TD(TurboDebugger)输入程序段,观察执行情况并分析结果:

(1)MOVBL,08HMOVCL,BLMOVAX,03FFHMOVBX,AXMOV[0200H],BXMOVES:

[0300H],AX

(2)MOVAX,0A268HMOVSI,9D1CHADDAX,SI

AX=3F84HCF=1AF=1ZF=0PF=1OF=1SF=0ADDAL,30H

AX=3FB4HCF=0AF=0ZF=0PF=1OF=0SF=1

ADCAX,0FFFFH

AX=3FB3HCF=1AF=1ZF=0PF=0OF=0SF=0

分析:

第一个是两个字相加,第二个是两个字节相加,第三个是两个字带进位相加,AX内结果改变的同时,FLAGS标志位也相应发生变化。

(3)输入程序段,分步运行:

MOVAX,0102HMOVBX,0304H

MOVCX,0506H

MOVDX,0708HPUSHAXPUSHBXPUSHCXPUSHDXPOPDXPOPCXPOPBXPOPAX

分析:

该段程序是对栈的操作,将AX,BX,CX,DX先后栈之后再出栈,观察到进栈出栈时栈内变化及SP指针值的变化。

2.编写多字节加/减汇编程序,观察执行情况并分析结果利用MASM宏汇编程序及TD程序进行调试。

(1)编写多字节加法汇编程序:

DATA*****

*****DB4FH,0B6H,7CH,34H,56H,1FH*****DB13H,24H,57H,68H,0FDH,9AHSUMDB6DUP(?

)CONTDB3DATAENDS

CODE*****

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATAMOVDS,AX

MOVSI,OFFSET*****MOVDI,OFFSET*****MOVBX,OFFSETSUMMOVCL,CONTMOVCH,0

CLC

GOON:

MOVAX,[SI]SBBAX,[DI]INCSIINCSIINCDIINCDI

MOV[BX],AXINCBXINCBX

LOOPGOONMOVAH,4CHINT21H

CODEENDSENDSTART

(2)编写多字节减法汇编程序:

(3)3.编写多字节加/减汇编程序时,考虑最高字节相加或相减时产生进

位或借位程序应如何编写?

请思考。

四、数据处理(现象分析)1、使用TD输入程序结果

(1)

分析:

通过TD观察到执行一段程序相应的单元就跟着改变,将AX单元的值给BX单元,再将BX单元的值送入DS段中的[0200H]单元,最后将AX单元内容送入到ES段中偏移地址是[0300H]单元内。

(2)MOVAX,0A268HMOVSI,9D1CHADDAX,SI

AX=3F84HCF=1AF=1ZF=0PF=1OF=1SF=0

ADDAL,30H

AX=3FB4HCF=0AF=0ZF=0PF=1OF=0SF=1

ADCAX,0FFFFH

AX=3FB3HCF=1AF=1ZF=0PF=0OF=0SF=0

分析:

第一个是两个字相加,第二个是两个字节相加,第三个是两个字带进位相加,AX内结果改变的同时,FLAGS标志位也相应发生变化。

(3)输入程序段,分步运行:

MOVAX,0102HMOVBX,0304HMOVCX,0506H

MOVDX,0708HPUSHAXPUSHBXPUSHCXPUSHDXPOPDXPOPCXPOPBXPOPAX

分析:

该段程序是对栈的操作,将AX,BX,CX,DX先后栈之后再出栈,观察到进栈出栈时栈内变化及SP指针值的变化。

2、利用MASM宏汇编程序及TD程序进行调试结果:

(4)编写多字节加法汇编程序:

DATA*****

*****DB4FH,0B6H,7CH,34H,56H,1FH*****DB13H,24H,57H,68H,0FDH,9AHSUMDB6DUP(?

)CONTDB3DATAENDS

CODE*****

ASSUMECS:

CODE,DS:

DATA

START:

MOVAX,DATAMOVDS,AX

MOVSI,OFFSET*****MOVDI,OFFSET*****

MOVBX,OFFSETSUMMOVCL,CONTMOVCH,0

CLC

GOON:

MOVAX,[SI]SBBAX,[DI]INCSIINCSIINCDIINCDI

MOV[BX],AXINCBXINCBX

LOOPGOONMOVAH,4CHINT21HCODEENDSENDSTART

实验过程:

将程序另存为.ASM文件放在根目录MASM所在文件夹中,在命令

符运行窗口输入CD\\--CD\\MASM\\--文件名.ASM--生成.OBJ文件,如无错误,则继续执行指令LINK,生产.EXE可执行文件,在TD内找到生成的可执行文件,设置中断之后运行,观察结果。

加法:

(5)编写多字节减法汇编程序:

将上述程序中的ADDAX,[DI]改为SBBAX,[DI]即可完成减法运算。

减法:

3、编写多字节加/减汇编程序时,考虑最高字节相加或相减时产生

进位或借位程序应如何编写?

加法:

在ADDAX,[DI]后加ADCAH,0减法:

在SBBAX,[DI]后加SBBAH,1

五、结论

简单的字母和数字组合成的代码变成了计算机可以认识的机器语言,汇编语言是计算机最低层同时也是最难的语言。

通过TD和MASM将代码变成计算机可执行的文件,模拟计算机内部的运行过程,达到目标结果。

六、参考资料

《微机与接口技术》实验指导书

七、评语

实验二屏幕字符显示程序

一、任务与目的

1.实验任务:

(1)熟悉和掌握利用DOS调用进行屏幕显示的方法;

(2)掌握屏幕字符显示程序的编写。

2.实验目的:

(1)熟悉字符串表示的语法结构;

(2)熟悉利用DOS调用编写字符屏幕显示的基本程序。

二、原理(条件)

2.相关知识:

(1)字符串显示格式;

(2)熟悉DOS调用使用方法。

2.实验条件:

MASM汇编程序及TD调试软件。

三、内容步骤

1.编写程序在屏幕上显示“姓名拼音+学号”,观察执行

情况并分析结果。

2、编写程序从键盘输入一字符串,在字符串尾插入“$”,并显示该字符,观察执行情况并分析结果。

四、数据处理(现象分析)实验程序及结果如下:

DATA*****

STRINGDB'liuyuying,***-**********,haveaniceday!

',0DH,0AH,'$'DATAEND

CODE*****

ASSUMECS:

CODE,DS:

DATASTART:

MOVAX,DATAMOVDS,AXLEADX,STRING

MOVAH,09H;显示字符串功能号INT21H;系统功能调用

MOVAH,4CH;终止当前程序,返回调用程序INT21HCODEENDS

ENDSTART

分析:

通过调用功能号09H显示字符串

DATA**********DB40ACTLENDB?

CHARSDB40DUP(20H)DATAENDS

CODE*****

ASSUMECS:

CODE,DS:

DATASTART:

MOVAX,DATAMOVDS,AX

MOVDX,OFFSET*****MOVAH,0AHINT21HXORCX,CX

MOVCL,ACTLEN

MOVDX,OFFSETCHARSMOVBX,DXADDBX,CX

MOVBYTEPTR[BX+2],'$'MOVAH,09HINT21H

MOVAH,4CHINT21HCODEENDS

ENDSTART

分析:

定义字节类型变量*****,占40个字节单元,定义字节型变量

ACTLEN为任意值存放实际输入字符数,定义字节型变量CHARS存放输入的字符串,占40个字节单元,初始值为20H,DX指向*****的偏移地址,调用功能号0AH获得从键盘输入的字符串,将CX内容清零后将ACTLEN中的内容给CL得到字符串中字符的个数,将DX内容给BX,BX与CX内容相加存入BX得到字符串尾地址,在BX+2处插入字符’$’,调用功能号显示从键盘输入的字符串。

五、结论

要在显示器上显示字符串,调用DOS功能的09H功能号,要实现调用还必须以’$’字符作为结束符。

显示时在字符串结束前加上回车换行的ASCII码的0DH和0AH,在第二个实验中结果显示的第一个是所占字节单元的数所对应的ASCII码对应的字符,第二个是加上’$’在内的字符串中的字符数所对应的ASCII码,之后才是从键盘输入的字符串。

六、参考资料

《微机原理与接口技术》实验指导书

七、评语

实验三数据比较及排序程序

一、任务与目的

1.实验任务:

(1)熟悉和掌握数据比较指令的用法;

(2)掌握多字节有符号数及无符号数排序程序的编写方法。

2.实验目的

(1).掌握数据比较指令的使用方法;

(2)熟悉数据排序实现的基本方法。

二、原理(条件)

3.相关知识:

(1)数据比较指令的使用方法;

(2)8086/8088汇编程序数据排序的基本算法。

2.实验条件:

MASM汇编程序及TD调试软件。

三、内容步骤

1.启动TD(TurboDebugger)输入程序段,观察执行情况、标志位变化并分析

结果。

然后,AX和BX互换一下数据再运行一遍,并观察结果。

(1)无符号的比较MOVAX,2C76HMOVBX,0FF80HCMPAX,BX

JAEABOVE;注意ABOVE由具体地址替代,下同。

XCHGAX,BXABOVE:

HLT

(2)带符号数的

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 判决书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1