欢迎来到课桌文档! | 帮助中心 课桌文档-建筑工程资料库
课桌文档
全部分类
  • 党建之窗>
  • 感悟体会>
  • 百家争鸣>
  • 教育整顿>
  • 文笔提升>
  • 热门分类>
  • 计划总结>
  • 致辞演讲>
  • 在线阅读>
  • ImageVerifierCode 换一换
    首页 课桌文档 > 资源分类 > DOCX文档下载  

    (完整版)微机原理复习题答案.docx

    • 资源ID:889416       资源大小:161.43KB        全文页数:28页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    (完整版)微机原理复习题答案.docx

    微机原理复习大纲复习范围:1 .作业2 .书上例题3 .课堂上反复强调的内容4 .复习题微机原理复习题一、单项选择题1. PC机是(C)A、单片机B、单板机C、微型计算机D、微型计算机系统2. CPU中运算器的主要功能是(D)A、算术运算B、逻辑运算C、函数运算D、算术运算和逻辑运算3. 8086CPU中的段寄存器用来存放(_£)A、存储段的物理地址B、存储器的逻辑地址C、存储器的段基值D、存储器的起始地址4. 8086系统中内存储器的地址空间为1M,而在进行I/O读写时,有效的地址线是(B)A、高16位B、低16位C、高8位D、低8位5. 8086CPU在进行写内存操作时,控制信号MZIO和DT/R是(D)A、00B、OIC、10D>I16. 芯片8288在8086CPU系统中用作(C)A、总线锁存器B、总线驱动器C、总线控制器D、总线仲裁器7. 有一静态RAM芯片的地址线为AoAg,数据线为DoD3,则该存储器芯片的存储容量为(D)A、2KX4位B、1KB(B:字节)C、2KBD、1KX4位A、便于快速寻址B、节省所占的内存空间C、减少执行指令的总线周期D、减少读写错误9 .有一8086系统的中断向量表,在003CH:003FH单元开始依次存放34H、FEH>OOH和FoH四个字节,该向量对应的中断类型码和中断服务程序的入口地址分别为(C)A、0EH,34FE:OOFOHB、0EH,0F000:0FE34HC、0FH,0F000:0FE34HD、0FH,OOFOH:34FEH10 .8259A可编程中断控制器中的中断服务寄存器ISR用于(A)A、记忆正在处理中的中断B、存放从外设来的中断请求信号C、允许向CPU发中断请求D、禁止向CPU发中断请求11 .当8255A工作在方式1的输入状态时,8255A与外设之间的联络信号为(C)A、IBF、ACKB、OBF、ACKC、IBF、STBD、OBF.STB12 .8253可编程定时/计数器的计数范围是(Q)A、0-255B、1-256C、0-32768D、1-6553613 .可编程定时器/计数器8253的6种工作方式中,既可软件启动,又可硬件启动的是(B)A、方式1,2;B、方式2,3;C、方式3,5;D、方式2,514 .根据串行通信规程规定,收发双方的(B)必须保持相同。A、外部时钟周期;B、波特率因子;C、波特率;D、以上都正确15 .825IA用作异步串行通信接口,如果设定波特率因子为16,而发送器与接收器时钟频率为19200Hz,则波特率为(A)oA、1200波特;B、2400波特;C、9600波特;D、19200波特16、10进制数一127的补码为(A)A、10000001B、10000000C、00000001D、1111111117、指令MOVBX,DATABX采用的寻址方式是(DA、立即寻址B、寄存器间接寻址C、直接寻址D、寄存器相对间接寻址18、已知AL=7EH,DL=8AH,执行CMPAL,DL指令后,标志寄存器中C、O、S、Z四标志的状态分别为(C)。A、0、0、1、0B、0、1、1、0C、1、0、I、0D、1、0、0、019、已知BL=O8H,DL=0E2H,执行XoRDL,BL指令后,DL寄存器中的数为(D)A、132B、20HC、OOHD、OEAH20、CPU响应中断后得到中断类型码是9,则从(C)单元取出中断服务子程序的入口地址A、0009HB、00009HC、00024HD、0024H21十进制数66转换成二进制数为(D)A.11000010B.OllOOiIOC.11100110D.0100001022下列数中最小的是AA.(101001)2B.(52)8C.(2B)16D.(50)1023设(Iol)X=(41)16.求X=(C)A.6B.10C.8D.1224用16位二进制补码表示一个带符号数,其最小数为(C),如表示一个无符号数,其最小数为(八)A.0B.-32767C.-32768D.-6553625一个8位二进制整数,若用补码表示,由3个“0”和5个“1”组成,则最小值为(C)。A.-120B.-8C.-113D.-11268086/8088加电复位后,执行的第一条指令的物理地址是(旦A.0FFFFHB.FFFFOHC.0000HD.0240H278086在执行MoVALjBX指令的总线周期内,若BX存放的内容为2034H,则BHE二,和AO的状态为DoA.0,1B,0,0C.l,1D.1,028在8086/8088CPU中,一个最基本的总线周期数由(D)个时钟周期(T状态)组成,在TI状态,CPU往总线上发送的是(B)信息。A.1B.2C.3D.4A.数据B.地址C.控制D.其他298086用于中断请求输入的引脚信号是(八)。A.INTR和NMlB.INT和NMlC.INTR和INTAD.INTEWINET308086CPU响应单个可屏蔽中断的条件是(Q)。A.CPU开中断B.外设有中断请求信号C.外设中断请求信号不屏蔽D.同时满足上述A,BC条件,且正在执行的指令执行完毕。31不需要访问内存的寻址方式是(旦)。A.直接寻址B.立即数寻址C.间接寻址D.变址寻址32条件转移指令JENEXT,能转移到语句标号为NEXT执行的条件是(D)0A.ZF=OB.CF=IC.CF=OD.ZF=I33实现Al寄存器中D7和DO都取反的指令是DA.ANDAL,7EHB.ORAL,81HC.TESTAL,81HD.XORAL,81H二、多项选择题1.8086CPU的下列寄存器中,不能用作寄存器间接寻址方式时的地址寄存器的有(ACD)。A、AXB、BXC、CXD、DXE、SI2 .8086有两种工作模式,即最大模式和最小模式,其中最小模式的特点是(ADE)。A、8086提供全部控制信号B、必须使用总线控制器8288C、必须使用总线收发器D、必须使用总线锁存器E、构成单处理器系统3 .大部分DMAC都拥有(BCD)等传送方式。A、直接传送方式B、单字节传送方式C、查询传送方式D、成组传送方式E、中断传送方式4 .要对可编程接口芯片进行读操作时,必须满足(AB)A、CS=LB、RD=L,WR=HC>WR=L,RD=HD、RD=LWR=LE、RD=H,WR=H5将累加器清零的正确指令是ABCA.ANDAX,OOHB.XORAX,AXC.SBBAX,AXD.CMPAX,AX三、判断题1 .在8086最小方式的总线读时序图中,在T2时钟周期时,ADo-ADi5,总线上有一个高阻态。(SL)2 .对于可屏蔽中断的嵌套处理原则是允许优先级高的中断打断优先级低的中断,允许同级中断相互打断,而不允许优先级低的中断打断优先级高的中断。(£)3 .8086CPU在收到外部中断请求信号以后,进人中断响应周期,通过IN指令读取中断类型号,从而就可获得中断服务程序入口地址。(A)4 .可编程定时器/计数器,其定时与计数功能可由程序灵活地设定,但由于是由软件控制,在计数过程中必然会占用CPU的时间。(X)5 .指令一般包括两部分:操作码和操作数。(±)6 .一个总线周期有一个或若干个指令周期组成。(×)7 .8086有一个16位标志寄存器,它包含了6个状态标志位和3个控制标志位。(±)8 .一片8259A中断控制器最多能接收8个中断源。(X)9 8086CPU的逻辑段允许段的重叠和交叉。(工)10 8086CPU的标志寄存器FR是16位的,每一位都有定义。)11在8086的主存中,个字节占用一个存储单元,一个字占用两个相邻的单元,字的高8位放在高地址单元,低8位放在低地址单元。(工)128086CPU的ADoAD15在执行指令时,先传数据,后传地址。(/)四、填空题1(640)o=(1010000000)2=(280)162 .每片8253包含有3个独立的16位计数通道,每个通道具有6种工作方式。3 .取指令时,8086会自动选择q_值作为段基值,再加上由EJg供的偏移量形成物理地址。4 .8086/8088微处理器被设计为两个独立的功能部件:EU和BlU。5 .TEL8086的当前CS=2000H,IP=5678H,则将执行20位物理地址,5678H处的程序。6 .8086存储器组织中,逻辑地址由十六进制生位构成的,物理地址又由十六进制_匚位构成。7 .一片8259A可管理乙级中断,若级联三片从片则可以管理一29级中断。8、若DS=1200H,则当前数据段的起始地址是20OOH,末地址是,IFFFH。9 .系统中数据传送的控制方式中程序控制的数据隹送又分为条件杳询和无条件查询,10 .“串行通信”是指数据一位一位依次传送。在串行通信中有两种基本的通信方式:即晅和#步11 .主机和1/0设备间的数据传送有程控、中断和DMA,IOP三四种方式,其中DMA和IOP传送过程中CPU无需参与,而是由DMAC和IoP控制完成。12 38.8086系统中,要求各个逻辑段必须从节的整数倍边界开始,即段首地址的低4位总是Q。将段首地址的高16位地址码称作段基址,存放在相应的段寄存器中。13 .由逻辑地址获得物理地址的计算公式为段基址*16+偏移地址o14 .80X86系统中,堆栈是遵循后进先出原则。15 .在8086最小模式的典型配置中,需2片双向总线收发器8286,因为8286数据线为8位,而8086数据总线为16位o16.8086/8088系统中I/O端口地址是二进制数一16位的,可寻址.64K个端口。每个端口中含8位的数据。17.8086/8088的I/O指令中若采用直接寻址,要求端口地址必须在0-255范围之内:若采用间接寻址,则端口地址在0-65535范围之内。18位二进制补码所能表示的十进制数的范围为+127-128,前者的补码为(OIlllIll),后者的补码为(IOoooooO)o19己知段基址和偏移地址分别为20I5H和0028H,此存储单元的物理地址是(20I78H)。20若8086的引脚MN/MX接+5V,则当执行OUT指令时,其引脚信号MZIO=0RD=1, WR=0(填写高、低电平)。218086工作于最小模式下,CPU完成存储器读操作时,信号MZIO=1,RD=0.WR=J和DTR=0若进行字节操作,单元地址为奇地址,则BHE=0,和AO=1若进行字操作且该字地址为偶地址,则BHE=0和AO=022写出一条指令完成下述功能:1)将AH的最高3位清零,其他位不变:ANDAHJFH:21将AH的低4位置1,其他位不变:ORAH9FH:3)将AH的最低位取反,其他为不变:XoRAHolH23宏汇编语言程序被汇编时,指令语句产生代码指令,伪指令语句不产生代码指令,宏指_语句可能产生也可能不产生代码指令。24调用程序、子程序传送参数的方法通常有,!找_、寄存器和内存空间三种方法。25伪指令EQU、DB、DW、MACRO的标号名字域必须有名字或标号的伪指令为EoU,MACRO26乘法指令MUL的指令格式只有一个源操作数,若源操作数的类型属性为字节,则目的操作数在AX中,若源操作数的类型属性为字,则目的操作数在DX,AX中。27请给出标志寄存器中标志位OF、IF、SF、ZF、PF、CF的说明:OF溢出、IF中断、SF符号、ZF零、PF奇偶、CF进位。28、指令XLAT通常用于查表操作,在使用该指令前,应把表首的偏移首地址送入BX,待转换的代码在表中的序号送AL,29若要求不产生汇编错误,则字符串'ABC只能出现在伪指令DB中。30为下述情况各举一例。寄存器与存储单元内容相加送寄存那ADDAXJlOoOHl0寄存器互送NloVAX,BX.将标志寄存器进栈PUSHF。立即数与寄存器内容相加送寄存器ADDAH,01H0(5)将48H、5AH存入字节数据区ARRAYBARRAYBDB48H,5AH。五、简答题1 .在I/O接11电路中,按主机与外设间传送的信息类型,端口可分为哪几类?CPU对这些端口实行读操作还是写操作?答:I/O端口分为:数据口,状态口,控制口。CPU可对数据口进行读或写操作,对状态口进行读操作、对控制口进行写操作2 .与并行通信相比较,串行通信有什么特点?(1)串行通信适宜于远程数据传送;(2)串行通信通常传送速度较慢;(3)串行通信的费用较低,传输线少,可借用电话网络来实现远程通信.3.8086/8088CPU响应任何一种中断时,都会自动的将IF和TF标志清零,其目的是什么?答:将IF标志清零的目的是在本次执行中断服务程序的过程期间,不要再响应其他的可屏蔽中断;将TF标志清零的目的是不要单步执行中断服务程序。4 .CPU响应多种中断时,都要自动地保护断点,为什么?答:“保护断点”是指主程序中当前被中断的指令的下一条指令所存放的存储单元的逻辑地址,(称为断口地址,或断点地址,简称断点)包括段值和段内偏移量两部分(既CS和IP中的内容)作为返回地址被自动地压人堆栈中保护起来。这样做的目的是使中断服务程序运行结束时,使程序能返回到主程序的断点处去继续执行。5 .当某一中断发生时,CPU如何能找到相应的中断向量?答:当某中断发生时,CPU只有在中断向量表中找准找到相应的中断向量,即相应的中断服务程序的人口地址,才能去执行相应的中断服务程序。若能找准存放该中断向量的4个存储单元的地址,就意味着找到了该中断向量。若把存放每个中断向量的4个单元的第一个单元的地址叫做向量地址,由于中断向量是按中断类型码n从0255的顺序存放的,故向量地址与中断类型码有如下关系:向量地址=OOO0:NX4。如:O号中断的向量地址为OOO0:0000,我示O号中断的中断向量存于地址为OOo0:OOOO开始的4个单元中,1号中断的向量地址为O(X)0:OOO4H,表示1号中断的中断向量存于地址为以O(X)0:OOO4H开始的4个单元之中,等等。因此,任何个中断的到来,CPU只要能得到它的中断类型号,就能找到它的中断向量。把它的偏移量传送入IP,段值送入CS,即能执行相应的中断服务程序。6 .分别指出下列指令中源操作数的寻址方式:(5分)A.MOVSI,100立即寻址B.MOVCX,DATASI寄存器相对寻址C.MOVSI,AX寄存器寻址D.ADDAX,BXDI基址加变址寻址E.POPHF寄存器寻址7 .什么是中断?什么是中断向量?什么是中断向量表?INT24在中断向量表的什么位置?一个完整的中断过程有哪几个步骤?答:中断是指CPU在正常运行时,由于内部、外部事件或由程序的预先安排引起的CPU中断正在运行的程序,转而到内部、外部事件预先安排的服务程序(中断子程序)中去执行。中断向量是中断处理子程序的入Ll地址,每个中断类型对应一个中断向量。中断向量表是中断类型码和与此类型码相应的中断服务程序之间的一个连接链。每一个中断服务程序入口地址的IP和CS成为一个中断指示字或中断向量。24*4=96=6OHINT24在中断向量表的OOO0:0060H0000:0063H处。一个完整的中断过程包括中断请求、中断排队、中断响应、中断处理和中断返【可五个步骤。8 .简述8086CPU由哪些寄存器组成。答:4个16位的通用寄存器:AX累加器、BX基址寄存器、CX计数器、DX数据寄存器:4个16位的专用寄存器:SP堆栈指针寄存器、BP基址指针寄存器、Sl源变址寄存器、Dl目的变址寄存器:一个标志寄存器FR;4个16位的段地址寄存器:CS代码段寄存器、DS数据段寄存器、SS堆栈段寄存器、ES扩展段寄存器:一个16位的指令指针寄存器IP9 .简述8086/8088系统中为什么要使用地址锁存器?答:为获取并保持地址信息,系统中要使用地址锁存器。因为8086/8088系统中低16位地址线与数据线分时复用,高4位地址线与状态线分时复用,在每个总线周期的Tl状态期间,CPU通过20位地址线向外发送地址,然后在T2、T3、T4状态时传送数据或状态信息,而在一个完整的总线周期(T1T4)内,被访问的存储器或I/O端口始终需要完整的地址信息,这就要求在Tl状态时地址有效期间由地址锁存器将地址信号锁存并保持,以供被访问的存储器或I/O端口在整个总线周期内使用。10 .已知SDRAM6264的片容量是8KX8位,问它的外部引脚中含多少根地址线和数据线?答:从该芯片的容量可知,其内部含有8192个(8*1024)存储单元,每个单元能存放一个字节数据,因为13根地址线才能对8192个存储单元寻址(23=8192),所以它有13根地址线,8位数据线。因为在读写每一个存储单元的8位二进制数时需要8位数据线。六、简单分析、设计题1、阅读如下程序段,回答提出的问题。MOVAX,3456XCHGAX,BXMOVAX,3456SUBAX,BXJEDONEKK:ADDAX,BXDONE:该程序段执行完JEDONE语句后,AX=O,ZF=JL,IP=DONE。2请在程序段的每一空框内填入一语句(不得修改其它语句),以实现下述功能:将字变量VARMl中的非零数据左移到最高位为“1”止,左移次数存入字节变量VARB中,左移后的结果存入字变量VARW中。MOVBLQMOVAX,VARWlADDAX,0JSDONEGOON:INCBLADDAX,AXJNSGoONDONE:MOVVARW,AXMOVVARRRL3为什么说8088CPU为准16为微处理器,而8086CPU为16为微处理器?答:8088CPUU内部寄存器均为16位,可一次完成16位二进制的算术及逻辑运算,似外部数据总线为8位。而8086则内部寄存器及外部数据总线均为16位,可一次完成16位二进制的算术及逻辑运算。4己知,(DS)=0120H,(SS)=2000H,(ES)=0FF2H,(BX)=100OH,(BP)=2000H,(SI=3110H,(SP)=1004H,试写出下面每条指令中存储器操作数的物理地址。(1)MOVAL.BX+SI÷9000HDS*16+BX+SI+9000H1E31OH(2)MOVBX,BP-18SS*16+BP-182IFEEH(3)ADDSS:BX+SI-3,ALSS*16+BX+SI-324IODH(4)SUBSI+BP,CXSS*16+SI+BP251IOH(5)PUSHFSS*16+SP-221002H堆栈指针寄存器SP的初值位IoOoH,AX=2000H,BX=3000H,试问:(1) 执行指令PUSHAX后,SP=OFFEH(2) 再执行指令PUSHBX和PoPAX后,SP=OFFEH,AX=3000H,BX=300OH5程序段执行完后,AX,BX,CX,DX寄存器的内容分别是什么?START:MOVAX,OlHMOVBX,02HMOVCX,03HMOVDX,04HNEXT:INCAXADDBX,AXSHRDX,1LOOPNEXTAX=4BX=08HCX=ODX=O.6判断下面8086汇编程序执行结果:MOVAX,OFFFDHMOVBX,8000HADDAX.BXHLT执行结果AX=7FF0HBX=8000H对应标志位ZF=OSF=OOF=1CF=1PF=OAF=O7.下面程序段执行完以后,BX的内容是什么?MOVBX,OOFFHANDBX,OFFFHORBX,OFOFHXORBX,OOFFH答:BX=OFOOH8下列程序段完成什么工作?DATlDAT2DB30DUP(?)DBII10DUP(?)IMOVCX,10MOVBX,20MOVSI,0MOVDI,0NEXT:MOVAL,DATlBXSIMOVDAT2DI,ALINCSIINCDILOOPNEXT答:把DAT1+20存储单元开始的10个字节搬到DAT2开始的连续10个存储单元中。9.设8086系统中,中断请求信号采用边沿触发方式,单片8259A,中断类型码高5位为OlOl0,中断源接在IR2上,普通全嵌套方式,非自动结束方式,缓冲方式。(设:ICWl口地址为80,ICW2、ICW3、ICW4口地址为81)编写初始化程序。OUT 81H, ALICW4MOVAL,13HICWlOUT80H,ALMOVAL,52HOUT81H,ALICW2MOVAL,09H10.己知(AX)=OI20H,(BX)=2000H,(CX)=0FF2H,(DS)=100OH,(ES)=2000H,存储器中的数据如图所示。请写出下列指令单独执行时,对寄存器和存储器内容将产生什么影响?(1)MOVAX,BXl(5)LDSDI,1000H(2)MOVAX,ES:BX(6)LESSI,OFFEH(3)MOVBX,CX(7)XCHGAX,BX(4)LEACX,IBX(8)XLAT答:该题实际上要求问答8条指令分别执行时的结果。(1)MoVAXJBXl源操作数的物理地址为:100oOH十200OH=1200OH执行结果(AX)=n2000H=9745H(2)MoVAX.ES:IBXlES:IBXl为段超越情况,源操作数物理地址为:20000H+2000H=22000H执行结果:(AX)=I2200OH=4433H(3)MoVBXLCX目的操作数的物理地址为:IoooOH+200OH=1200OH故12001H=OFHJl2000Hl=0F2H原来的内容不再是97H及45H了。(4)LEACXJBXl源操作数的有效地址为BX故(CX)=(BX)=200OH(5)LDSDlJlOoOHl源操作数的物理地址是100OOH+100OH=I100OH,故(DS)=IlK)O2HI=100OH(Dl)=U1000H=2510H(6)LESSI,K)FFEHl源操作数的物理地址为I(X)OOH+offeh=ioffeh,故(ES)=11000H=2510H(SIl=110FFEHl=0F45H(7)XCHGAX,BX.执行前(AX)=012OH.(BX)=200OH执行后(AX)=2000HjBX)=O120H(8)XLAT;(AL)=BX+AL=2000H+0020H=202OHl有效地址EA=2020H时,物理地址为1202OH,故执行XLAT指令后,(AL)=56H°II.写出四条指令,分别能将AX寄存器清零。答:MOVAX,0ANDAX,0SUBAX,AX©XORAX,AX12下列指令是否有错?有则指出错误所在:(1)MOVDS,1I7CH错,立即数不能直接送段寄存器(2)MOVBX,28A0H1错,双操作数指令的两个操作数不能同时在内存中(3)MOVCS,AX错,不能用指令直接往CS寄存器中传送数据(4)MOVDS,ES错,两个段寄存器之间不能传送数据(5)MOVAL,DX错,类型不匹配,寄存器长度不同(6)MOVAX,10001BX(7)MOVBX,AX错,AX寄存器不能用于间接寻址(8)MOVAL,C8H错,以字母开头的卜六进制数前面要加前导O(9)MOVAX,OOFI错,十六进制数应加上后缀O(10)MOVAX,SI-10七、综合分析、设计题1址为DATAB开始的80个单元中,存放某班80个学生的某课程成绩,要求:统计=90分、80-89分、7079分、6069分、60分以下的人数,结果存放在BTRX开始的5个单元中求平均成绩,结果存放在LEVEL中。解:寄存器使用分配,90分以上在DH,80分以上在DL,70分以上在BH,60分以上在BL,60分以下在AH,总分、均分都在DI。DATSEGMENTCONTDB1()DATADB3065.9980.7589JOO.45,60.70BUFFERDB?,?,?LEVELDB?,?DATENDSXORAH,AHXORDX,DX;统计结果清零XORBX,BX;统计结果清零LEASI,DATALEADI.LEVELMOVCL,CONT:总人数送循环计数器goon:MOVALSll;读原始数据ADCDI,AL;累加总分ADCDI+l,0;计算进位CMPAL,9。JLPP8;不高于90分者转PP8INCDH;90-100分的人数加一JMPSTORPP8:CMPAL.8。JLPP7;不高于80分转PP7INCDL;8089分的人数加一JMPSTORPP7:CMPAL.70JLPP6;不高于70分者转PP6INCBH:7079分的人数加一JMPSTORJLPP5;不高于于分者转PP5INCBL;60-69分的人数加一JMPSTORPP5:INCAH;低于60分的人数加一STOR:INCSI;读下一个分数LOOPGOONCX=CX-l,CX不为零转GOoN.继续统计LEASI,BUFFER;回存统计结果MOVLDHINCSIMOVLDLINCSIMOVSILBHINCSIMOVSILBLINCSIMOVSILAHMOVAX,WORDPTRIDI;计算平均成绩MOVCLCONTDIVCLMOVLEvEL,AL;回存平均成绩HLT2在BVFF单元中有一个BCD数A,试根据下列关系编写程序,计算结果存在DES中。A<20,Y=A+20;A<60,Y=A-20;A>=60,Y=A.DATSEGMENTBVFFDB8DESDB?DATENDSMOVALBVFFCMPAL,20JLEXlCMPAL60JLEX2MOVL,80(CmPal,80)JMPSTOPEXl:MOVBL,3MULBL(addal.20)JMPSTOPEX2:SUBALNOSTOP:MOVDESfALHLT3在DATA之下存放100个无符号的8位数,找出其最大者并将其存放在KVFF单元。DATSEGMENTBuFFERDB;自行定义100个数据KVFFDB?DATENDSXORDL.DLLEADI.KVFF:、EXT0:LEASI,BUFFER;MOVCL.99;比较次数为N1次NEXTl:MoVALlSI;INCSI;CMPDLAL;JNCNEXT2;MOVDL,AL;DL中始终存目前最大值NEXT2:DECCL;JNZNEXTl;MoVDI1DL;最大值存储HLT4编写10个字(16位二进制数)之和的程序解:ADDl为被加数,ADD2为加数,SlJM为和,CONT为循环次数LEADI.ADD2;LEABX,SUM;MOVCL,CONT:MOVCH.O;循环初始化CLC:进位清零MADDliMOVAXJSIl:读加数1ADCAXJDIADDSL2:移动源区地址指针ADDDL2;移动目的区地址指针MOVfBX,AXs回存计算结果ADDBX,2;移动“和”存储区地址指针LOOPMADD1;循环控制HLT5暂停5.在某一系统中,有8个开关K7KO,要求不断检测它们的通断状态,并通过发光二极管LED7LEDO显示出来。开关断开,相应的LED点亮;开关合上,LED熄灭。选用8086CPU,8255A和74LS138译码器等芯片,构成应用电路。如下图所示,8255A的PA口作输人口,8个开关K7KO分别接PA7PAO。PB口为输出口,PB7PBo分别连接显示器LED7LED0。试进行编程设置。地址译理 +5V2K×4_Zkcl-4>44>÷jl74LS04答:程序段如卜7MOVAL,90H;方式选择控制字OUT0F3H,AL;写人控制字SET:INAL,OFOH:从PA口读开关状态OUTOFIH.AL:PB口控制比LED,指示开关状态JMPSET;循环检测6 .(1)某系统中,8253的端口地址为0B4H0B7H,令计数器通道1工作在方式0,仅用8位二进制数计数,计数初值为100,试进行初始化编程。答:初始化程序段如下:MoVAL,50HOUT0B7H.AL;置控制字MOVAL,64HOUT0B5H,AL:置计数初值。(2)某片8253的计数器通道2工作在方式1,按BCD码计数,计数值为5000,该端口地址为0B4H0B7H,请初始化编程。答:初始化程序段如下:MOVAL,0B3H:置控制字OUT0B7H,ALMOVAL,OOHOUT0B6H,AL;置计数初值低8位。MOVAL,5011OUT0B6H,AL:置计数初值高8位。7 .对8255A进行初始化,要求A口为输出工作方式0;B口输入工作方式1;C口高四位输入,低四位输出。(地址04AoH0A406H)MoVAL,8EH:工作方式控制字OUT04A3H,AL;控制字送控制口8 .求两个多字节数之和。这两个数在2100OH地址开始的内存单元中,连续存放,低位在小地址一端,结果放在这两个数之后。设这两个多字节数均为八个字节长。试画出程序流程图并编写相应程序。NAMEDZJ-JAFADATASEGMENTDlDB)6DUP(?)SlDB8DUP(?)DATAENDSSTACSEGMENTSTADB50DUP(?)STACENDSCODESEGMENTASSUMECS:CoDE,DS:DATEDTAcSTAORGIoOOHSTART:MoVAX,200OHMoVDS,AX;数据段段基地址送DSMoV SI, IOooH;第一个数指针送SlMOVBX,IOlOH:结果指针送BXMOVCX,4;循环次数送CXCLC:CF=O清零AA:MOVAX,rs;取一个字到AXADCAX,IDII:AX+IDI送AXMOVBXbAX:结果存入FBXPUSHF;保护进位位ADDSL2ADDDL2ADDBX,2POPFLOOPAACODEENDSENDSTARTMOVDI,1008H;第二个数指针送Dl9 .用可编程并行接口芯片8255A作为打印机接口。其中端口A工作于方式一,用于向打印机输出打印数据,端口C用作状态口和控制口。编写程序,打印存储区为1200H1400H内所有字符的程序。设8255A的口地址分别为端口A:OFFFOH,端口B:OFFFlH端口C:0FFF2H,控制口:OFFF3H。ORG5000H;把程序定位在500OHMOVDX,0FFF3H:8255A控制端口地址MOVAL, 0A8H;端口A方式1,输出,PC4%入OUTDX,AL;控制字送控制端口MOVCX,200H;要打印字符的个数MOVDL1200H;存储区起始地址CC:MOVAL,DI:数据段偏移地址送ALMOVDX,OFFFOHOUTDX,AL;字符输出MOVDX,0FFF2H:读打卬机当前状态AA:INAL,DX;读打卬机状态ANDAL,IOH;测i式BUSY信号(PC4)JNZAA;忙等待INCDI;指向下一个字符LOOPCCHLT10 .某8086系统中使用8237A完成从存储器到存储器的数据传送,己知源数据块首地址的偏移地址值为1000H,目标数据块首地址的偏移地址为1050H,数据块长度为100字节,请编写初始化程序。可分为5步来作:a)写工作方式控制字MoVDX,工作方式寄存器端口MOVAL,41H;工作方式控制字OUTDX,ALb)写操作方式控制字MOVDX,命令寄存器端IJMOVAL,OIH:操作方式控制字OUTDX,ALC)源数据块首地址送通道0地址寄存器MOVDX,通道0地址寄存器端口MoVAX,IoOOHOUTDX,ALMoVAL,AHOUTDX,ALd)目的数据块首地址送通道1地址寄存器MoVDX,通道1地址寄存器端口MoVAX,105OHOUTDX,ALMoVAL,AHOUTDX,ALe)数据块长度送通道1基字节数寄存器MOVDX,通道1基字节数寄存器端口MOVAX,64HOUTDX,AL11、编写8251异步模式下的接收和发送程序,完成256个字符的发送和接收,设端口地址:208H(数据端口),209H(控制端口),波特率因子16,1起始位,I停止位,无奇偶校验,每字符8位。(1)发送程序:MoVDX209HMOVAL.40H;复位

    注意事项

    本文((完整版)微机原理复习题答案.docx)为本站会员(夺命阿水)主动上传,课桌文档仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知课桌文档(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-1

    经营许可证:宁B2-20210002

    宁公网安备 64010402000986号

    课桌文档
    收起
    展开