微机原理实验参考答案(航大)
微机原理实验参考答案(航大)

《微机原理》实验参考答案实验1 汇编基本指令及顺序程序设计实验实验2 分支与DOS中断功能调用程序设计实验实验3 循环结构程序设计实验实验4 存储器扩展实验实验5 8259应用编程实验实验1汇编基本指令及顺序程序设计实验一、实验目的1、掌握汇编语言的开发环境和上机过程;2、掌握DEBUG命令;3、掌握顺序程序设计方法;4、掌握寻址方式;5、理解和掌握汇编基本指令的功能。
二、实验内容1、设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。
要求:用3种方法实现。
答:方法一CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HMOV CX,AXMOV AX,BXMOV BX,CXCODE ENDSEND START方法二CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HXCHG AX,BXCODE ENDSEND START方法三CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HPUSH AXPUSH BXPOP AXPOP BXCODE ENDSEND START2、分别执行以下指令,比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。
MOV AX,BX 寄存器寻址,将BX内容送AXMOV AX,[BX] 寄存器间接寻址,将DS:BX内存单元内容送AXMOV AX,10[BX] 寄存器相对寻址,将DS:BX+10内存单元内容送AX 在DEBUG调试模式,用A命令直接编辑相应指令并用T命令单步执行,执行后查询相应寄存器的值并用D命令查内存。
3、已知有如下程序段:MOV AX,1234HMOV CL,4在以上程序段的基础上,分别执行以下指令:ROL AX,CL AX=2341HROR AX,CL AX=4123HSHL AX,CL AX=2340HSHR AX,CL AX=0123HSAR AX,CL AX=0123HRCL AX,CL 带进位标志位的循环左移RCR AX,CL 带进位标志的循环右移4、设有以下部分程序段:TABLE DW 10H,20H,30H,40H,50HENTRY DW 3┇LEA BX,TABLEADD BX,ENTRYMOV AX,[BX]┇要求:(1)将以上程序段补充成为一个完整的汇编程序。
民航大学微机原理实验报告及试验程序

微机原理与接口技术实验报告实验环境: Windows XP SP3实验软件:masm, link, debug, edit。
Test 1: debug命令及汇编指令和寻址的应用。
NO.1设堆栈指针SP=2000H, AX=3000H, BX=5000H;请编一程序段将AX和BX的内容进行交换。
要求:用3种方法实现。
方法一CODE SEGMENT ASSUME CS:CODE START: MOV AX,3000HMOV BX,5000H MOV CX,AX MOV AX,BX MOV BX,CX CODE ENDS END START 方法二CODE SEGMENTASSUME CS:CODESTART: MOVAX,3000HMOV BX,5000HXCHG AX,BXCODE ENDSEND START方法三CODE SEGMENTASSUME CS:CODESTART: MOVAX,3000HMOV BX,5000HPUSH AXPUSH BXPOP AXPOP BXCODE ENDSEND STARTNO.2分别执行以下指令, 比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。
MOV AX,BX 寄存器寻址, 将BX内容送AXMOV AX,[BX] 寄存器间接寻址, 将DS:BX内存单元内容送AXMOV AX,10[BX] 寄存器相对寻址, 将DS:BX+10内存单元内容送AXNO.3已知有如下程序段:MOV AX, 1234HMOV CL, 4在以上程序段的基础上, 分别执行以下指令:ROL AX, CL AX=4123HROR AX, CL AX=3412HSHL AX, CL AX=4120HSHR AX, CL AX=0412HSAR AX, CL AX=0041HRCL AX, CL AX=0410HRCR AX, CL AX=0041HNO.4设有以下部分程序段:TABLE DW 10H,20H,30H,40H,50HENTRY DW 3┇LEA BX,TABLEADD BX,ENTRYMOV AX,[BX]┇要求: (1)将以上程序段补充成为一个完整的汇编程序。
南航微机原理课后练习及答案

