电子科技大学中山学院学生实验报告

  电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验一 汇编语言程序的建立和运行

  实验时间:

  成

 绩:

 教师签名:

  批改时间:

 一、实验目的和任务

 1. 熟悉伪指令和汇编运算符,掌握汇编语言程序的编写方法。

 2. 学习汇编语言源程序的编辑、汇编、连接、调试及运行的全过程。

 二、实验内容

 熟悉伪指令和汇编运算符的检查性编程练习。

 填写以下空白并上机检查答案是否正确。

 ;EXSE1.ASM DATA

 SEGMENT

 QA1 EQU 255

  ;QA1________ QA2=QA1 GT 3000

  ;QA2________ QA3=0FFFH

 ;QA3________ QA4 EQU QA3-255

 ;QA4________ QA5=88H SHR 2

  ;QA5________ ORG 1060H G1 DB 32,QA1

 G2 DW 0FF6H

  G3 DW 3 DUP(5)

 G4 DW SEG G1

 SA EQU LENGTH G3

 ;SA________ SB EQU SIZE G3

 ;SB________ SC=TYPE G3

  ;SC________ ORG 1200H F1=THIS WORD

  F2 DB 11H,22H,33H,44H

  ;1200H: ___ ___ ___ ___ FF DD 12345H

 ;1204H: ___ ___ ___ ___ DATA

 ENDS

 CODE

 SEGMENT

 ASSUME

 CS:CODE,DS:DATA START

 PROC FAR

  PUSH DS

  XOR AX, AX

  PUSH AX

  MOV AX, DATA

 MOV DS, AX

  ;DS________

  MOV AL, BYTE PTR G2

 ;AL________

  MOV BL, SB

  ;BL________

  MOV AX, WORD PTR FF

  ;AX________

  AND AX, 0FFH

  ;AX________

  MOV BL, G1+1

 ;BL________

  MOV BX, 255 AND 0FH

 ;BX________

  MOV CL, HIGH QA4

  ;CL________

  MOV AL, QA2

  ;AL________

  MOV BL, QA5

 ;BL________

  ADD AX, OFFSET F2

 ;AX________

  MOV BX, F1

  ;BX________

  RET START ENDP CODE ENDS END

 START 三、实验过程和数据记录

 1.汇编语言程序的上机过程如下:

 2.将程序运行时对应的寄存器和内存单元的内容填在“实验内容”处。

 四、发挥与提高 请将数据段中的 TAB 开始的 20 个单元置入 0FFH,编写完整程序并上机调试。

 五 、实验小结

  电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验二 显示程序实验

  实验时间:

  成

 绩:

 教师签名:

  批改时间:

 一、实验目的和任务

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

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

 3. 熟悉 Tubo Debugger 的使用方法。

 二、实验内容

 一般来说,有很多程序需要显示运行的状态和结果,有的还需要将数据区中的内容显示在屏幕上.本实验要求将指定数据区的数据以十六进制形式显示在屏幕上,并通过 DOS 功能调用完成一些提示信息的显示.实验中可使用 DOS 功能调用(INH21H). 1.显示单个字符 入口:AH=02H 调用参数:DL=输出字符 2.显示字符串 入口:AH=09H 调用参数:DS:DX=串地止$为结束字符 3.盘输入并回显 入口:AH=01H 返回参数:AL=输出字符 4.返回 DOS 系统 入口:AH=4CH 调用参数:AL=返回码 END STAR

 看懂以下程序并验证结果:

 DATA

 SEGMENT

  MES

 DB

 ‘SHOW A AS HEX:’, 0AH,0DH,’$’ SD

  DB

 ‘A’ 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 SI,OFFSET SD

 MOV AL,DS:[SI]

  ;取高 4 位

 AND AL,0F0H

 SHR AL,4

 ;是否是 A 以上的数

 CMP AL,0AH

 JB

 C2

 ;调整 ASCII 码值

 ADD AL,07H C2:

 ADD AL,30H

 ;显示字符

 MOV DL,AL

 MOV AH,02H

 INT

 21H

 MOV AL,DS:[SI]

  ;取低 4 位

 AND AL,0FH

 CMP AL,0AH

 JB

 C3

 ADD AL,07H C3:

 ADD AL,30H

 ;显示字符

 MOV DL,AL

 MOV AH,02H

 INT

 21H

 ;返回 DOS

 MOV AX,4C00H INT

 21H CODE

 ENDS

 END START

  三、实验过程和数据记录

 1.该程序使用到哪些 DOS 功能调用指令,并指出其实现的具体功能。

 2.该程序得到以下运行结果:

  3. 发挥与提高

 四、实验小结

 电子科技大学中山学院学生实验报告

  学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应 用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验三汇编语言程序设计

  实验时间:

  成

 绩:

 教师签名:

  批改时间:

 一、实验目的和任务

 掌握汇编语言程序的设计方法,熟悉汇编语言程序的上机步骤和调试方法。

 二、实验内容

 1.编写程序,用键盘输入一个数字,判断是奇数还是偶数,若是奇数显示“ODD”,若是偶数显示“PARITY”。

 编程提示:

 实验中可使用 DOS 功能调用(INT

 21H). 显示单个字符

 入口:AH=02H,

 调用参数:DL=输出字符; 显示字符串

 入口:AH=09H, 调用参数:DS:DX=串地止$为结束字符; 键盘输入并回显

 入口:AH=01H

  返回参数:AL=输出字符; 返回 DOS 系统

  入口:AH=4CH

  调用参数:AL=返回码。

 2.编程计算下列函数的值:

 1

 (X>0)

 Y=

 0

 (X=0) -1

 (X<0)

  3.

 在以 BUFFER 为首址的内存中存放了若干个带符号数,寻找出它们最大值放到存储单元 MAXVAL 中, 最小值放到存储单元 MINVAL 中。(选做)

 三、实验过程和数据记录

  完整的源程序如下:

 四、实验小结

  电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验四 可编程并行接口 8255(方式 0)

 实验时间:

  成

 绩:

 教师签名:

  批改时间:

  一、实验目的和任务

 掌握8255方式0的工作原理及使用方法。

 二、实验内容

 1.实验电路如图4-1,8255C口接逻辑电平开关K0~K7,A口接LED显示电路L0~L7。

 2. 编程从8255C口输入数据,再从A口输出。

 图4-1

 图4-2 编程提示:

 1)8255控制寄存器端口地址28BH A口的地址288H C口的地址28AH 2)参考流程图(见图4-2)

 三、实验过程和数据记录

 1.源程序:

  2.运行程序得到怎样的控制效果?

 四、实验小结

 电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验五 七段数码管

 实验时间:

  成

 绩:

 教师签名:

  批改时间:

  一、实验目的和任务

 掌握数码管显示数字的原理。

 二、实验内容

 1. 静态显示:按图5-1连接好电路,将8255的A口PA0~PA6分别与七段数码管的段码驱动输入端a~g相连,位码驱动输入端S1接+5V(选中),S0、dp接地(关闭)。编程从键盘输入一位十进制数字(0~9),在七段数码管上显示出来。

 2. 动态显示:按图5-2连接好电路,七段数码管段码连接不变,位码驱动输入端S1,S0接8255 C口的PC1,PC0。编程在两个数码管上显示“56”。

 3. 动态显示:使用图5-2的电路,编程在两个数码管上循环显示“00-99”。

 图 5-1

  图 5-2

  编程提示:

 1)实验台上的七段数码管为共阴型,段码采用同相驱动,输入端加高电平选中的数码管亮,位码加反相驱动器,位码输入端高电平选中。

 2)七段数码管的字型代码表如下表:

 3)参考流程图(见图5-2)

 图5-3 三、实验过程和数据记录

 1.静态显示的程序和动态显示‘56’的程序:

  2.运行程序得到怎样的控制效果?

  四、实验小结

 电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验六 可编程定时器/计数器 ( (8253)

 )

 实验时间:

  成

 绩:

 教师签名:

  批改时间:

 一、实验目的和任务

 掌握8253的基本工作原理和编程方法。

 二、实验内容

 1. 按图6-1虚线连接电路,将计数器0设置为方式0,计数器初值为N(N≤0FH),用手动逐个输入单脉冲,编程使计数值在屏幕上显示,并同时用逻辑笔观察OUT0电平变化(当输入N+1个脉冲后OUT0变高电平)。

 图 6-1

 2. 按图6-2连接电路,将计数器0、计数器1分别设置为方式3,计数初值设为1000,用逻辑笔观察OUT1输出电平的变化(频率1HZ)。

 图6-2

 编程提示:

 1、8253控制寄存器地址283H 计数器0地址280H 计数器1地址281H CLK0连接时钟1MHZ 2、参考流程图(见图6-3、6-4):

 图6-3

  图6-4

 三、实验过程和数据记录

 1.源程序:

  2.运行程序得到怎样的控制效果?

  四、实验小结

  电子科技大学中山学院学生实验报告

 学院:

 机电工程

 专业 :

 课程名称:

 微机原理与应用实验

 班级:

  姓名:

 学号:

 组别:

 实验名称:实验七 串行通讯(8250)

  实验时间:

  成

 绩:

 教师签名:

  批改时间:

  一、实验目的和任务

 1.了解串行通讯的基本原理。

 2.掌握串行接口芯片8250的工作原理和编程方法。

 二、实验内容

 1.将串行接口的TXD和RXD连在一起。

 2.编程:从键盘输入一个字符,将其ASCII码加1 后发送出去,再接收回来在屏幕上显示,实现自发自收。

 要求数据传输速率为1200波特,通信格式为7位/字符,一个停止位、奇校验,数据发送和接收均采用查询方式;程序为循环结构,只要按下键,就显示。

 编程提示:

 参考流程图如下:

 三、实验过程和数据记录

 1.源程序:

  2.运行程序得到怎样的控制效果?

  四、实验小结

推荐访问:中山 学院学生 电子科技大学