微机原理与接口技术试题

  • 格式:doc
  • 大小:235.36 KB
  • 文档页数:8

一、选择题1. 中断处理中,返回到主程序是由哪条指令来完成?( D )A .PUSHB . POPC .RETD . IRET2.下列中断类型不属于内部中断的是( A )。

A .INTRB .INT 21HC .溢出D .除以03. 假定 (SS)=3000H ,(SP)=0100H ,(AX)=2107H ,执行指令PUSH AX 后,存放数据21H 的物理地址是( D )。

A .30102HB .30101HC .300FEHD .300FFH答案:D ( 栈顶的PA=10H*3000H+0100H=30100H ,压栈SP-2, 高字节21H 放在高地址300FFH 里)4、8086的存储器分段结构,每个段的长度不超过( D )A.128KBB.32KBC.1MBD.64KB5、 8086标志寄存器的标志位中,用来判断结果正负的是( B )A 、ZFB 、SFC 、DFD 、CF6、 必然使BH 中的数变为奇数的指令是( )A .ADD BH ,01HB .OR BH , 01HC .XOR BH ,01HD .TEST BH ,01H7、BUF DB 12H DUP (0, 2 DUP (1, 2) , 3) 上述语句汇编后 , 为变量BUF 分配的存储单元字节数是( B )A.60HB.6CHC.12HD.24H8、当8086引脚 时,表示8086CPU 当前正在进行(D )操作。

A.读存储器B.写存储器C.写I/O 口D.读I/O 口9. 将累加器AX 的内容清零的错误指令是( D )。

A .AND AX ,0B .XOR AX ,AXC .SUB AX ,AXD .CMP AX ,AX10. 程序计数器PC 存放的是 ( D ) 。

A .程序总的指令条数B .程序已执行的指令条数C .程序尚未执行的指令条数D .下一条指令的存储地址11、汇编语言源程序文件的扩展名为( C )。

A .exeB .docC .asmD .C12、段定义语句以( B )语句结束。

A.ENDB.ENDSC.ENDPD.ENDM13、8086系统的15H 号中断的中断向量存放在内存储器地址为( A ) 的单元中。

A. 0000:0054H ~0000:0057HB. 0000:0060H ~0000:0063HC. FFF0:0054H ~FFF0:0057HD. FFF0:0060H ~FFF0:0063H 答案:A (15H*4=21D*4=84D=54H)14、下列指令中正确的是( D )。

A. IN DX, ALB. IN AL, 265HC. OUT AL, DXD. XOUT 24H, AL15、要输入地址为1234H 的 I/O 端口中的 8 位数据,正确的指令是( B )A 、 MOV DX , 1234HB 、 MOV DX , 1234HOUT DX , AL IN AL , DX1,0,/0WR RD M IO ===C、IN AX ,1234HD、OUT DX ,1234H16、运算结束后,标志位ZF=0,含义是(C )。

A.运算结果为正数 B.运算结果为负数C.运算结果不为零D.运算结果为零17、下列8086CPU的四个段寄存器中,在程序设计中是不可省略的寄存器是( A )。

A、CSB、DSC、ESD、SS18、占用CPU时间最长的数据传送方式是( C )。

A. DMAB. 中断C.查询D.无条件19、指令MOV AX, [BX][DI]的源操作数的寻址方式是(C)A、寄存器寻址B、寄存器间接寻址C、基址变址寻址D、寄存器相对寻址分析:见教材P48的例题3-920、设串行异步通信的数据格式是:1个起始位,7个数据位,1个校验位,1个停止位,若传输率为1200bps,则每秒钟能传输的最大字符数为( B )个。

A. 100B.120C.1200D.240二、填空1、ADC0809是一个分辨率为( 8 )位,具有( 8 )路模拟量输入的A/D转换器。

2、按数据流的方向,串行通信可分为:单工、(半双工)、(双工)三种方式。

3、微机系统中,I/O端口的编址方式有(统一编址)和(独立编址)两种。

4、8086 CPU地址总线共有(20 )条,可寻址空间(1M )字节。

5、8253A芯片有( 3 )个计数通道,每个通道可有( 6 )种工作方式。

每个计器的计数长度是(16)位。

6、IN和OUT指令中传送数据的寄存器是(AL )。

7、I/O接口内的状态字是通过(控制)端口传送到CPU。

8、DAC0832的工作方式是(直通)方式、(单缓冲)方式、(双缓冲)方式。

9、8086微处理器可访问的I/O地址空间大小为(64KB )。

10、DMA控制器8237A有(40 )个引脚,其内部有(4 )个DMA通道,每个通道一次传送的最大长度为( 64 )KB 。

11、DAC0832 的VREF接输入电压+10V,则其分辨率为(10V/256=39.1)mV 。

三、名词解释1、接口:位于计算机系统与外设之间,具有独立功能、用来协助完成数据传送和控制任务的逻辑电路。

2、采样:把一个连续变化的物理量(模拟量)按时间周期性地取出瞬时值的过程,也叫取样。

3、量化:用有限的n位二进制数码来近似逼近时间离散、幅值连续的采样瞬时值。

4、中断:当CPU执行程序过程中,由于随机事件引起CPU暂时停止正在执行的程序,而转去执行用于处理该事件的程序,处理完后,又返回被中止的程序断点出继续执行,这一过程称为中断。

