微机实验报告3 - 图文

更新时间:2024-05-24 20:20:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

南京工程学院

电力工程学院

2011/ 2012 学年 第 1 学期

实 验 报 告

课程名称 微机原理及应用 实验项目名称 顺序结构程序设计 实验学生班级 监控091 实验学生姓名

实验时间 2011.10.23 实验地点 电力工程基础实验室8-216

实验报告成绩: 评阅教师签字:

年 月 日

电力工程学院二OO七年制

说 明

1. 实验报告为实验的重要考核依据之一, 每个实验必须定一份实验报告. 本实验报告原则上要求手写。

2.本实验报告各项内容的具体格式、字数可由指导教师根据实验具体情况提出具体要求。各项内容可另附页,为便于归档,附页尺寸不得大于本实验报告尺寸,并注意粘牢于附页粘贴处。

3. 实验报告封面中的 “实验名称” 应为实验教学大纲上所列的规范名称, “实验地点”应写出实验室的具体名称。请确认无误后再填写。 4. 实验报告的建议格式为: 一、实验目的和要求; 二、主要实验仪器和设备; 三、本次实验内容

(一)实验项目名称(按本次实验各项目填写) 1、原理或接线图 2、实验步骤及注意事项

3、实验预习过程中所遇到问题??

四、实验记录及数据处理(主要内容包括实验具体实施步骤、实验原始数据、 计算过程与结果、 数据曲线、 图表等。 具体格式按指导教师要求) 五、实验结论(主要内容包括本实验小结、 实验体会或疑问等。具体格式按指导教师要求)

5. 实验成绩由实验预习、实验表现、 实验报告三部分组成。其中前两项各占总成绩的30%。实验报告成绩依据报告的科学性、全面性、规范性及书写态度综合考核。 实验报告采用百分制, 占实验总成绩的40%, 教师请阅本报告后需签字并给出实验报告百分制成绩。

6. 实验报告需按要求时间以班级为单位交给指导教师,最长时间不得超过两周,实验报告如有明显抄袭者或不交者,实验总评成绩按 0 分记。

2

一、实验目的和要求

1、熟悉汇编语言集成编译软件的使用方法。 2、熟悉8086汇编指令,能自己编写简单的程序并调试运行验证结果。

二、实验任务

学习使用汇编语言集成编译软件,软件提供了编辑、编译、运行、调试汇编语言程序的集成环境。验证及编写、调试实验内容。

三、主要实验设备和软件

星研集成环境软件

四、实验内容 1、实验题目:

(1)编写程序,计算{W-(X+120)*Y+200}/Z的值,其中W、X、Y、Z均为带符号数。将计算结果分别存放在以RESULT单元开始的数据区中。 (2)、程序清单:

DATA SEGMENT

W DW 1200 ;数据定义 X DW -30 Y DW -25 Z DW 500 RESULT DW 2 DUP(?) DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AX,X

ADD AX,120 ;X+120,注意标志位变化

IMUL Y ;(X+120)*Y,注意标志位变化 MOV CX,AX

MOV BX,DX ;乘积暂存BX:CX MOV AX,W ;将W带符号位扩展 CWD

SUB AX,CX

SBB DX,BX ;结果在DX:AX中,注意标志位变化 ADD AX,200 ;实现W-(X+120)*Y+120,注意标志位

变化

ADC DX,0 ;结果在DX:AX中,注意标志位变化 IDIV Z ;商在AX中,余在DX中,注意标志位变化 MOV RESULT,AX ;存放结果到数据区 MOV RESULT+2,DX MOV AH,4CH INT 21H CODE ENDS

END START

(3)、运行结果 截屏

3

X+120,注意标志位变化

(X+120)*Y,注意标志位变化

4

结果在DX:AX中,注意标志位变化

实现W-(X+120)*Y+120,注意标志位变化

5

商在AX中,余在DX中,注意标志位变化

观察得RESULT的商为7H,余为96H(对应观察AL,DL)。验证程序成功。

6

(4)、分析与思考:此实验比较简单,只是要注意符号位的变化和除法的扩展等。 2、编写程序:

(1)、实验题目: 实现组合BCD码转换成ASC码并送CTR显示。 (2)、程序清单:

CODE SEGMENT ASSUME CS:CODE

BEGIN : MOV AL,27H ;27的BCD码,先显示高位 MOV DL,AL MOV BL,AL MOV CL,4 SHR DL,CL OR DL,30H MOV AH,38H MOV AH,2H

INT 21H ;显示“2” MOV DL,BL AND DL,0FH OR DL,30H MOV AH,2

INT 21H ;显示“7” MOV AH,4CH INT 21H CODE ENDS

END BEGIN

(3)、运行结果 :截屏

回显“2”

7

回显“7”

(4)、分析与思考:此实验主要是关于AL累加器的变化,由于在使用显示指令后AL中的值发生了变化,所以在一开始将AL赋给BL,保持一下,到显示'7'时再回送即可。

3.编写程序:

(1)、实验题目:试编写:设XYZ已定义为字节变量,若X和Y各存放一个32位(四字节)的无符号数,存放顺序是低位字节在先,试写出将X 和Y相加,结果存入Z的程序段。 (2)、程序清单:

DATA SEGMENT

X DB 0CDH,0ABH,34H,012H Y DB 0BAH,0DCH,21H,43H Z DB ? DATA ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX LEA BX,X MOV AL,[BX] ADD AL,Y MOV Z,AL

8

MOV AL,[BX+1] ADC AL,Y+1 ;保持低位的进位,所以用ADC MOV Z+1,AL MOV AL,[BX+2] ADC AL,Y+2 MOV Z+2,AL MOV AL,[BX+3] ADC AL,Y+3 MOV Z+3,AL MOV AH,4CH INT 21H CODE ENDS END START (3)、运行结果 截屏 注:本实验中X=1234ABCDH,Y=4321DCBAH。应实验要求低字节在先存放,最后应得Z=55568887H。现用截屏进行验证。

得Z=55568887H。验证程序成功。 (4)、分析与思考:此实验主要是将两个32位无符号数存放在以字节为单元的存储空间中进行加和计算,要注意的就是低位的进位。 四、实验思考题 编写程序实现运算(式中W1W2W3W4为字节变量,运算结果的商存放在W3,余数存放在W4中):(W1 -W2)/10 W3,W4。 程序清单:DATA SEGMENT W1 DW 98H

9

W2 DW 12H W3 DW ? W4 DW ? DATA ENDS CODE SEGMENT

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX MOV AX,W1 MOV BX,W2 SUB AX,BX SUB DX,DX MOV BX,10H DIV BX MOV W3,AX MOV W4,DX MOV AH,4CH INT 21H CODE ENDS

END START

(注:最后W3=0008H,W4=0006H,已经经过EMU8086调试验证程序成功。)

五、实验结论

此次顺序结构实验不是很难,主要是锻炼编写和调试基本代码的能力,进一步熟悉指令,伪指令等,用EMU8086感觉比clab还上手,很好用,查标志、查变量都一步到位。

10

本文来源:https://www.bwwdw.com/article/r8w7.html

Top