微型计算机的硬件结构实训报告,微机实验硬件报告..doc

微机实验硬件报告.

微机原理硬件实验报告

班级:

姓名:

序号:

日 期: 2012年 月

实验一 熟悉实验环境及IO的使用

一、实验目的

通过实验了解和熟悉实验台的结构,功能及使用方法。

通过实验掌握直接使用Debug的I、O命令来读写I/O端口。

学会Debug的使用及编写汇编程序。

二、实验内容

学习使用Debug命令,并用I、O命令直接对端口进行读写操作。

用汇编语言编写跑马灯程序。实现功能:

通过读入端口状态,选择工作模式(灯闪烁方式、速度等);

通过输出端口控制灯的工作状态(低电平灯亮)。

1. 实验板的IO端口地址为 E8E0H

在Debug 下,I 是读命令。(即读输入端口的状态---拨码开关的状态)

O 是写命令。(即向端口输出数据--- 通过发光管来查看)

进入Debug 后,读端口,拨动实验台上八位拨码开关

输入 I端口地址,回车,屏幕显示xx表示从端口读出的内容,即八位开关的状态ON是0,OFF 是1

写端口:输入O端口地址xxxx表示要向端口输出的内容)回车

查看实验台上的发光二极管状态,0 是灯亮,1 是灯灭。

2. 在 Debug 环境下,用 a 命令录入程序,用 g 命令运行

C>Debug -a

movdx, 端口地址

moval,输出内容

outdx, al

movah, 0bh

int21h

oral, al

jz0100

int20h

-g

运行查看结果 ,修改输出内容 ,再运行查看结果

分析

movah, 0bh

int21h

oral, al

jz0100

int20h

该段程序的作用:检测键盘有没有按键,有则返回DOS。没有继续执行。

在DOS的DEBUG模式下,地址不用添加十六进制H标志。地址默认为16进制。普通数据为了区分需要添加H。

利用 EDIT 工具编写汇编写跑马灯程序程序 ,实现功能:

A.通过读入端口状态(ON 为低电平),选择工作模式(灯的闪烁方式、速度等)。

B.通过输出端口控制灯的工作状态(低电平灯亮) C>EDIT 文件名.asm

3.1流程图

no

yes

3.2led硬件连接图

3.2源程序

DATA SEGMENT

DB 100 DUP(0)

DATA ENDS

STACK SEGMENT STACK 'STACK' ;Define STACK Segment

DB 100 DUP(0)

STACK ENDS

CODE SEGMENT

ASSUME CS:CODE,DS:DATA,SS:STACK

;Use two loops to delay

;Read in to decide how long to loop, this can control speed

PUASE MACRO

LOCAL LOPP1,LOPP2,HER

PUSH AX

PUSH BX

PUSH DX

HER: READ;here can implement PAUSE function

SHL AH,1

SHL AH,1;D6 control pause

JC HER

MOV DH,AL

AND DH,6FH;Used to control running speed

LOPP1:

MOV AX,0FFFH

LOPP2:

DEC AX

JNZ LOPP2

DEC DX

JNZ LOPP1;Two loops , so time is long enough

POP DX

POP BX

POP AX

ENDM

READ MACRO;Read in control information

MOV DX,0E8E0H

IN AL,DX

MOV AH,AL

ENDM

START:;Main program

MOV AX,DATA

MOV DS,AX

MOV DX,0E8E0H

LOP:

READ

SHL AL,1;D7 is the switch

JNC LOP

SHR AH

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值