中断实验报告(word文档良心出品).docVIP

  • 1
  • 0
  • 约2.27千字
  • 约 7页
  • 2024-04-15 发布于湖北
  • 举报

上机实验报告

课程名称

计算机接口与外设

上机内容

中断实验

学院

计算机学院

专业

计算机科学与技术

班级

学号

学生姓名

指导教师

吴以凡

完成日期

2014-12-9

一、实验目的

1、掌握8259中断控制器的工作原理。

2、学会编写中断服务程序。

实验内容及成果展示

实验1:使用软中断

代码:

start:

MOVAX,DATA

MOVDS,AX

CLI

MOVSI,0CH*4

MOVAX,OFFSETINTSERVICE;中断入口偏移地址

MOVES:[SI],AX

MOVAX,SEGINTSERVICE;中断入口的段地址

MOVES:[SI+2],AX

STI;开中断

MOVAL,CNT;初始CNT=1

MOVDX,0000H;led的地址

OUTDX,AL;开始第一个灯亮

LI: CALLINTSERVICE;调用软件中断

CALLDELAY;延时

JMPLI

;中断服务程序----------------------------------

INTSERVICEPROC

PUSHDS

MOVAL,CNT;cnt=1;

ROLAL,1;cnt=cnt1

MOVCNT,AL

MOVDX,0000H;led=cnt1

OUTDX,AL

POPDS

INTSERVICEENDP

;-------------------------------------------------

;软件延时子程序----------------------------------

DELAYPROC

PUSHBX;这里用到堆栈

PUSHCX

MOVBX,1

LP2:MOVCX,0

LP1:LOOPLP1

DECBX

JNZLP2

POPCX

POPBX

RET

DELAYENDP

codeENDS

ENDstart实验结果:

实验2:使用1片8259A+按钮硬件中断

代码如下:

start:

MOVAX,DATA

MOVDS,AX

;中断向量的设置-------------------------------------------

CLI

MOVAX,0

MOVES,AX

MOVSI,60H*4

MOVAX,OFFSETINT0;中断入口偏移地址

MOVES:[SI],AX

MOVAX,SEGINT0;中断入口的段地址

MOVES:[SI+2],AX

;初始化8259A------------------------------------------------

;设置ICW1;设置ICW1(教材P207图7.3)

MOVAL;边沿触发/单片使用/需要ICW4

MOVDX,020H;端口号

OUTDX,AL

;设置ICW2;设置ICW2(教材P208图7.4)

MOVAL;中断向量号60H

MOVDX,020H;端口号

OUTDX,AL

;设置ICW4;设置ICW4

MOVAL;特殊全嵌套方式/缓冲方式(从片)/自动结束方式/16位机

OUTDX,AL

;设置OCW1

MOVDX,21H;设置OCW1(教材P209图7.7)

MOVAL;8个中断全部开放

OUTDX,AL

;8259初始化结束---------------------------------------------

MOVAL,CNT;初始CNT=1

MOVDX,0200H

文档评论(0)

1亿VIP精品文档

相关文档