微综合测试题二答案_第1页
微综合测试题二答案_第2页
微综合测试题二答案_第3页
微综合测试题二答案_第4页
微综合测试题二答案_第5页
全文预览已结束

下载本文档

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

文档简介

1、“微机系统原理与接口技术”综合测试题二答案一、单选题1. B2. B3. C4. C5. D6. C7. C8. B9. B10. C简析:1. 该指令对数据段中的奇地址(1011H)单元操作。2该段程序代码完成两个组合BCD码的减法运算。5A中指令少了分隔两个操作数的“,”;B中“1000”的值已超过一个字节可表示的范围;C中EQU后应是常数。7该指令需要1个存储器读周期和1个存储器写周期。二、多选题1. B D2. A B D3. A B C4. A D5. B D6. A B C D7. B C8. B D9. A B10. A B C D三、填空题0FFA3H行,一个过程在没执行完时又

2、被调用,堆栈10011000B,0,10308H,12F8H取指令,分析指令,执行指令81230H简析:段内偏移地址 物理地址段基址*164A230H42000H8230H,则(CS)7900H时,物理地址79000H8230H81230H。73H,1CC,1CF,4简析:ICW2中记录了8259A的8级中断对应的中断类型号的高5位,中断类型号的低3位由中断引脚编号确定,所以IR3脚对应的中断类型号为73H,中断服务程序的入口地址中断类型号*473H*41CCH。四、程序阅读1程序执行后BUF内容为:07H,12H,34H,56H,9AH,0BCH,0DEH,0F0H0F0H,0FFH此程序的

3、功能是:BUF单元中存放计数值“08H”,则程序将从BUF1开始的8个单元中查找关键字78H,若找到则BUF单元计数值减1,且后面8-n四个单元的内容依次前移1字节,n为78H的位置指示,本题中n4。2(1)错误语句:第12行MOVDS,DATA 改正:MOVDS,AX 第22行JS PLUSJNSPLUS 倒数第2行CODEENDCODEENDS(2)需补充的语句:ASSUMEDS:DATA,SS:STACK,CS:CODE,ES:DATA CLD NEG CL ADD CL,BL RET五、存储系统分析与设计(1)题五图中所示RAM芯片有12根地址线和4根数据线,因此一片这样的RAM芯片其

4、存储容量为212*4bit4K*4bit,若需构成8K*8的RAM阵列,共需(8K*8)/(4K*4)4片。这4片RAM芯片应分成2个芯片组,每个芯片组中RAM芯片的地址线A11 A0、读写控制线和片选控制线都连在一起,因此每组中的RAM芯片占用的地址空间完全一样,只是分别提供高4位和低4位的数据,这两个芯片组的地址空间分别为:组E1000H E1FFFH和组E2000H E2FFFH。(2)全译码系统的电路连接可以如下题五图(答案)所示。图中4个芯片的控制线和A11 A0地址线是连接在一起的。D4 D1WED4 D1WEA11 A0 CSD4 D1WEA11 A0 CSE1O0E2O1E3O

5、2O3AO4BO5C O6O73-8译码器题五图(答案) 存储器连接图D4 D1WEA11 A0 CSD4 D1WEA11 A0 CSA11 A0MEMWD3 D0D7 D4A19A16A15A12A13A14A18A17ISA总线 (3)一种可能的填写内存的程序代码如下: MOVAX,0El00H MOVDS,AX;给数据段、附加数据段寄存器赋初值 MOVES,AX MOVDI,0CLDMOVCX,2000H;设置循环计数器赋初值MOVAL,55HREPSTOSB;向DI所指的内存单元中填写“55H”MOVDI,0 MOVCX,2000HREPZSCASB;扫描并比较 JNZNEXT;如有不

6、等于55H的单元,转到NEXT处理MOVCL,77H;正确JMPEXITNEXT:MOVCL,0FFH;出错EXIT:HLT六、综合应用(1)由题六图中74LS138芯片的连接方法可以看出:8255的端口地址为:200H203H;8253的端口地址为;204H207H;(2)8255初始化程序如下: INI8255: MOVDX,203H;取8255控制口地址 MOVAL,10010011B;方式控制字:A、B口工作在方式0输入 OUTDX,AL;PC3-PC0输入,PC7-PC4输出 MOVAL,00001110B;PC7复位,发光二极管灭 OUTDX,AL MOVAL,00001100B;

7、PC6复位,启动脉冲初态为低电平 OUTDX,AL MOVAL00001010B;PC5复位,OE脉冲初态为低电平 OUTDXAL(3)一种可能的采集程序如下:AD:MOVCX,7;控制LOOP循环次数:一共取7个数 MOVBX,0;求和计数器清零STARTAD:MOVDX,203H;取8255控制口地址 MOVAL,0000110lB;PC61,产生启动脉冲 OUT DX,AL MOVAL,00001100B;PC60 OUTDX,AL MOVDX,202H;读PC0判断是否转换结束 WAIT:INAL,DX TESTAL,0lH JZWAIT;PC00,继续查询等待MOVDX,203H;P

8、C01,准备读数 MOVAL,00001011B;PC5l,输出OE正脉冲 OUT DX,AL CALLDELAY;延时等待数据稳定 MOVDX,201H;读B口获取高4位数据 INAL,DX MOVAH,ALMOV DX200H;读A口获取低8位数据 MOVAL,DX MOVAL,00001010B;PC50,读数结束 OUTDX,ALADDBXAX;求和 LOOPSTARTAD MOVDX,0 MOVAX,BXMOV BX,7DIVBX;求7次采样结果的平均值 CMPAX,0FF0H JA NEXT;超限报警 EXIT:RET NEXT:MOVDX,203H;取8255控制口地址 MOVA

9、L,0FH;PC71,发光二极管亮 OUTDX,AL JMPEXIT(4)为使用8253进行定时数据采集和处理,还应该做以下几件事情:初始化8253以产生定时中断请求信号;编写定时采集中断处理程序;填写中断向量表,以保证中断时能正确进人定时采集中断处理程序。8253初始化代码:注意因定时时间较长,8253中的几个计数器串连使用。 INI8253:MOVDX,207H;取8253控制字端口地址 MOVAL,00110100B;计数器0工作在方式2(分频器),二进 OUTDX,AL; 制计数,可读写16位计数值 MOVDX,204H;向计数器0写计数初值 MOVAX,l0000;计数初值,定时lm

10、s =(1/10MHz)*10000 OUTDX,AL;写计数初值低字节 MOVAL,AH OUTDX,AL ;写计数初值高宇节 MOVDX,207H;取8253控制字端口地址 MOVAL,01110100B;计数器1工作在方式2,同计数器0 OUTDX,ALMOVDX,205H;向计数器1写计数初值 MOVAX,1000;计数初值1000(定时1s = 1ms*1000) OUTDX,AL;写计数初值低字节 MOVAL,AH OUTDX,AL;写计数初值高字节 MOVDX,207H;取8253控制字端口地址 MOVAL,10010100B;计数器2工作在方式2,只写低字节 OUTDX,AL MOVDX,206H;向计数器2写计数初值 MOVAL,10;计数初值10(定时10s = 1s *10) OUTDX,AL定时采集中断处理程序: INT_A /DPROC FAR;同(3)中的数据采集代码,注意将RET语句改为RETI语句INT_A/DENDP填写中断向量表:从图中可以看出,该8253使用了ISA总线上的IRQ10中断引脚,该中断对应的中断类型号为72H,中断向量存放地址为001C8H001CBH

温馨提示

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

评论

0/150

提交评论