001实验指导书南京工程学院 - 图文(2)

2019-01-12 15:15

LESS: NEXT: CODE

MOV INC LOOP NOP MOV INT ENDS END

MIN, AL BX LAST AH, 4CH 21H

START ;小数->MIN

;实验时程序执行到此,通过D命令查看数据段结果

2. 代码转换实验

从键盘输入2个十进制数组合成压缩BCD码存入DL,再将压缩BCD码转换成ASCII码送CRT显示。 源程序: CODE SEGMENT ASSUME CS:CODE ST: MOV AH, 01H ;键盘输入并回显,AL=输入字符 INT 21H MOV CL, 4 SHL AL, CL MOV DL, AL MOV AH, 01H INT 21H AND AL, 0FH OR DL, AL MOV BL, DL ;保护DL原值 SHR DL, CL OR DL, 30H MOV AH, 02H ;显示十位数,DL=输出字符 INT 21H MOV DL, BL AND DL, 0FH OR DL, 30H MOV AH, 02H ;显示个位数 INT 21H MOV AH, 4CH INT 21H CODE ENDS END ST

要求先编写汇编文件,运用MASM.EXE、LINK.EXE汇编链接运用DEBUG或EMU8086采用单步调试的方法进行运行调试,任意输入两个数字,验证实验结果。

六、实验报告

实验报告要求参考附录一。

6

实验三 顺序结构程序设计

一、实验目的和要求

1. 熟悉星研集成环境软件的使用方法。熟悉Borland公司的TASM编译器; 2. 熟悉8086汇编指令,能自己编写简单的程序,并调试运行验证结果。

二、实验任务

学习使用星研集成环境软件,验证及编写调试实验内容的程序。

三、实验设备和软件

星研集成环境软件(参考附录四)

四、预习内容和要求

1. 预习附录四星研集成环境软件,熟悉星研集成环境软件的使用。 2. 复习顺序结构程序的设计方法,预习实验内容。

五、实验内容

1. 编写简单程序,用数据运算指令,对两个16位数做加法运算。这两个数从地址10050H开始连续存放,低位在低地址一端,结果放在这两个数之后。

实验框图:

开始 初始化 段地址DS:0000H , 被加数指针SI←50H 加数指针DI←52H ,和的指针BX←54H 段地址DS:0000H , 被加数指针SI←50H 清除AX和CF 被加数→AX 被加数+加数→AX AX→(00054)和(00050)单元 暂停

程序清单: CODE BG:

SEGMENT ASSUME MOV MOV MOV MOV

CS:CODE AX,0000H DS,AX SI,50H DI, 52H

7

MOV BX, 54H CLC

XOR AX, AX MOV AX, [SI] ADC AX, [DI] MOV [BX], AX HLT CODE ENDS END BG

2. 编写简单程序,实现组合BCD码转换成ASCII码送CRT显示。

程序清单: CODE SEGMENT ASSUME CS:CODE BEGIN: MOV AL,27H ;27的BCD码,先显示高位。 MOV DL, AL MOV CL, 4 SHR DL, CL OR DL, 30H MOV AH, 2 INT 21H ;显示'2' MOV DL, AL AND DL, 0FH OR DL, 30H MOV AH, 2 INT 21H ;显示'7' MOV AH, 4CH INT 21H CODE ENDS END BEGIN

3. 试用已学过的指令编程,运算以下算式: ⑴、5555H + 6666H + 8756H ⑵、5678 +(-1234)- 4321

4. 已知BX=12ABH,试编程将其内容转换成ASCII码送到数据段0100H单元开始存放。

六、实验报告

实验报告要求参考附录一。

8

实验四 分支结构程序设计

一、实验目的和要求

1. 学习分支结构程序的设计和调试方法;

2. 熟悉8086汇编指令中的程序控制指令的应用。

二、实验任务

学习使用星研集成环境软件,验证及编写、调试实验内容。

三、实验设备和软件

星研集成环境软件(参考附录四)

四、预习内容和要求

1. 熟悉星研集成环境软件的使用。

2. 复习分支结构程序的设计方法,预习实验内容。

五、实验内容

1. 已知在内存中有一个字节单元NUM,存有带符号数据,要求计算出它的绝对值后,放入RESULT单元中。

题目分析:根据数学中绝对值的概念知道,一个正数的绝对值是它本身,而一个负数的绝对值是它的相反数;要计算一个数的相反数,需要完成减法运算,即用0减去这个数。8086/8088指令系统中有专门的求相反数的指令NEG。 实验框图:

开 始 初始化 将X中的内容取到AL中 AL≥0? Y N 将AL中的内容求补 AL中的内容送RESULT单元 结束

; 初始化 ;X取到AL中

程序清单: DATA X

RESULT DATA CODE

START:

SEGMENT DB DB ENDS SEGMENT ASSUME MOV MOV MOV -25 ?

CS:CODE, DS:DATA AX,DATA DS, AX AL, X

9

TEST AL, 80H ;测试AL正负 JZ NEXT ;为正,转NEXT

NEG AL

否则AL求补 NEXT: MOV RESULT, AL ;送结果 MOV AH, 4CH

INT 21H ;返回DOS CODE ENDS

END START

;汇编结束

2. 编写计算下面函数值的程序: 1 X>0

Y= 0 X=0 -1 X<0

设输入数据为X、输出数据Y,且皆为字节变量。

3. 试编一程序,求三个带符号字数据中的最大值,并将最大值存入MAX字单元中。设三个带符号数分别在三个字变量X、Y、Z中存储。

六、实验报告

实验报告要求参考附录一。

10


001实验指导书南京工程学院 - 图文(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:参加领导干部政治理论培训班学习的心得体会

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: