《微机原理复习》PPT课件.ppt_第1页
《微机原理复习》PPT课件.ppt_第2页
《微机原理复习》PPT课件.ppt_第3页
《微机原理复习》PPT课件.ppt_第4页
《微机原理复习》PPT课件.ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

简答题:(1)在下面表格中填入8088CPU中14个16位寄存器。,(2)简述什么是寻址方式?8088CPU中共有几种寻址方式?(3)写出8088CPU中20位物理地址的计算公式,若已知物理地址3B2FBH,段基址为3A00H,计算出段内偏移地址。,(4)用图表示微机系统I/O端口的统一编址和独立编址,并作简要说明。,二、说明下列指令是否正确?如不正确,指出错误原因。MOVAL,BXMUL57HMOVAL,DIMOV32H,ALOUT230H,ALMOVAX,SIMOVBX,SIMOVCS,BPINCBXMOVSS:SI,AX,三、试编写S=0B865H+260CH的程序。两个加数分别放在DATA1和DATA2单元中,运算结果放在RESULT单元中。,答案:,(1),(2)所谓寻址方式,主要是指获得操作数所在地址的方法。8088CPU中的寻址方式共有8种,分别是立即寻址、直接寻址、寄存器寻址、寄存器间接寻址、寄存器相对寻址、基址-变址寻址、基址-变址-相对寻址和隐含寻址。,(3)物理地址=段基地址16+偏移地址偏移地址为3B2FBH-3A000H=12FBH,I/O端口与存储器统一编址方式,是把I/O端口当作存储单元看待,每个I/O端口被赋予一个存储器地址,I/O端口与存储器单元的地址作统一安排。I/O端口单独编址方式是将I/O端口和存储器分开编址,即I/O地址空间与存储器空间互相独立,(4),二、说明下列指令是否正确?如不正确,指出错误原因。MOVAL,BX;错,两操作数字长不相等;MUL57H;错,MUL指令的操作数不能为立即数;MOVAL,DI;对;MOV32H,AL;错,立即数不能作目的操作数OUT230H,AL;错,OUT指令中的端口地址超过255时,不能采用直接寻址MOVAX,SI;错,AX不能作地址寄存器MOVBX,SI;错,MOV指令的两个操作数不能同时为内存单元操作数MOVCS,BP;错,CS不能作目标操作数INCBX;错MOVSS:SI,AX;对,三、DSEGSEGMENT;定义代码段DATA1DW0B865H;定义被加数DATA2DW260CH;定义加数DSEGENDS;数据段结束ESEGSEGMENT;定义附加段SUMDW2DUP(?);定义存放结果区ESEGENDS;附加段结束CSEGSEGMENTASSUMECS:CSEG,DS:DSEG,ES:ESEGSTART:MOVAX,DSEGMOVDS,AX;初始化DSMOVAX,ESEGMOVES,AX;初始化ESLEASI,SUM;存放结果的偏移地址送给SIMOVAX,DATA1;取被加数ADDAX,DATA2;取加数MOVES:SI,AX;和放到附加段的SUM单元中MOVAH,4CHINT21H;DOS返回CSEGENDS;代码段结束ENDSTART;源程序结束,1、在微机系统中,基本的输入输出方式有哪些?它们分别对应于何种外设?2、在8088CPU中,标志寄存器有哪几个标志位?每个标志位为0的含义是什么?3、在8088CPU中,存储器为什么要分段?一个段最多为多少字节?4、8088CPU访问内存的寻址方式有哪几种?举例相关的指令,5、为什么74LS244一般只能作为输入口而不作为输出口?6、给下面程序段的每条指令加上注释,并指出整个程序段实现的功能。MOVCX,10LEASI,FIRSTLEADI,SECONDSTDREPMOVSB,7、IO接口芯片的读写控制信号线要与CPU的那几条信号线联接?,1、答:在微机系统中,主机和外设之间数据的输入和输出方式主要有以下4种:无条件传送、查询、中断和直接存储器存取(DMA)方式。无条件传送方式主要用于慢速的或者总是“准备好”的外设。查询方式主要用于简单的、慢速的且对实时性要求不高的外设。中断方式主要用于实时性要求高的外设。DMA方式用于一些高速外设以及批量数据交换的场合。,2、答:有CF,PE,AF,ZF,SF,IF,TF,DF。CF为0表示无进位,pe=0表示低8位个数为奇数,af为0表示无辅助进借位,zf=0表示运算结果不为0,sf=0表示运算结果最高为为0.OF=0表示无溢出。If=0禁止相应中断,tf=0表示无程序跟踪方式,df=0表示按增地址方式进行串操作。,3、答:分段的主要目的是便于存储器的管理,可以用16位的寄存器访问20位地址空间的存储器。一个段最多为64KB。4、答:有直接寻址,如movax,2100H;寄存器间接寻址,如movax,bp;寄存器相对寻址,如movax,bx+data;基址变址寻址,如movax,bpsi;基址变址相对寻址,如movax,bpsidata.,5、答:74LS244是三态门器件,不具有数据的保存能力,它要求信号源能够将信号保持足够长的时间直到被CPU读取,所以它一般只能作为输入接口,而不能直接用作数据输出接口。,6、答:MOVCX,10;CX赋值10LEASI,FIRST;;读FIRST的偏移地址到SI中LEADI,SECOND;;读SECOND的偏移地址到DI中STD;DF=0,使地址递减;REPMOVSB;重复将FIRST开始的10个数传送到SECOND中。每传送一个数,SI减一,DI值减一;功能:实现10个字节内存数的移动。,7、答:CPU的RD,WR与IO/M信号经译码后得到IOR,IOW,分别与IO芯片的RD和WR相连接。,8、利用74LS244作为输入接口(端口地址:0F0H)连接8个开关K0-K7,用74LS273作为输出接口(端口地址:0F1H)连接8个发光二极管。(1)画出与8088系统总线的连接图,并利用74LS138设计地址译码电路;(2)编写实现下述功能的程序段:若8个开关K0-K7全部闭合,则使8个发光二极管亮;若开关高4位(K4-K7)闭合,则使连接到74LS273高4位的发光二极管亮;若开关低4位(K0-K3)闭合,则使连接到74LS273低4位的发光二极管亮;其他情况,不做任何处理。,MOVDX,F0HINAL,DXCMPAL,0JZZEROTESTAL,0F0HJZHIGHTESTAL,0FHJZLOWWJMPSTOPZERO:MOVDX,F1HMOVAL,0FFHOUTDX,ALJMPSTOPHIGH:MOVDX,F1HMOVAL,0F0HOUTDX,ALLOWW:MOVDX,F1HMOVAL,0FHOUTDX,ALSTOP:HLT,1、阅读下面程序段,给出其中每条语句的含义和执行结果。DSEGSEGMENTDATADB65,70MAXDB?DSEGENDSCODESEGMENTASSUMECS:CODE,DS:DSEGSTART:MOVAX,DSEGMOVDS,AXLEABX,DATAMOVAL,BXCMPAL,BX+1JANEXTMOVAL,BX+1NEXT:MOVMAX,ALMOVAH,2MOVDL,MAXINT21HMOVAH,4CHINT21HCODEENDSENDSTART,2、已知中断向量码21H,计算中断子程序的入口地址。3、CPU与外部设备进行数据传送时,有几种传送方式?采用哪一种传送方式使cpu的效率最高?,4、说明下列指令是否正确?如不正确,指出错误原因。1)MOVAL,CH2)MOVAL,2000H3)MUL32H4)MOVAL,CX5)ANDAL,AL6)MOVBX,DI7)MOVDS,2100H8)INCBX9)OUTDX,AX10)MOVAX,BXBP,5、简述8253芯片的几种工作方式。若时钟频率2MHz,端口地址为40H43H,编写程序段使计数器2产生一个1KHz方波。,6、如果一个8253的CLK端频率为1.19MHz,计数器1用于产生周期为10微秒的对称方波。试编写8253的初始化程序。设8253的起始地址为3F0H。,参考答案:1、DSEGSEGMENT;定义代码段DATADB65,84;定义比较数MAXDB?;定义比较结果DSEGENDS;数据段结束CODESEGMENT;定义代码段ASSUMECS:CODE,DS:DSEGSTART:MOVAX,DSEG;初始化DSMOVDS,AXLEABX,DATA;取变量DATA的偏移地址MOVAL,BX;取DATA的第一个操作数CMPAL,BX+1;DATA的两操作数进行比较JANEXT;大于,跳转至NEXTMOVAL,BX+1;小于,将第二个操作数赋值给ALNEXT:MOVMAX,AL;将AL的内容给MAXMOVAH,2;单字符显示MOVDL,MAX;显示MAX中的内容INT21H;调用中断21HMOVAH,4CH;返回DOSINT21H;调用中断21HCODEENDS;代码段结束ENDSTART;源程序结束比较数值大小,最后显示,2、21H*4=84H84H、85H单元内容为IP,86H、87H单元内容为CS。3、CPU与外设之间的数据传送有无条件传送,查询传送和中断传送三种方式,其中中断传送方式的cpu效率最高。,4、1对;2对;3错,MUL后不能是立即数;4错,CX改为BX;5对;6错,不能在内存之间直接传送数据;7错,不能直接给DS赋立即数;8对;9对;10错,BX与BP不匹配。,5、8253芯片有6种工作方式,分别是方式0(计数结束中断)、方式1(复触发的单稳态触发器)、方式2(频率发生器)、方式3(方波发生器)、方式4(软件触发选通)和方式5(硬件触发选通)。计数器2的计数值为2MHz/1KHz=2000MOVDX,43H;选择控制寄存器端口MOVAL,B6H;控制字也可为0BCHOUTDX,AL;写控制字MOVDX,42H;选择计数器2的端口MOVAL,D0HOUTDX,AL;写入计数初值的低8位MOVAL,07HOUTDX,AL;写入计数初值的高8位,6、答:计数器工作在方式3.1.19MHz对应的周期为0.8403微秒,则计数值为10/0.8403=11.9,取整为12.初始化程序:MOVDX,3F3HMOVAL,80HOUTDX,ALMOVDX,3F1HMOVAL,12OUTDX,ALMOVAL,00HOUTDX,ALHLT,7、8253芯片的计数器2每1.5ms产生一个负脉冲,时钟频率为1MHz,则送到计数器2的计数初值是多少?计数器2工作在什么方式?设8253端口地址为1200H1203H,编写初始化程序。,1)计数器2工作在方式2,而送到计数器2的计数初值为CLK的周期=1/1MHz=1s计数初值=1.5ms/1s=15002)以下是8253的初始化程序:MOVDX,1203H;选择控制寄存器端口MOVAL,0B4H;控制字也可为0BCHOUTDX,AL;写控制字MOVDX,1202H;选择计数器2的端口MOVAX,1500OUTDX,AL;写入计数初值的低8位MOVAL,AHOUTDX,AL;写入计数初值的高8位,8、8253的端口地址为40H43H,若时钟频率为4MHz,编写程序段使计数器2产生一个1KHz方波并设计硬件电路。,8、计数器2的初值为:4MHz/1KHz=4000MOVAL,0B6H(0BCH)OUT43H,ALMOVAX,4000(A0H)OUT42H,ALMOVAL,AHOUT42H,AL,9、编写程序,按以下要求初始化8259A:接口地址为20H和21H;中断为上升沿触发;单片8259A;不写ICW4;与IR0-IR3对应的中断向量码为08H-0BH;IR4-IR7不使用。,9、参考答案:根据要求,各初始化参数及工作参数如下:ICW1=00010010=12H;ICW2=08H中断向量码OCW1=11110000=0F0HMOVDX,20H;A0=0,写ICW1MOVAL,12H;上升沿触发,单片,不写ICW4OUTDX,ALMOVDX,21H;A0=1,写ICW2,OCW1

温馨提示

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

评论

0/150

提交评论