南航微机原理课后练习及答案书后习题解答第一章计算机基础一、选择题1、在计算机机内部,一切信息的存取、处理和传送都是以( D )形式进行的。
A)EBCDIC码B)ASCII码C)十六进制编码D)二进制编码2、下列数据中,可能是八进制数的是( B )。
A)488 B)317 C)597 D)1893、与十进制数56等值的二进制数是( A )。
A)111000 B)111001 C)101111 D)1101104、十进制数36.875转换成二进制数是( B )。
A)110100.01 B)100100.111 C)100110.11 D)100101.1015、二进制数10101转换成十进制数是( C )。
A)25 B)23 C)21 D)226、二进制数1101.01转换成十进制数是( C )。
A)17.256 B)13.5 C)13.25 D)17.57、二进制数111010.11转换成十六进制数是( B )。
A)3ACH B)3A.CH C)3A3H D)3A.3H8、十进制正数43的八位二进制原码( B )。
A)00110101 B)00101011 C)10110101 D)101010119、十进制负数-61的八位二进制原码是( B )。
A)10101111 B)10111101 C)10101011 D)0011010110、十进制正数38的八位二进制补码是( D )。
A)00011001 B)10100110 C)10011001 D)0010011011、十进制负数-38的八位二进制补码是( B )。
A)01011011 B)11011010 C)10011001 D)0010011012、有一个八位二进制数补码是11111101,其相应的十进制数是( A )。
A)-3 B)-2 C)509 D)25313、十进制数-75用二进制数10110101表示,其表示方式是( C )。
A)原码 B)补码 C)反码 D)ASCII码14、数字字符4的ASCII码为十进制数52,数字字符9的ASCII 码为十进制数( A )。
合肥工业大学电气与自动化专业实验中心 80X86微机原理及接口技术实验教程 思考题部分参考答案(5)

硬件实验2.1 静态存储器扩展实验2.4 8255并行接口实验实验四 8253方波实验实验五(2)8259A中断控制器实验2.3 8254定时/计数器应用实验2.1 静态存储器扩展实验2.1.1 实验目的1. 了解存储器扩展的方法和存储器的读/写。
2. 掌握CPU对16位存储器的访问方法。
2.1.2 实验设备PC机一台,TD-PITE实验装臵一套,示波器一台。
2.1.3 实验内容编写实验程序,将0000H~000FH共16个数写入SRAM的从0000H起始的一段空间中,然后通过系统命令查看该存储空间,检测写入数据是否正确。
2.1.4 实验原理存储器是用来存储信息的部件,是计算机的重要组成部分,静态RAM 是由MOS 管组成的触发器电路,每个触发器可以存放1位信息。
只要不掉电,所储存的信息就不会丢失。
因此,静态RAM 工作稳定,不要外加刷新电路,使用方便。
但一般 图2.1 62256引脚图SRAM 的每一个触发器是由6个晶体管组成,SRAM 芯片的集成度不会太高,目前较常用的有6116(2K ×8位),6264(8K ×8位)和62256(32K ×8位)。
本实验平台上选用的是62256,两片组成32K ×16位的形式,共64K 字节。
62256的外部引脚图如图4.1所示。
本系统采用准32位CPU ,具有16位外部数据总线,即D0、D1、…、D15,地址总线为BHE #(#表示该信号低电平有效)、BLE #、A1、A2、…、A20。
存储器分为奇体和偶体,分别由字节允许线BHE #和BLE #选通。
存储器中,从偶地址开始存放的字称为规则字,从奇地址开始存放的字称为非规则字。
处理器访问规则字只需要一个时钟周期,BHE #和BLE #同时有效,从而同时选通存储器奇体和偶体。
处理器访问非规则字却需要两个时钟周期,第一个时钟周期BHE #有效,访问奇字节;第二个时钟周期BLE #有效,访问偶字节。
微机原理实验报告2g(参考答案)

