300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 东北大学计算机硬件基础课件 东北大学计算机硬件基础实验报告模板.docx

东北大学计算机硬件基础课件 东北大学计算机硬件基础实验报告模板.docx

时间:2021-09-18 11:37:13

相关推荐

东北大学计算机硬件基础课件 东北大学计算机硬件基础实验报告模板.docx

PAGE / NUMPAGES

实验报告范例

东 北 大 学

计算机硬件技术基础实验报告

专业班级: XXX 姓名: XXX 学号: XXXX 资料个人收集整理,勿做商业用途

实验题目: 顺序程序设计 日期: 2000.09.13 资料个人收集整理,勿做商业用途

实验目的:

1) 掌握顺序程序设计方法;

2) 学习数据传送及算术和逻辑运算指令的用法;

3) 熟悉在PC机上建立、汇编、连接、调试和运行8086汇编语言程序的过程。

实验内容:

设X和Y均为8位无符号数,写一个求表达式Z=X+Y值的程序。

实验步骤:

1、输入源程序如下:

DSEG SEGMENT;数据段

X DB 12H

Y DB 34H

Z DB ?

DSEG ENDS

CSEG SEGMENT;代码段

ASSUME CS:CSEG,DS:DSEG

START: MOV AX,DSEG;段寄存器初值

MOV DS,AX

MOV AL

ADD AL,Y;求x+y和

MOV Z,AL;保存

MOV AH,4CH

INT 21H;程序结束退出

CSEG ENDS

END START

2、保存源文件,执行masm汇编源程序,生成obj目标文件,结果无错误。

3、执行link连接程序,生成exe可执行文件,结果无错误。

4、执行debug调试程序,使用t参数单步执行程序,在AL寄存器中得到计算结果46H,结果正确,执行r参数命令察看Z所在的地址单元中的数据为0002字节单元中存放46H。资料个人收集整理,勿做商业用途

思考题:本程序没有考虑进位的情况。如果考虑可能产生的进位,应如何修改程序?

答:如果考虑进位情况,应该定义Z为DW类型,在程序中执行完ADD AL,Y后,执行ADC指令。

扩展题:设X和Y均为三字节无符号数,编制程序求其和,并将结果放置在Z开始的存储单元。

因为X和Y都是三字节的无符号数,所以要给Z定义三个字节的存储空间。具体程序如下:

DSEG SEGMENT;数据段

X DB 12H,34H,56H

Y DB 34H,56H,78H

Z DB 3 DUP(?)

DSEG ENDS

CSEG SEGMENT;代码段

ASSUME CS:CSEG,DS:DSEG

START: MOV AX,DSEG;段寄存器初值

MOV DS,AX

MOV AL

ADD AL,Y;求x+y和

MOV Z,AL;保存

MOV AL,X+1

ADC AL,Y+1;求x+y和

MOV Z+1,AL;保存

MOV AL,X+2

ADC AL,Y+2;求x+y和

MOV Z+2,AL;保存

MOV AH,4CH

INT 21H;程序结束退出

CSEG ENDS

执行debug调试程序,执行d参数命令,在Z对应的存储单元中得到计算结果468ACEH,结果正确。

作业题目[程序2] 编制程序,将字节变量BVAR中的压缩BCD数转换成二进制数,并存入原变量中。

在编写程序前,首先要确定转换算法。第一步,取压缩BCD数的十位;第二步,计算十位数乘以10;第三步,取个位数相加。资料个人收集整理,勿做商业用途

程序清单如下所示。

DSEG SEGMENT

BVAR DB 99H

DSEG ENDS

CSEG SEGMENT

ASSUME CS:CSEG,DS:DSEG

START: MOVAX,DSEG

MOVDS,AX

MOVAL,BVAR

MOVCL,4

SHR AL,CL ;取高4位

MOV AH,10

MUL AH ;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。