基本知识点强化梳理汇编接口北交大_第1页
基本知识点强化梳理汇编接口北交大_第2页
基本知识点强化梳理汇编接口北交大_第3页
基本知识点强化梳理汇编接口北交大_第4页
基本知识点强化梳理汇编接口北交大_第5页
已阅读5页,还剩57页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通用寄存器通用寄存器段寄存器段寄存器指令指针指令指针标志寄存器标志寄存器Intel 8086Intel 8086处理器处理器结构结构字节内容字节内容: :(10000H10000H)9FH9FH;(10001H10001H)26H26H字内容字内容 : :(10000H(10000H)269FH269FH;(10001H(10001H)4826H4826Hl程序设计时,使用的是逻辑地址。逻辑地址由“段基址”和“偏移量”构成(均为16位)l“段基址”由段寄存器CS、DS、SS和ES提供;“偏移量”由BX、BP、IP、SP、SI、DI提供。l物理地址物理地址 = 段地址段地址16D(左移左移1)+

2、偏移偏移量 量l每个存储单元有唯一的物理地址,可由不同的“段基址”和“偏移量”组成。例如: 1200H:0345H12345H;1100H:1345H12345Hl字节:字节:字节是存储器的最小访问单位,每字节是存储器的最小访问单位,每个字节有一个唯一的编号个字节有一个唯一的编号 地址地址。l字:字:1616位位( (双字节双字节) ),在存储器中连续存放,在存储器中连续存放的的2 2个字节。低位字节存入低地址,高位字个字节。低位字节存入低地址,高位字节存入高地址节存入高地址( (低低高高原则低低高高原则) )。l字单元地址用它的低地址来表示字单元地址用它的低地址来表示Intel 8086In

3、tel 8086处理器处理器存储器分段存储器分段代码段、数据段和堆栈段代码段、数据段和堆栈段一般程序在存储器中有三个独立的区段:一般程序在存储器中有三个独立的区段:应应用用程程序序占占用用的的内内存存区区段段代码段代码段数据段数据段堆栈段堆栈段CS:IPDS:xxSS:SP或或ES:xx用于存放程序的指令代码。用用于存放程序的指令代码。用CS寄存器存放段地寄存器存放段地址,址,IP寄存器存放偏移量。寄存器存放偏移量。当前当前指令地址指令地址CS:IP。代码段代码段用于存放程序的数据。一般用用于存放程序的数据。一般用DS或或ES寄存器存寄存器存放段地址,可用多种方式形成放段地址,可用多种方式形成

4、偏移量偏移量。数据段数据段用于程序堆栈操作。用用于程序堆栈操作。用SS寄存器存放段地址,寄存器存放段地址,SP寄存器存放偏移量。当前堆栈地址寄存器存放偏移量。当前堆栈地址SS:SP。堆栈段堆栈段Intel 8086Intel 8086处理器处理器标志寄存器标志寄存器标志寄存器标志寄存器16位专用寄存器,定义了位专用寄存器,定义了9个标志位,包括个标志位,包括6个个用于运算的状态标志(用于运算的状态标志(CF, ZF, SF, PF, OF, AF)和)和3个用于控制个用于控制的控制标志(的控制标志(DF, IF, TF)。)。15 14 131211OF10DF9IF8TF7SF6ZF54AF

5、32PF10CF溢溢出出方方向向中中断断单单步步符符号号零零辅助辅助进位进位奇奇偶偶进进位位当有符号运当有符号运算结果产生算结果产生溢出时置溢出时置1,否则置否则置0。运算结果的最高运算结果的最高位,位,1表示结果为表示结果为负,负,0表示为正。表示为正。当运算结果为当运算结果为0时置时置1,否则置,否则置0。当运算结当运算结果中果中1的个的个数为偶数数为偶数时置时置1,否,否则置则置0。当运算产生当运算产生半字节间进半字节间进位位/借位时借位时置置1,否则,否则置置0。当加当加/减运算减运算中产生进位中产生进位/借位时时置借位时时置1,否则置,否则置0。寻址方式寻址方式立即数寻址立即数寻址特

6、点:操作数在代码段特点:操作数在代码段CS中。中。用法:用于给寄存器赋初值用法:用于给寄存器赋初值寄存器寻址:操作数在指定的寄存器中寄存器寻址:操作数在指定的寄存器中特点:操作数在寄存器中,不需访问存储器,速度快。特点:操作数在寄存器中,不需访问存储器,速度快。存储器寻址:存储器寻址:直接寻址直接寻址:直接给出操作数有效地址(偏移量)直接给出操作数有效地址(偏移量)MOV AL, VALUE寄存器间接寻址寄存器间接寻址:有效地址在寄存器有效地址在寄存器(BX, SI或或 DI)中中MOV AX, SI寄存器相对寻址寄存器相对寻址:在寄存器间接寻址的基础上,有效地址增在寄存器间接寻址的基础上,有

7、效地址增加一个常量加一个常量MOV AX, COUNTSII/O端口寻址端口寻址直接端口寻址直接端口寻址:IN AL,25H寄存器间接端口寻址寄存器间接端口寻址:MOV DX,1378H, OUT DX,AL伪指令伪指令DB:定义变量的类型为字节定义变量的类型为字节DW 定义字定义字偏移量偏移量段值段值EQUEQU语句语句: :给符号定义一个值给符号定义一个值, ,或定义为别的符号或定义为别的符号$:$:表示地址计数器的当前值表示地址计数器的当前值为存储器数指定类型。为存储器数指定类型。指令系统指令系统数据传送类MOV、XCHG、XLAT堆栈操作(PUSH、POP)地址传送(LEA)输入输出(

8、IN、OUT)。算术运算类 SUB CMP INCADD dest, src(dest)+(src) (dest) ;二进制加ADC dest, src(dest)+(src)+(CF) (dest) ;二进制带进位加SUB dest, src(dest)-(src) (dest) ;二进制减SBB dest, src (dest)-(src)-(CF) (dest) ;二进制带借位减CMP dest, src(dest)-(src);比较,只影响标志MUL src ; 乘法INC reg/mem (reg/mem)+1 (reg/mem) ;加1DEC reg/mem (reg/mem)-1

9、 (reg/mem) ;减1NEG reg/mem 0-(reg/mem) (reg/mem) ;求补设(AL)=79,ADD AL,0B1H指令执行后, CF和OF的值:转换为2进制 无符号加 有符号加 01111001 121 121 10110001 177 -79 1 00101010 298 42对于无符号数,结果298,不在0255之间,所以CF=1对于有符号数,结果在-128127之间,所以OF=0难点:进位和溢出问题CF 位表示 无符号数 相加的进位;OF 位表示 带符号数 相加的溢出。算术右移指令SAR有难度控制转移类:无条件转移(JMP);条件转移(Jxx、JCXZ);循环

10、控制(LOOP、LOOPZ、LOOPNZ);子程序控制(CALL、RET);中断控制(INT)。 位操作类(逻辑指令):NOT AND OR XOR TEST 逻辑运算SHL SHR SAL SAR ROL ROR RCL RCR 移位键盘中断键盘中断u中断类型号与中断程序的联系中断类型号与中断程序的联系中断向量中断向量u中断向量,即中断服务程序的入口地址中断向量,即中断服务程序的入口地址, 4, 4个字节个字节CS:IPCS:IPu中断向量表:中断向量表:存放中断向量存放中断向量,256,256个中断的服务程序入口地址个中断的服务程序入口地址中断向量中断向量:长度和方向长度和方向l 译码实现

11、寄存器地址25H唯一选择,片内地址(端口)为4个,25H,26H,27H,28HIN AL,25H译码输入信号:与地址信号与控制信号有关:- AEN信号:AEN=0:正常操作;AEN=1:DMA- IOR和IOW信号:控制端口的读/写译码输出信号:产生唯一低电平信号,选中芯片 内的寄存器端口高位地址线与CPU的控制信号进行组合,经译码电路产生I/O接口芯片CS的片选。低位地址线不参加片选译码,直接连到I/O接口芯片,进行I/O接口芯片的片内端口寻址,即寄存器寻址。 低位线的数目决定了可寻址端口的数目。使用专用译码芯片地址线0 0 A9 A8A7 A6 A5 A4 C B AA3 A2 A1 A

12、0二进制0 0 1 00 0 0 0十六进制200-f震荡器减1寄存器(初值)GATE定时输出OUTCLK减一计数器当前计数值输出GATE计数控制端预置计数初值CLK时钟脉冲OUT计数输出计数器完成指定次数(预置初值)的输入脉冲(CLK)计数,并输出(OUT)。计数过程可控(通过GATE)。计数过程可读取。 向基地址+3写入的一个字节是控制字,包括方式设置、锁存设置等,控制字格式:D7D6D5D4D3D2D1D0计数器选择计数器选择读写字节数读写字节数工作方式工作方式码制码制方式0当向计数器写完计数值后,OUT变成低电平,并在计数过程中一直保持低电平,当计数器减到零时,OUT产生01的上升沿,

13、用此沿可申请中断。方式1写入计数初值后,计数器并不立即开始工作。GATE出现上升沿才开始工作,OUT变成低电平,直到计数器值减到零,OUT才变高电平。当GATE又出现上升沿时,计数器重新装入原计数初值并重新开始计数。方式2设置为2方式,OUT1 ,写初值寄存器后,计数器启动,当计数器减到零的前一个CLK,OUT0,输出一个宽度为一个CLK周期的负脉冲.并自动重新装入初始值,自动启动计数。可以通过GATE=0暂停计数。方式33方式与2方式基本相同,也具有自动装入计数初值的功能,但输出的波形为占空比为1:1的方波。方式4此方式设定后,输出OUT就开始变成高电平;当写完计数初值后,计数器开始计数,计

14、数完毕,计数回零结束,输出一个宽度为一个时钟脉冲宽度的负脉冲,然后输出又恢复高电平,并一直保持高电平不变。方式5当写入计数初值后,计数器并不立即开始计数,而要由门控信号的上升沿启动才开始计数。方波发生器分频器(周期窄脉冲)软件计数到零产生窄脉冲(中断)硬件可重复触发的单稳态触发器软件触发选通硬件触发选通OUT宽度对比重复重复单次单次单次82558255内部结构内部结构A组组B组组方式命令1D6D5D4D3D2D1D0写入到写入到 基地址基地址+3 (控制寄存器)的(控制寄存器)的8255A控制字按照最高位(控制字按照最高位(D7)的不同有两)的不同有两种格式。种格式。PC(03): 0=输出输

15、出 / 1=输入输入B组组PB: 0=输出输出 / 1=输入输入B组方式组方式: 0=0方式方式 / 1=1方式方式PC(47): 0=输出输出 / 1=输入输入A组组PA: 0=输出输出 / 1=输入输入A组方式组方式: 00=0方式方式 / 01=1方方式式 / 10=2方式方式D7=1用于设置工作方式用于设置工作方式0D3D2D1D00=复位复位 / 1=置位置位指定指定PC端口端口的位的位000PC0001PC1010PC2011PC3100PC4101PC5110PC6111PC705H=00000101:使PC2=1的命令字04H=00000100:使PC2=0的命令字D7=0为为

16、C端口置位端口置位/复位命令复位命令写入到写入到 基地址基地址+3 监测PA0、PA2、PA4、PA6高低电平的变化,当全为低电平时,L1灯灭,L2灯亮;当全为高电平时,L1灯亮,L2灯灭; PA0、PA2、PA4、PA6其他电平组合,L1和L2全灭。COMMAND EQU 0083H ;8255命令口端口号APORT EQU 0080H ;8255 A口端口地址MOV DX,COMMAND ;初始化8255方式命令字MOVAL,82H;0方式OUTDX,ALPROCESS: MOVDX,APORT ;读取A口数据IN AL,DXANDAL,55H CMP AL,00H JZ PC4OP CM

17、P AL,55H JZ PC7OP MOVDX,COMMAND ;对C口操作 MOVAL,09H ;PC4=1,L1灯灭OUTDX,AL MOVAL,0FH ;PC7=1,L2灯灭OUTDX,AL JMPPROCESS PC4OP:;读取C口数据,并与BH比较,若不同,说明开关被拨动,进入处理过程 MOV DX,COMMAND MOVAL,09H;PC4=1,L1灯灭OUTDX,AL MOVAL,0EH ;PC7=0,L2灯亮OUTDX,ALJMPPROCESSPC7OP: ;增加CX值,若CX值为2,说明开关拨动一个来回,更新LED显示 MOV DX,COMMAND MOV AL,08H;P

18、C4=0,L1灯亮OUTDX,AL MOVAL,0FH ;PC7=1,L2灯灭OUTDX,AL JMPPROCESS8259A8259A 内部结构内部结构数据总线数据总线缓冲器缓冲器读读/ /写写逻辑逻辑级联级联缓冲缓冲/ /比较器比较器控制逻辑控制逻辑正在服务正在服务寄存器寄存器ISRISR优先级优先级分析器分析器PRPR中断请求中断请求寄存器寄存器IRRIRR中断屏蔽寄存器中断屏蔽寄存器 IMRIMRIRIR0 0IRIR1 1IRIR2 2IRIR3 3IRIR4 4IRIR5 5IRIR6 6IRIR7 7D D0 0D D7 7INTINTA A0 0CASCAS0 0CASCAS1

19、 1CASCAS2 2SP/ENSP/ENCSCSWRWRRDRDINTAINTA工作方式 优先级排队方式优先级排队方式优先级固定方式优先级固定方式完全嵌套方式完全嵌套方式特殊嵌套方式特殊嵌套方式优先级循环方式优先级循环方式自动循环方式自动循环方式特殊循环方式特殊循环方式中断结束方式中断结束方式自动结束方式自动结束方式非自动结束方式非自动结束方式常规结束方式常规结束方式特殊结束方式特殊结束方式 屏蔽方式屏蔽方式常规屏蔽方式常规屏蔽方式特殊屏蔽方式特殊屏蔽方式 触发方式触发方式边沿触发边沿触发电平触发电平触发8259A的工作方式设置项目主要包括:的工作方式设置项目主要包括:寄存器寄存器寄存器寄存

20、器8 8位对应于连接在位对应于连接在IR0IR0IR7IR7线上的外设所产生的中断线上的外设所产生的中断请求。具有锁存功能,其内容可用请求。具有锁存功能,其内容可用OCW3OCW3命令读出。命令读出。1.1.中断请求寄存器(中断请求寄存器(IRRIRR)2.2.中断屏蔽寄存器(中断屏蔽寄存器(IMRIMR)对中断请求对中断请求IRiIRi起屏蔽作用,寄存器起屏蔽作用,寄存器8 8位对应位对应8 8级中断屏蔽。级中断屏蔽。3.3.正在服务寄存器正在服务寄存器ISRISR用来存放正在被服务的所有中断源,包括挂起的中断源。在用来存放正在被服务的所有中断源,包括挂起的中断源。在非自动结束方式下,非自动

21、结束方式下,ISRISR的复位要由中断结束命令的复位要由中断结束命令EOIEOI来执行来执行总结:总结:IRRIRR、IMRIMR、ISRISR都是置位(写都是置位(写1 1)有效:即)有效:即IRRIRR有请求有请求了;了;IMRIMR屏蔽了;屏蔽了;ISRISR服务中服务中-ing;-ing;11.1 11.1 中断控制器中断控制器8259A8259A 初始化初始化1、ICW1:进行中断触发和单片/多片设置;2、ICW2:进行中断号设置;3、ICW3:进行级联设置;4、ICW4:进行优先级和结束方式设置初始化方式命令ICW可以对8259设置触发、级联、中断号、优先级、结束方式;而中断屏蔽方

22、式是默认常规屏蔽方式,如要改动,可以执行操作命令OCW3。8259初始化任务8259初始化具体操作TPCTPC实验平台实验平台- -中断模块中断模块l 386CPU内部有内部有2个个8259,级联采用与,级联采用与PC机相同机相同的方式,其主从的方式,其主从8259使用的命令字和端口地址与使用的命令字和端口地址与PC DOS兼容。兼容。l 本实验箱允许使用主本实验箱允许使用主8259的的IR5 即即MIR5和从和从8259的的IR0,SIR0和扩展和扩展8259;l 注意,主从注意,主从8259已经初始化,并且固化,用户无已经初始化,并且固化,用户无需对需对8259初始化,只能写入中断屏蔽字和

23、中断向初始化,只能写入中断屏蔽字和中断向量。量。用户中断输入用户中断输入引脚引脚对应对应82598259引脚引脚输入输入中断屏蔽中断屏蔽字字中断类型中断类型号号82598259端口地端口地址址IRQ5IRQ5(MIR5MIR5)主片主片IR5IR511011111B11011111B35H35H20H,21H20H,21HIRQ8IRQ8(SIR0SIR0)从片从片IR0IR011111110B11111110B70H70H0A0H0A0H,0A1H0A1H主从片8259A的端口地址: 中断源中断源IR0IR0IR1IR1IR2IR2IR3IR3IR4IR4IR5IR5IR6IR6IR7IR7

24、主片中断向量主片中断向量30H30H31H31H32H32H33H33H34H34H35H35H36H36H37H37H从片中断向量从片中断向量70H70H71H71H72H72H73H73H74H74H75H75H76H76H77H77H实验平台主从8259A的中断类型号与中断源的对应关系 中断号基数.Model small.386data segment;数据段定义data endscode segment assume cs:code,ds:data start: mov ax,data ;数据段定位 mov ds,ax ;加上设置其他模块初始化 cli ;关386 CPU中断;写入中断

25、屏蔽字OCW1in al,21hand al,11011111b out 21h,alCALL WRINTVERSti;主程序代码code ends end startWRINTVER: PUSH DSMOV AX, 0MOV DS, AXMOV DI, 4*35H CLIMOV BX, OFFSET INTPMOV DI, BXADD DI, 2MOV BX, SEG INTPMOV DI, BXPOP DSretINTP: ;中断服务程序 PUSH AXCLI;中断服务主体MOV AL,20H ;中断结束 OCW2OUT 20H,ALSTIPOP AXIRET 中断程序设计模板技术指标技术

26、指标指A/D转换器可转换成数字量的最小电压(量化阶梯 ) 。 如 8 位 A D C 满 量 程 为 5 V , 则 分 辨 率 为5000mV/256=20mV,也就是说当模拟电压小于20mV,ADC转换为0,所以分辨率一般表示式为:单极性:分辨率=Vref/2位数双极性:分辨率=(V+ref-V-ref)/2位数技术指标(参数)分辨率08090809内部结构内部结构通道选择开关8路模拟输入信号通道锁存译码通道编号启动脉冲时钟脉冲输出允许1=允许输出转换完成1=完成REF参考电压正极和负极三态输出锁存器D7-D008090809工作时序工作时序|转换期间,输入信号保持稳定|锁存地址,选择通道

27、CLOCKSTARTALEADDA/B/C模拟输入信号OE(ENABLE)EOC数据输出开始转换转换结束读取数据编程步骤编程步骤 送 通 道 码 ( A L E ) -ALE=ALE=“1 1”,写入待转换的通,写入待转换的通道,道,由ADDA、ADDB、ADDC 高低电平决定。通常ADDA、ADDB、ADDC 接固定电平,即转换通道固定;启动A/D转换(START)给START一正脉冲,转换开始注意:通常 同时完成12.2 A/D12.2 A/D转换接口转换接口- -编程步骤编程步骤判断是否转换完毕?判EOC引脚的状态,用EOC标志信号,典型的有三种方式:用EOC引脚:查询是否为高电平用EO

28、C引脚:中断不直接用EOC引脚:延时,延时至少100us;CPU读取数据,即输出数据(OE(ENABLE)) A0=1IOW=0ADCS=01IOR=0101A1=1IOR=0l中断方式用到200H+201Hl查询方式用到200H201H+202H实验实验ADAD编程地址编程地址lA1A0=00,配合,配合IOW写操作,写操作,ALE/START1,启动启动A/D转换转换 200H(中断:启动转换)(中断:启动转换)lA0=1,配合,配合IOR读操作,读操作,ENABLE=1,读取读取A/D转转换后的数据换后的数据 201H(中断:读数据中断:读数据)lA11,配合,配合IOR读操作,三态门打

29、开,通过读操作,三态门打开,通过D0获取获取EOC状态。当状态。当D01时,转换结束时,转换结束 202H(查(查询转换是否结束)询转换是否结束)l中断方式用到中断方式用到200H+201Hl查询方式用到查询方式用到200H201H+202HVref:基准电压8位输入寄存器8位DAC寄存器8位D/A转换器DI7DI0ILELE1LE2CSWR1WR2XFERVREFIOUT2IOUT1RFBAGND(模拟地 )&DGND(模拟地 )VCC8位数据输入ILE:数据输入锁存,高有效XFER:传送控制,低有效DAC0832DAC0832有三种工作方式:(1)双缓冲方式:控制选通1和2(2)单

30、缓冲方式:控制选通1或2(3)直通方式:不控制选通1和2,直接接低电平 D7D0IOWA9A0AEN系统总线DI07WR1ILECSDAC0832译码器WR2XFERDGNDVREFRFBIO1IO2AGND+-AR+5VVout +5V200H例:在图中采用单缓冲方式连接。 利用DAC0832可实现任意波形输出锯齿波程序段如下: MOV DX,200H ;DAC0832的端口地址 MOV AL,0H ;输出数据0 TN: OUT DX,AL INC AL ;输出数据加1 JMP TN 82518251接口芯片内部结构接口芯片内部结构内部结构内部结构l收发联络信号的作用收发联络信号的作用TXR

31、DY:发送器准备好信号,用来通知CPU,8251A已准备好发送一个字符。RXRDY:接收器准备好信号,用来表示当前8251A已经从外部设备接收到一个字符,等待CPU来取走。在中断方式时,RXRDY可用作中断请求信号在查询方式时,RXRDY可用来作为查询信号还可以利用状态字进行发送、接收方式命令字方式命令字D7D6D5D4D3D2D1D08251A8251A复位后写到命令端口的第一个字节。方复位后写到命令端口的第一个字节。方式字的最低式字的最低2 2位为位为0000,表示同步方式命令,否则为异步方式命,表示同步方式命令,否则为异步方式命令。异步方式命令定义如下:令。异步方式命令定义如下:波特率因

32、子波特率因子: 00=(同步同步) 01=1 10=16 11=64字符长度字符长度: 00=5位位 01=6位位 10=7位位 11=8位位 校验设置校验设置: X0=无校验无校验 01=奇校验奇校验 11=偶校验偶校验停止位数停止位数: 00=(非法非法) 01=1位位 10=1.5位位 11=2位位工作命令字工作命令字0D60D40D20D08251A8251A复位后写到命令端口的第二个字节(之复位后写到命令端口的第二个字节(之前的方式字确定为异步方式)。前的方式字确定为异步方式)。TxEN: 0=不允许发送,1=允许发送RxEN: 0=不允许接收,1=允许接收ER: 1=清除全部错误标

33、志(后面状态字)IR: 1=产生内部复位状态字状态字00D5D4D30D1D08251A8251A复位后从状态端口读取到的字节。复位后从状态端口读取到的字节。TxRDY: 1=发送数据寄存器空发送数据寄存器空RxRDY: 1=接收数据寄存器满接收数据寄存器满PE: 奇偶错误,1=发生奇偶错误OR: 溢出错误,1=发生溢出错误FE: 格式错误,1=发生格式错误例:在PC机上做如题图所示的连接,假设:采用异步通信方式,偶校验,1位停止位,8位数据位,波特率因子为16,片选地址为300H。请编写程序实现:从PC键盘输入字符,将该字符从串口中发送出去(假设8253A已经被初始化,满足了波特率的要求)。

34、方式字:0111 11 10B7EH;复位命令:40H;正常工作命令:0001 0001B=11HMOV DX,301H;8251空操作MOV AL,00HOUT DX,ALMOV AL,40H ;8251内部复位OUT DX,ALMOV AL,7EH;方式字OUT DX,ALMOV AL,11H;工作命令OUT DX,ALLOP: MOV AH,0BH ;查有键按下吗? INT 21HCMP AL,0JE LOPMOV AH,1;读键INT 21HMOV AH,AL ;保存按的键LOP1: MOV DX,301H;查可发送吗? IN AL,DXAND AL,01HJZ LOP1MOV DX,

35、300H;发数据MOV AL,AHOUT DX,ALLOOP LOP通过8251A接收100个字节数据,并将这些数据存入以BUFF开始的内存单元中。假设采用异步方式,波特率9600b/s,8个数据位,1个停止位,奇校验。要求采用中断方式进行数据传输,如果接收错误,舍弃不存储接收的数据。;*设置中断向量;开8259A中断MOV DX,201H ;* 8251A初始化 XOR AX,AX;空操作 OUT DX,AL MOV AL,40H;内部复位 OUT DX,AL MOV AL,01011110B;方式字 MOV DX,AL MOV AL,00010100B;命令字 MOV DX,ALMOV SI,OFFSET BUFF ;初始化指针 MOV CX,100LOP1: STI;开中断HLT LOOP LOP1;主程序1分 MIR5: PUSH AX;保护数据 PUSH DX MOV DX,201H;读入状态 IN AL,DX TEST AL,38H;检查数据是否错误 JNZ ERROR MOV DX,200H;接收数据 IN AL,DX MOV SI,AL;存数据 INC SI ERROR:MOV AL,20H;中断结束 OUT 20H,AL POP DX;恢复数据1分 POP AX IRE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论