实验步骤及结果记录: 实验步骤: (1) 打开 DVCC-598JH 实验箱电源。 (2) 启动计算机,运行 DVCC-598JH 实验系统。 (3) 新建文件、输入程序并保存文件。 (4) 按 F9 键调试程序。 (5) 按 Ctrl+F9 键编译链接并传送文件至 DVCC-598JH 实验箱。 (6) 打开内部数据区,将 20H 单元的值更改为 00H 运行,观察程序运行情况。 (7) 分别将 20H 单元的值更改为正数(01H~7FH) 、负数(80H~0FFH)运行, 观察程序运行情况。 结果记录: 将 20H 单元的值更改为 00H 运行,观察到 21H 单元的值为 00H; 将 20H 单元的值更改为 08H 运行,观察到 21H 单元的值为 01H; 将 20H 单元的值更改为 87H 运行,观察到 21H 单元的值为 0FFH;
实验步骤及结果记录: 实验步骤: (1) 新建文件、输入程序并保存文件。 (2) 按 F9 键调试程序。 (3) 按 Ctrl+F9 键编译链接并传送文件至 DVCC-598JH 实验箱。 (4) 打开内部数据区,更改从 20H 单元的 8 个数据,观察程序运行情况。 (5) 打开外部数据区,观察从 2000H 开始的 16 个单元数据,检查运行结果的正确性。 结果记录: 20H 给定值 观察值 观察值 87H 2000H 07H 2001H 08H 21H 54H 2002H 04H 2003H 05H 22H 36H 2004H 06H 2005H 03H 23H 23H 2006H 03H 2007H 02H 24H 19H 2008H 09H 2009H 01H 25H 43H 200AH 03H 200BH 04H 26H 77H 200CH 07H 200DH 07H 27H 69H 200EH 09H 200FH 06H
完整版微机原理课后习题参考答案.doc

完整版微机原理课后习题参考答案.doc2篇微机原理课后习题参考答案(一)微机原理课后习题是帮助学生巩固所学知识,提高学习效果的一种重要方式。
通过解答习题,学生可以检验自己的理解程度和掌握技能,同时也能发现知识的不足之处,以便及时调整学习方法和加强练习。
以下是微机原理课后习题的参考答案,供学生参考:1. 请简述微机的基本组成部分。
答:微机的基本组成部分包括中央处理器(CPU)、内存、输入输出设备和总线。
其中,中央处理器是微机的控制中心,负责数据的处理和指令的执行;内存是用于存储数据和程序的地方,包括随机访问存储器(RAM)和只读存储器(ROM);输入输出设备用于与外部设备进行信息交换,包括键盘、显示器、打印机等;总线是连接中央处理器、内存和输入输出设备的通道,用于数据传输和控制信号传递。
2. 什么是存储器的地址空间?答:存储器的地址空间是计算机可寻址的存储单元的集合。
每个存储单元都有一个唯一的地址,用于在存储器中定位该存储单元。
地址空间的大小决定了计算机可以寻址的最大存储容量。
常见的存储器地址空间包括物理地址空间和逻辑地址空间。
物理地址空间是实际存在的存储单元的集合,由硬件决定;逻辑地址空间是程序员或操作系统所见到的地址空间,它可以比物理地址空间大或小,具体取决于使用的地址转换机制。
3. 简述中央处理器的主要功能。
答:中央处理器的主要功能包括指令的执行和数据的处理。
指令的执行是指根据程序中的指令,按照特定的指令集进行操作,包括数据传输、算术运算、逻辑运算等。
数据的处理是指对输入的数据进行处理,可以进行各种运算和逻辑操作,生成相应的结果。
除了执行指令和处理数据外,中央处理器还负责控制系统的运行,包括控制信号的发出和时序的控制,以确保各个组成部分协调工作。
4. 什么是总线?答:总线是微机中各个组成部分之间进行数据传输和控制信号传递的通道。
它可以看作是计算机内部各个部分之间进行信息交换的公共通道。
总线通常分为数据总线、地址总线和控制总线三种类型。
中国民航大学微机原理实验报告

