1、2015年三峡大学硕士研究生招生复试微型计算机技术课程考试答案 一、问答题(共15分,4小题)1、(6分) 单片机,单板机,个人计算机2、(3分)数据总线DB,地址总线AB,控制总线CB。3、(3分)取指令、分析指令、执行指令。4、(3分)1011B二、问答题(共15分,5小题)1、(2分)8086采用双列直插式封装,共40个引脚(或者DIP40封装)。2、(6分)数据总线16位,地址总线20位,寻址空间220=1MB3、(3分)最小模式; IO口;写;IO口写。4、(2分) PIN40(Vcc)电源正级,PIN20(GND)电源地。5、(2分)下一条指令的地址。三、基础编程(总分20分,共5
2、题,每题4分)1、(1分)直接寻址;(1分)EA2000H;(1分)PA=20000H+2000H=22000H(1分)数据段中偏移地址为2000H所对应的字送AX中(答成物理地址PA也对)2、(1分)基址寻址或寄存器间接寻址;(1分)EA30H-08H=28H;(1分)PA=40000H+28H=40028H(1分)将DI寄存器中的内容送入堆栈段中偏移地址为28H的字中(答成物理地址PA也对)3、(1分)基址加变址;(1分)EA20H+50H+20H=90H;(1分)PA=20000H+90H=20090H(1分)将立即数99H送入数据段中偏移量为90H的字节(答成物理地址PA也对)4、(1
3、分)段超越基址寻址或寄存器间接寻址;(1分)EA20H;(1分)PA=30000H+20H=30020H(1分)附加段中偏移地址为20H的内容送入AX(答成物理地址PA也对)5、(1分)ANDAH,0FH;(1分)ORAH,03H;(2分)XORAH,0CH;四、程序设计(总分10分,共10空,每空1分)(1分)MAX DW?(1分)PUSHDS(1分)MOV AX,XX(1分)CMP AX,YY(1分)JA GOMAX(1分)ENDSTART(3分)、,分别为顺序、分支、循环,(三者顺序可任意)(1分)分支五、子程序设计(10分)(2分)栈的规则是先进后出FILO(或类似答案,答对先后顺序即
4、给分)(4分)0FFFH=11H,0FFEH=22H,0FFDH=33H(也可不填),0FFCH=44H(也可不填)(2分)AX=3344H;BX=3344H(2分)SP=0FFEH六、存储器的设计(10分)1、(5分)参考第4片画法(图略)其中,画出芯片计1分,数据线D0-D7计1分,地址线A0-A11计1分,CE线计1分,OE线计1分。(3分)A19A18A17A16A15A14A13A12A11A10A9A8A7A6A5A4A3A2A1A0下界00010100000000000000上界00010100111111111111(2分)2732:14000H14FFFH七、I/O软硬件设计
5、(10分)(参考代码,注释部分不扣分。)(0.5分).MODEL SMALL; 声明存储模式为SMALL(0.5分).DATA(0.5分).STACK ; 定义堆栈段(默认1KB大小)(0.5分).CODE; 定义代码段(0.5分).STARTUP; 程序入口(0.5分)MOVDX,201H;状态口地址(1分)LOP:INAL,DX;读取外设的状态字(1分)TESTAL,10000000B;状态位第7位是否为1?(1分)JZLOP;不是1则继续查询(0.5分)DECDX;数据口地址;或MOV DX,200H(0.5分)INAL,DX;从数据口输入数据(0.5分)MOV BL,AL;也可以是其他
6、寄存器(1分)SAL AL,1;或者MOV CL,2(1分)SAL AL,1;或者SAL AL,CL;或SHL AL,CL(1分)ADD AL,BL(0.5分).EXIT;返回DOS操作系统(0.5分)END;程序结束八、8255软硬件设计(10分)(1分)A11A10A9A8A7A6A5A4A3A2A1A0下界001110000000上界001110000011(1.0分)8255的端口:380H383H(参考代码,注释部分不扣分。)DATASEGMENT;定义一个名为DATA的逻辑段DATAENDS;逻辑段DATA结束STAKSEGMENT STACK;定义一个名为STAK的堆栈段STAK
7、ENDS;STAK段结束(0.5分)CODESEGMENT;定义一个名为CODE的逻辑段(0.5分)ASSUMECS:CODE,DS:DATA,SS:STAK;对各段进行段寄存器分配(0.5分)START:(0.5分)MOVAL, 91H;10010001B,或者1000 1111B(8FH)(0.5分)MOVDX, 383H;指向控制口(0.5分)OUTDX, AL;写控制口(0.5分)DECDX;指向C口,或MOVDX, 382H(0.5分)LOP:INAL, DX;C口输入数据到AL(0.5分)TESTAL, 08H;0000 1000B,测试PC3(0.5分)JZLOP;非高电平继续等待(0.5分)MOVDX, 380H;高电平,则指向A口(0.5分)INAL, DX;从A口输入数据(0.5分)MOVAH,4CH;返回DOS操作系统(0.5分)INT 21H(0.5分)CODEENDS;CODE段结束(0.5分)ENDSTART