5、中断向量:即中断服务程序的入口地址。

四、编程1、若8255A的端口地址为180H~183H,端口A方式0工作,输入;端口B方式1工作,输出;端口C方式0工作,输出。

编写初始化程序MOV AL, 94H ;94H=1001 0100 ,见下图MOV DX, 1 83H ;控制口的地址OUT DX, AL2、8253的4个端口地址分别为310H、312H、314H、316H,输入脉冲CLK的频率为2MHz,用十进制计数,编写出用计数器0产生频率为2kHz方波的初始化程序。

分析:根据题目要求,采用计数器0、工作方式3(方波)、二进制计数。

计数初值为:N= 2MHz /2kHz =1000,方式控制字为00110111B,即37H。

8253的方式控制字初始化程序:MOV DX,316H ;设定控制端口MOV AL,37H ;写入控制字OUT DX,ALMOV AX,1000 ;设定计数初值MOV DX,310H ;计数器0的端口地址OUT DX,AL ;写计数初值1000的低字节00MOV AL,AH ;取出计数初值1000的高字节10OUT DX,AL ;写计数初值1000的高字节103、用8251A串行发送数据时,编写8086CPU查询发送设备是否准备好的程序段(即:查询8251A 的TXRDY线的状态)。

给定8251A的状态口地址为309H ,8251A状态字格式如下所示。

L:MOV DX,309H ;8251A状态口地址IN AL,DX ;读入8251A状态字AND AL ,01H ;查状态字的D0位是否是 1(发送器是否准备好) JZ L ;发送器没有准备好,继续查询8251A 状态字格式4、下图DAC0832以单缓冲方式工作,单极性输出,用8086汇编语言编写输出端 V0 产生三角波电压的程序DAC0832的端口地址为278H上升段:输入给DAC0832的数字量先从0开始,逐次加1,当输入数字量为0时, DAC0832输出的模拟量为0V 。

当输入数字量逐次加1,最终为FFH 时, 则DAC0832输出的模拟量为+5V 。

下降段:输入给DAC0832的数字量先从FFH 开始,逐次减1,当输入数字量为FFH 时, DAC0832输出的模拟量为+5V 。

当输入数字量逐次加1,最终为00H 时, 则DAC0832输出的模拟量为0V 。

VO +5V 时间 0上升段 下降段输出端V0产生三角波电压的程序MOV DX,278H ; 0832的端口地址送DXA0:MOV CX,0FFH ;三角波电压的最大值MOV AL, 00H ; 准备三角波电压的起始输出数据A1: OUT DX, AL ;输出三角波电压的上升段INC AL ;输出值加1(上升段三角波电压的递增步进值)LOOP A1 ;CX-1后,CX不等于0,则继续输出下一个电压MOV CX,0FFHA2: DEC AL ;输出值减1(即:下降段三角波电压的递减步进值) OUT DX, AL ;输出三角波电压的下降段LOOP A2 ;CX-1后,CX不等于0,则继续输出下一个电压JMP A0HLT5、编程实现键盘输入的小写字母转换成大写字母并在显示器显示出来。

(要求完整程序)CODE SEGMENTASSUME CS:CODESTART: MOV AH, 01H ;从键盘输入字符的DOS调用,见P104,NT 21HCMP AL,‘a ‘;AL(从键盘输入字符的ASCII码存在AL中)和小写字母a 的ASCII码比JB EXIT ;P68,从键盘输入字符的ASCII码小于小写字母aCMP AL, ‘z’;从键盘输入字符的ASCII码和母z的ASCII码比较JA EXIT ;P68,从键盘输入字符的ASCII码大于小写字母zSUB AL, 20H ;小写字母转换成大写字母(ASCII码减去20H)MOV DL, AL ;DOS调用入口参数送DL,见P104,MOV AH, 02H ;显示字符的DOS调用的功能号02H送AHINT 21HEXIT: MOV AH, 4CH ;结束程序INT 21HCODE ENDSEND START6、编写程序,实现下列函数:MOV AL,XCMP AL,0JGE L1 ;X大于等于0MOV AL, -5 ;否则X小于0,给Y赋值-5JMP NEXT ;输出函数值YL1: JG L2 ;X大于0MOV AL, 0 ;否则(X等于0)给Y赋值0JMP NEXT ;输出函数值YL2:MOV AL,5 ;X大于0,给Y赋值5NEXT:MOV Y, AL ;输出函数值YMOV AH,4CHINT 21H五、接口应用题1、某PC系列微机应用系统以8255A作为接口,采集一组开关S7~S0的状态,然后通过一组发光二极管LED7~LED0显示出来,(Si闭合,对应LEDi灭;Si断开,对应LEDi亮),电路连接如下图所示。

已知8255A的A、B两组均工作在方式0。

(1)写出8255A四个端口地址;(2)写出8255A的工作方式控制字;(3)编写实现给定功能程序。

Si闭合,PAi=0, 编程:让输出PBi=0, 则对应LEDi灭;Si断开,PAi=1, 编程:让输出PBi=1, 则对应LEDi亮,答:(1)8255的A口地址为0000 0111 1110 0000=07E0H,B口地址为0000 0111 1110 0001=07E1H,C口地址为0000 0111 1110 0010=07E2H,控制口地址为0000 0111 1110 0011=07E3H(2)8255的控制字10010000;即90H。