姓名:王鹏飞学号:111142222指导教师:谈娴茹实验一Debug命令及汇编指令和寻址的应用一、实验目的:1、掌握DEBUG的基本命令及其功能,学会用DEBUG调试程序;2、掌握8086CPU的指令功能,体会寄存器的作用;3、了解数据在内存的存放方式和内存操作数的几种寻址方式;4、了解指令的执行过程。
二、实验内容:1、设堆栈段指针SP=1000H,AX=4000H,BX=8000H;请编写一段程序将AX 和BX的内容进行交换。
要求:用三种不同的方法。
方法一:DATA SEGMENTBUF DB ?DATA ENDSSTACK SEGMENT STACKDB 10 DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,4000HMOV BX,8000HMOV CX,AXMOV AX,BXMOV BX,CXCODE ENDSEND START方法二:DATA SEGMENTBUF DB ?DATA ENDSSTACK SEGMENT STACKDB 10 DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,4000HMOV BX,8000HXCHG AX,BXCODE ENDSEND START方法三:DATA SEGMENTBUF DB ?DATA ENDSSTACK SEGMENT STACKDB 10 DUP(0)STACK ENDSCODE SEGMENTASSUME CS:CODE,DS:DATA,SS:STACKSTART:MOV AX,4000HMOV BX,8000HPUSH AXPUSH BXPOP AXPOP BXCODE ENDSEND START2、分别执行以下指令,比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。
(完整版)微机原理习题集答案.doc

微型计算机原理及应用习题集专业班级学号姓名目录第 1 章概述 (1)第 2 章计算机中的数制与编码 (2)第 3 章微处理器及其结构 (4)第 4 章 8086/8088CPU 指令系统 (8)第 5 章汇编语言程序设计 (16)第 6 章存储器系统 (27)第 7 章中断技术 (30)第 8 章输入 /输出接口技术 (36)第 9 章串行通信技术及其接口芯片 (41)模拟试题(一)............................................................................................................................................... 错误!未定义书签。
参考答案................................................................................................................................................................. 错误!未定义书签。
模拟试题(二)............................................................................................................................................... 错误!未定义书签。
参考答案................................................................................................................................................................. 错误!未定义书签。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《微机原理》实验参考答案实验1 汇编基本指令及顺序程序设计实验实验2 分支与DOS中断功能调用程序设计实验实验3 循环结构程序设计实验实验4 存储器扩展实验实验5 8259应用编程实验实验1汇编基本指令及顺序程序设计实验一、实验目的1、掌握汇编语言的开发环境和上机过程;2、掌握DEBUG命令;3、掌握顺序程序设计方法;4、掌握寻址方式;5、理解和掌握汇编基本指令的功能。
二、实验内容1、设堆栈指针SP=2000H,AX=3000H,BX=5000H;请编一程序段将AX和BX的内容进行交换。
要求:用3种方法实现。
答:方法一CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HMOV CX,AXMOV AX,BXMOV BX,CXCODE ENDSEND START方法二CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HXCHG AX,BXCODE ENDSEND START方法三CODE SEGMENTASSUME CS:CODESTART: MOV AX,3000HMOV BX,5000HPUSH AXPUSH BXPOP AXPOP BXCODE ENDSEND START2、分别执行以下指令,比较寄存器寻址,寄存器间接寻址和相对寄存器寻址间的区别。
MOV AX,BX 寄存器寻址,将BX内容送AXMOV AX,[BX] 寄存器间接寻址,将DS:BX内存单元内容送AXMOV AX,10[BX] 寄存器相对寻址,将DS:BX+10内存单元内容送AX 在DEBUG调试模式,用A命令直接编辑相应指令并用T命令单步执行,执行后查询相应寄存器的值并用D命令查内存。
3、已知有如下程序段:MOV AX,1234HMOV CL,4在以上程序段的基础上,分别执行以下指令:ROL AX,CL AX=2341HROR AX,CL AX=4123HSHL AX,CL AX=2340HSHR AX,CL AX=0123HSAR AX,CL AX=0123HRCL AX,CL 带进位标志位的循环左移RCR AX,CL 带进位标志的循环右移4、设有以下部分程序段:TABLE DW 10H,20H,30H,40H,50HENTRY DW 3┇LEA BX,TABLEADD BX,ENTRYMOV AX,[BX]┇要求:(1)将以上程序段补充成为一个完整的汇编程序。
答:DATA SEGMENTTABLE DW 10H,20H,30H,40H,50HENTRY DW 3DATA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART: MOV AX,DATAMOV DS,AXLEA BX,TABLEADD BX,ENTRYMOV AX,[BX]MOV AH,4CHINT 21HCODE ENDSEND START(2)AX=3000H实验2 分支与DOS中断功能调用程序设计实验一、实验目的1、掌握条件转移、无条件转移指令的功能及应用;2、掌握分支程序的设计、编写、调试和运行方法。
3、掌握1号、2号和9号功能调用及其程序设计方法。
二、实验内容1、编程求|X-Y|,结果放在RESULT单元中。
X和Y都为16位操作数。
DA TA SEGMENTX DW 1234HY DW 5678HRESULT DW ?DA TA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART: MOV AX,DATAMOV DS,AXMOV AX,XSUB AX,YJAE NEXT;设X,Y是不带符号数,X>=Y转移MOV AX,YSUB AX,XNEXT: MOV RESYLT,AXMOV AH,4CHINT 21HCODE ENDSEND START2、编写一程序,实现从键盘输入一个字符,判断其是不是大写字母,如果是则请输出这个大写字母,如果不是,请输出“这不是一个大写字母”的英文信息(要求:能连续输入)。
DATA SEGMENTMS1 DB ‘IT IS A BIG CAPITAL$’MS2 DB ‘IT IS NOT A BIG CAPITAL$’DATA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART:MOV AX,DATAMOV DS,AXNEXT: MOV DX,OFFSET MS2MOV AH,1INT 21H; 1号功能调用CMP AL,0DHJZ EXITCMP AL, ‘A’JB NOCMP AL, ‘Z’JA NOMOV DX,OFFSET MS1NO: MOV AH,9INT 21HIMP NEXTEXIT:MOV AH,4CHINT 21HCODE ENDSEND START3、请编写一程序,实现将大写字母字符串转换成小写字母字符串。
设字符串的首地址为STRING,字符串的长度在N单元内。
DA TA SEGMENTSTRING DB 'I AM A STUDENT!$'N EQU $-STRINGDA TA ENDSCODE SEGMENTASSUME DS:DATA,CS:CODESTART:MOV AX,DATAMOV DS,AXMOV BX,OFFSET STRINGMOV CX,NNEXT: MOV AL,[BX]CMP AL,'A'JB NEXT1CMP AL,'Z'JA NEXT1ADD AL,20HMOV [BX],ALNEXT1:INC BXLOOP NEXTMOV AH,9MOV DX,OFFSET STRINGINT 21HMOV AH,4CHINT 21HCODE ENDSEND START4、编程显示任一寄存器(如BX)的最高位。
即若BX的最高位为1,则在屏幕上输出“1”;若BX的最高位为0,则在屏幕上输出“0”。
CODE SEGMENTASSUME CS:CODESTART: MOV DL,'1'MOV BX,8234HCMP BX,0JS SHOWMOV DL,'0'SHOW: MOV AH,2INT 21HMOV AH,4CHINT 21HCODE ENDSEND START实验3 循环结构程序设计实验一、实验目的1、掌握循环指令LOOP、LOOPZ、LOOPNZ指令的功能及使用方法。
2、掌握循环程序的设计、编写、调试和运行方法。
二、实验内容1、循环结构程序设计编写一个程序,将内存1000H开始的连续100个字节送往2000H开始的连续100个内存单元中。
要求使用三种不同的方法(不用串操作指令、用单一的串操作指令、用带重复前缀的串操作指令),下面已给出一种实现方法,请给出另外两种实现方法的源程序清单:实验程序参考清单:方法一带重复前缀的串操作指令DATA SEGMENTORG 1000HDB 100 DUP(…A‟)ORG 2000HDB 100 DUP(…B‟)DA TA ENDSCODE SEGMENTASSUME DS:DATA,ES:DATA,CS:CODESTART: MOV AX,DA TAMOV DS,AXMOV ES,AXMOV SI,1000HMOV DI,2000HMOV CX,100CLDREP MOVSBMOV AH,4CHINT 21HCODE ENDSEND START方法二不带重复前缀的串操作指令DATA SEGMENTORG 1000HDB 100 DUP(…A‟)ORG 2000HDB 100 DUP(…B‟)DA TA ENDSCODE SEGMENTASSUME DS:DATA,ES:DATA,CS:CODE START: MOV AX,DA TAMOV DS,AXMOV ES,AXMOV SI,1000HMOV DI,2000HMOV CX,100CLDNEXT: MOVSBLOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START方法三不用串操作指令,而用MOV指令DATA SEGMENTORG 1000HDB 100 DUP(…A‟)ORG 2000HDB 100 DUP(…B‟)DA TA ENDSCODE SEGMENTASSUME DS:DATA,ES:DATA,CS:CODE START: MOV AX,DA TAMOV DS,AXMOV SI,1000HMOV DI,2000HMOV CX,100NEXT: MOV AL,[SI]MOV [DI],ALINC SIINC DILOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START2、编程计算1+2+3+…+100的和。
答:用AX存放结果CODE SEGMENTASSUME CS:CODESTART: MOV AX,0MOV BX,1MOV CX,100NEXT: ADD AX,BXINC BXLOOP NEXTMOV AH,4CHINT 21HCODE ENDSEND START如果想以十进制输出显示AX中的结果则需要增加显示输出程序(感兴趣同学参考,不要求):DA TA SEGMENTMS DB 5 DUP(?)DB '$'DA TA ENDSCODE SEGMENTASSUME CS:CODE,DS:DA TASTART:MOV AX,DATAMOV DS,AXMOV AX,0MOV BX,1MOV CX,100NEXT: ADD AX,BXINC BXLOOP NEXTMOV SI,OFFSET MSADD SI,4NEXT1:MOV DX,0MOV BX,10DIV BXADD DL,30HMOV [SI],DLDEC SICMP AX,0JZ EXITJMP NEXT1EXIT: MOV AH,9MOV DX,OFFSET MSINT 21HMOV AH,4CHINT 21HCODE ENDSEND START实验4 存储器扩展实验code segmentassume cs:codeorg 1000hStart: mov bx,8000h ;外部存储器起始地址BXmov cx,2048 ;初始化计数器RamWR: mov [bx],55aah ;将数据写入外部存储器inc bx ;地址+2inc bxloop RamWR ;地址不到8FFF则继续jmp $ ;结束code endsend Start实验5 8259应用编程实验outseg equ 0ffdch ;字形控制口outbit equ 0ffddh ;字位控制口m8259 equ 0ffe0h ;8259控制口c8259 equ 0ffe1h ;8259命令口code segmentassume cs:codeorg 1000hstart: cli ;清中断标志call intsvr ;分配中断向量call init ;8259初始化sti ;置中断标志mov dx,outbit ;选中LED第6位mov al,000001bout dx,alcall show_p ;显示"P."jmp $ ;循环等待;设置中断向量,写N=15的中断向量,中断向量表003CH-003FH单元intsvr: mov ax,0000hmov es,axmov di,003chlea ax,irq7stoswmov ax,0000hstoswret;8259初始化init: mov dx,m8259mov al,13hout dx,al ;边沿触发mov dx,c8259mov al,08hout dx,al ;基地址mov al,09hout dx,al ;写命令字mov al,7fhout dx,al ;设置IMR,只开放IQR7,屏蔽其他ret;显示"0"show_p: mov al,0 ;'0'call disp ;显示ret;查表显示子程序disp: mov dx,outseg ;字形控制口mov bx,offset ledxlat ;查表out dx,al ;送显示ret;IRQ7中断服务程序irq7: cli ;清中断标志,关中断inc al ;加一计数and al,0fh ;只保留低4位,清零高位push ax ;AX进栈保存call disp ;显示mov dx,m8259mov al,20hout dx,al ;写结束字pop ax ;恢复AXsti ;置中断标志,开中断iret ;从中断返回;字形代码表led db 0c0h,0f9h,0a4h,0b0h,99h,92h,82h,0f8h ; 0 1 2 3 4 5 6 7 db 80h,90h,88h,83h,0c6h,0a1h,86h,8eh ;8 9 A B C D E Fdb 0ch ;'P.'code endsend start。