微机原理及接口技术复习重点

上传人:仙*** 文档编号:242326077 上传时间:2024-08-20 格式:PPT 页数:58 大小:411KB
返回 下载 相关 举报
微机原理及接口技术复习重点_第1页
第1页 / 共58页
微机原理及接口技术复习重点_第2页
第2页 / 共58页
微机原理及接口技术复习重点_第3页
第3页 / 共58页
点击查看更多>>
资源描述
单击此处编辑母版标题样式,编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,单击此处编辑母版文本样式,40,单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,*,*,大家好,综合练习题,一、填空题,二、分析简答题,三、程序分析题,四、编程题,五、存储器扩展题,六、输入输出接口题,一、填空题,在计算机中:,1Byte=,8,bit,,,1Word =,16,bit,。,对于十六进制数码,64.8H,,转换为十进制数时为,100.5,;该数码看作,8421BCD,码时表示数据为,64.8,。,对于十进制数,18.5,,用十六进制数表示时为,12.8,H,;用压缩,8421BCD,码表示时为,18.5H,或,(,00011000.0101,),。,设机器字长为8位,最高位是符号位。则十进制数127所对应的原码为,11111111B,,补码为,10000001B,。,8086CPU内部结构可分为,EU,和,BIU,两部分。,8086CPU 可以访问,8,位和,16,位的寄存器。,8086CPU是,16,位的CPU。,设,SP,为,2000H,,则执行,PUSH AX,后,,SP=,1FFE,H,。,逻辑地址是由,段基址,和,偏移地址,组成。其中,段寄存器中存放的是,段基址,。,将逻辑地址转换为物理地址的公式是,段基址,16,偏移地址。,设有逻辑地址1234H:1234H,试写出其对应的物理地址,13574,H 。,一个含有16个字节数据的变量,它的逻辑地址为1000H:0100H,那么该变量的最后一个字节数据的物理地址是,1010F,H。,8086CPU对外的数据线是,16,条,地址线是,20,条,它的寻址能力为,1M,字节。,数据线和地址线是以,分时复用,方式轮流使用的。,若有如下定义:,ORG 0100H,TAB DW 9876H,当执行:MOV AX,TAB后,(AX)=,9876H,;,而执行:LEA AX,TAB后,(AX)=,0100H,。,若定义 A DB,abcd,,则(A+2)单元存放的字节数据是,c,或,63H,。,8086 CPU在I/O单独编址时,对I/O编址最多使用,16,条地址线,若要从地址为80H的端口读入字节数据,则应该使用指令,IN AL,80H,。,在,8086,系统(XT机)中使用的可编程中断控制器型号是,8259A,,该芯片最少占用,2,个端口地址。,若用4K1的存储器芯片组成12K字节的内存容量,则共需,24,个这样的芯片。,一般情况下,容量为256KB的存储器具有,8,条数据线,,18,条地址线。,在微型计算机系统中,可采用的输入输出方式主要有,程序控制,、,中断方式,、,DMA,三种类型。,可编程接口芯片8255A含有,3,个,8,位的I/O口。A口工作方式有,3,种,B口工作方式有,2,种。,8086/8088 CPU 的中断系统能处理,256,种不同类型的中断。,在8086系统中使用8259A芯片,最多能管理,64,级中断优先级。,内存按存储器性质分类通常分为RAM和,ROM,两类。,二、分析简答题,1,、写出,-23,的原码、反码、补码,并将补码转换成十六进制数,(,设字长为,8,位,),。,答:,X=-23=-10111B,X,原码,:10010111B,X,反码,:11101000B,X,补码,:11101001B = E9H,2、已知逻辑地址3010H:1234H,写出段地址、偏移地址、物理地址。,答:,段地址为:3010H; 偏移地址为:1234H,物理地址:3010H*10H+1234H=31334H,3、简述BIU、EU单元作用。,答:,BIU:地址形成、取指令、指令排队、读/写操作数、总线控制,EU:指令译码、指令执行,4、8086 CPU中四个段寄存器的名称是什么,分别用什么符号表示?,答:,代码段:CS,数据段:DS,堆栈段:SS,扩展段:ES,5、列举至少5种程序状态字中的标志位,并简要说明其功能,答:,ZF:零标志,CF:进位标志,SF:符号位,标志,AF:,调整,进,标志,PF:奇偶,标志,OF:溢出标志,6、设字长为8位,用二进制计算15+20的结果,并说明对状态标志C、A、S、Z的影响。,答:,00001111,+ 00010100,00100011,CF=0 AF=1 SF=0 ZF=0,7、8086CPU对1M存储空间是如何组织的?,答:,8086 CPU对存储器是采用分段方式管理的(段地址:偏移量),分为奇地址库和偶地址库。,8、8086CPU系统中存储器为什么分奇地址库和偶地址库。,答:,为保证和以前的CPU兼容,保证8086既能进行字节操作,有可以进行字操作。,9、8086对存储器的管理为什么采用分段的办法?20位的物理地址是如何形成的?,答:,8086的数据线和内部的寄存器都是16位的,而其地址线是20位的,无法直接进行管理,;为扩大寻址范围,采用分段的管理方式,把真正的物理地址用段地址和偏移量表示,每一部分都不超过64K,可保存在内部寄存器中。,当CPU访问内存时,在地址加法器中将段寄存器的内容(段基址)自动左移4位(二进制),再16位偏移地址相加,形成20位的物理地址。,10、设SS,(,段基地址,),=1050H,SP,(,偏移地址,),=0008H,AX=1234H,当执行指令:PUSH AX后,寄存器SS、SP、AX内容分别是什么?画图说明1234H在内存中的存放情况。,答:,SS=1050H,SP=0006H,AX=1234H,(10506H)=34H,(10507H)=12H,11、分别指出下列指令中的,源操作数,的寻址方式。,(1),MOV CX,300H,(2)MOV BPDI,300H,(3),MOV AX,BX,(4)MOV AX,BP+DI,(5)MOV AX,10BXDI,(6)MOV AX,10SI,(7)MOV AX,DI,(8)JMP BX,(9)IN AL,23H,(10)IN AL,DX,(1),直接寻址,(2),立即寻址,(3),寄存器寻址,(4),基址加变址,(5),相对基址加变址寻址,(6),寄存器相对寻址,(7),寄存器间接寻址,(8),段内间接寻址,(9),直接端口寻址,(10),间接端口寻址,12、指出下列指令的错误,(1)MOV AH,BX,答,:,源、目的操作数长度不匹配,(2)ADD 15H,BX,答,:,立即数不能做目的操作数,(3)MOV CS,AX,答:,CS不能做目的操作数,(4)MOV AX,SIDI,答:,SI、DI不能同时出现在 中 (或源操作数寻址方式有误),(5)MOV BYTE PTRBX,1000,答:,源、目的操作数长度不匹配,(,6)MOV SI,BX,答:,源、目的操作数不能均为存储器操作数,(7)MOV DS,0200H,答:,立即数不能直接送至段寄存器,(8)IN BL,05H,答:,IN指令中目的操作数不能用BL(只能用AL或AX),(9)MOV AX,IP,答:,IP不能作操作数,(10)MOV SI,DX,答:,DX不能间接寻址,可改为 MOV SI,BX,(11)PUSH AL,答:,PUSH指令的操作数必须为16位(即:按字操作),13,、,试写一指令序列,完成将AX寄存器的最低4位置1,最高3位清零,,D7D9位反相,其它位不变。,答:,OR AX,000FH,AND AX,1FFFH,XOR AX,0380H,14、用单条指令或程序片段,实现下述功能。,(1)将AX高8位取反,低四位置1,其余位不变。,(2)将AL的高四位与低四位互换。,(3)将BX、AX内容互换。,答:,(1)XOR AX,0FF00H OR AX,000FH,(2)MOV CL,4 ROR AL,CL(,或,ROL AL,CL),(3)XCHG AX,BX,15、写出至少3种指令,使AX寄存器清零,答:,MOV AX,00,SUB AX,AX,XOR AX,AX,AND AX,00H,17、计算机使用中断有什么好处?,答:,(1)解决快速CPU与慢速外设之间的矛盾,使CPU可以与外设同时工作,甚至可以与几个外设同时工作。(2)计算机实现对控制对象的实时处理。(3)计算机可以对故障自行处理。,18、8086可屏蔽中断请求输入信号线是什么?“可屏蔽”的涵义是什么?,答:,可屏蔽中断请求输入线为INTR; “可屏蔽”是指该中断请求可经软件清除标志寄存器中IF位而被禁止。,22、8086CPU主要能处理哪些类型的中断,这些中断的优先级是如何排列的。,答:,内部中断和外部中断,内部中断包括内部硬中断和内部软中断,外部中断包括可屏蔽和不可屏蔽中断。,中断优先级为:,内部中断不可屏蔽中断可屏蔽中断单步中断,三、程序分析题,1,、,MOV AL,85H,MOV X1,0,MOV X2,0,MOV CX,8,L0,:,SHL AL,1,JC L1,INC X1,JMP L2,L1,:,INC X2,L2,:,LOOP L0,程序中,X1,和,X2,是字节变量,(1),分析程序实现的功能。,(2),程序执行后,,X1,和,X2,的值分别是多少?,答:,(1),统计,AL,中,0,和,1,的个数,分别放在,X1,和,X2,中。,(2) X1=5,;,X2=3,2,、,IN AL,5FH,;,TEST AL,80H,;,JZ L1,;,MOV AH,0,JMP STOP,L1,:,MOV AH,0FH,STOP,:,HALT,从地址为,5F,的端口读入,1,个字节送,AL,AL,与,80H,相与,但不回送结果,,只影响标志位的值,若状态标志,Z,为,1,,跳转至,L1,运行,(1),在横线处写明语句实现的功能。,(2),分析程序实现的功能。,功能:,若从地址为,5F,的端口外围设备读入的字节最高位为,0,则,AH=0FH,,否则,AH=0,3,、,MOV AX,0,MOV BX,1,MOV CX,100,L1,:,ADD AX,BX,INC BX,DEC CX,JNZ L1,(1),分析程序实现的功能。,(2),程序执行后,,AX,、,BX,、,CX,的值分别是多少?,答:,(1),计算,1+2+3+100,的值,最终保存在,AX,中 ;,(2) AX=5050,BX=101,CX=0,4,、,STR DB COMPUTER,MOV CX,8,MOV AL,1,LEA BX,STR,;,(a),L1:CMP BYTE PTR BX,U,;,(b),JZ L2,INC BX,INC AL,LOOP L1,L2: HALT,(1),在横线处写明语句实现的功能。,答:,(a),将,STR,变量的首地址送,BX,(b),比较,BX,间接寻址的字节是否等于,U,(2),分析程序实现的功能,并说明执行完后,,AL,寄存器的值。,答:,计算字母,U,在字符串中出现的位置,,AL=5,5、分析填空,MOV AX,00H ;,PUSH AX;,POP BX;,MOV AX,3F5FH ;,MOV CX,4,ROR AL,CL;,AND AL,0FH;,答:,执行后,AX=,00H,执行后,AX=,00H,执行后,BX=,00H,执行后,AL=,5FH,执行后,AL=,0F5H,执行后,AL=,05H,1.右图为8088 CPU和某存储器电路连接图,请回答以下问题:,(1) 将CPU的信号线与存储器相连。,(2) 存储器是什么类型(RAM、ROM)?总容量为多少?各存储芯片的地址范围分别是多少?,五、存储器扩展题,答:,1)CPU与存储器的连接如右图所示。,2,) 存储器类型为,:,RAM,;,总容量为,4K8,;,地址范围,:,0# 2000H-27FFH,1# 2800H-2FFFH,1、INTEL 8255A接口芯片,(1) 现给出INTEL 8255A 的应用电路如下,系统分配给8255的地址为60H63H。试分析该电路中8255的A、B口分别是作为输入口,还是输出口?,(2) 现给出8255A 工作方式控制字格式如下,请编写程序片段对8255进行初始化,并读取电路中的开关量,用LED发光二极管显示其对应的开关状态(注:,LED显示器“亮”,表示开关“断开”,)。,六、输入输出接口题,解答:,(1)A口作为,输入口,,B口作为,输出口,(2,)初始化:,A,口作为输入口,,B,口作为输出口,,均工作于方式,0,,则控制字为:,90H,(不唯一),参考程序片段:,MOV AL,,,90H,OUT 63H,,,AL,IN AL,,,60H,OUT 61H,,,AL,2、根据下面的接口电路图,回答下列问题:,(,1,),这是一个什么接口电路图?,答,:查询式输入,接口电路图,(,2,),写出下列芯片的名称或功能(锁存、缓冲):,U1,:,锁存器,U2,:,三态缓冲器(或三态门),(,3,) 电路图中的,1,、,2,、,3,、,4,、应接到何处?写出符号。,答,:,1.,2.M /,3.,地址线,A,15,A,0,4.,The end!,指令系统程序设计举例,例1:从存储器中取数的基本方法,执行下列指令后, AX寄存器中的内容是什么?,TABLEDW10,20,30,40,50,ENTRY DW3,.,MOV BX,OFFSET TABLE ;取数据串偏移地址,ADD BX,ENTRY ;BX=BX+3,MOV AX,BX ;物理地址=DS,16+(BX),答案: (AX)=40,0AH,14H,1EH,28H,32H,03H,DS:TABLE,DS:ENTRY,此例中要注意:,1)TABLE 和ENTRY的标号意义,这里为数据串的偏移地址的首地址。,2)从存储器中取数据必须要知道数据在那个段和它的偏移地址。,3)得到偏移地址有两条指令,4)如果数据在ES或SS段时,指令中段前缀的用法,如果数据串定义在ES段中,TABLEDW10,20,30,40,50,ENTRY DW3,.,MOV BX,OFFSET TABLE ;取数据串偏移地址,ADD BX,ES,ENTRY ;BX=BX+3,MOV AX,BX ;物理地址=ES,16+(BX),答案: (AX)=40,0AH,14H,1EH,28H,32H,03H,ES:,TABLE,ES:,ENTRY,此例中要注意:,1)TABLE 和ENTRY的标号在程序中只能出现一次,在段定义中已经指明在ES段中。,例2:在使用中容易出错的指令用法,指出下列指令的错误:,MOV AH,BX ; 源、目的字长不一致,(2)MOV SI,BX ;源、目的不能同时为存贮器寻址方式,(3)MOV AX,SIDI ;基址变址方式不能有 SI和DI的组合,(4)MOV AX,BXBP ;基址变址方式不能有 BX和BP的组合,(5)MOVBX,ES:AX ;AX不能作为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式,(6)MOV BYTE PTRBX,1000 ;1000超出一个字节的表数范围,(7)MOV AX,OFFSET SI ; OFFSET只用于标号,(8)MOV CS,AX;CS不能作为目的寄存器,(9)MOV DS,BP ;段地址不能直接送入数据段寄存器,例3: 推断指令的执行结果,DATA SEGMENT,TABADW1234H,DATAENDS,.,MOV BX, TABA,LEABX, TABA,请写出上述两条指令执行后, BX寄存器中的内容。,答案:,MOVBX,TABA ; 执行后(BX)=1234H ,内存中的数据,LEABX,TABA ; 执行后(BX)=OFFSET TABA,偏移地址,34H,12H,XX,XX,XX,XX,DS:TABA,例4 多字节加法的程序设计,变量DATAX和DATAY定义如下:,DATAX DW 0148H,DW 2316H,DATAY DW 0237H,DW 4052H,按下述要求写出指令序列: DATAX和DATAY中的两个字数据相加, 和存放在DATAY和DATAY+2中。,实现的运算为:,2316,0148,H+,4052,0237,H=?,MOVAX, DATAX ;取第一个要加数的低字,ADDAX, DATAY ;与第二个数低字相加,结果在AX中,MOVBX, DATAX+2 ;取第一个数要加的数的高字,ADC,BX, DATAY+2 ;与第二个数高字相加,结果在BX中,MOVDATAY, AX,MOVDATAY+2, BX ;保存和,注意地址为2个字节,在编程时要考虑到低字相加后产生的进位,例6:移位指令应用,试分析下面的程序段完成什么操作?,MOVCL,04,SHLDX,CL ;,DX左移4位。左移次数CL中的数,MOVBL,AH,SHLAX,CL ;,AX左移4位,SHRBL,CL ;,BL右移4位,答案:,将DX、AX中的字左移4位,,BL右移4位,例7:变量N1和N2均为2字节的非压缩BCD数码,请写出计算N1与N2之差的指令序列。非压缩BCD码格式:0000XXXXH,MOVAX, 0 ;(MOV AH,00H)AX高8位清0,MOVAL, N1 ;取个位数,SUBAL, N2 ;个位减,AAS ;,非压缩的BCD数的减法结果进行调整,MOVDL, AL ;将正确结果保存在DL中,MOVAL, N1+1 ;取十位数,SBCAL, N2+2 ;十位减,,考虑个位有借位,AAS ;,非压缩的BCD数的减法结果进行调整,MOVDH, AL ;将正确结果保存在DH中,例8:假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H,(25060)=00B0H,(SP)=0FFFEH, (CF)=1, (DF)=1,请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,SBBAX,BX ;2060H-3000H,(AX)=,F,05FH, (SF)=1, (ZF)=0, (OF)=0, (CF)=1,假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, (CF)=1, (DF)=1, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(2) CMPAX,WORD,PTRSI+0FA0H;2060H-A006H,目的操作数的地址:DS,16+,SI+0FA0H,=40000H+2060+0FA0=43000H,执行此指令后AX中的内容不变!只影响标志位!,2060H-A006H,0010 0000 0110 0000,-1010 0000 0000 0110,0010 0000 0110 0000,+0101 1111 1111 1010,1000 0000 0101 1010,结果:(SF)=1, (ZF)=0, (OF)=1, (CF)=1,OF=1 两数符号相反(正数-负数、或负数-正数),而结果符号与减数相同。,OF=0 同符号数相减时或不同符号数相减,而结果符号与减数不相同。,假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, (CF)=1, (DF)=1, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(3) MULBYTE PTRBX ;字或字节由源决定,(AX)=0260H, (OF)=1, (CF)=1,MULBYTE PTRBX,目的操作数的地址:DS16+(BX),=40000H+3000=43000H,(43000H)=A006H,此操作为:60H06H=0240H,(AX)=0240H, (OF)=1, (CF)=1,乘法指令运算结果影响状态标志,但对CF、OF有特殊的定义。,当乘积的高半部分为0(AH=0或DX(高位)=0)时,CF=0、OF=0,表示高半部分无有效数,否则CF=1、OF=1,用于指出字节运算结果是8位或16位,字运算结果是16位或32位。(不存在有进位的可能),假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, (CF)=1, (DF)=1, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(4) DIVBH;AX/BL(2060H,30H,),(AX)=2060H,(4) DIVBH;AX/BL(2060H,30H,),(AX)=2060H AL=商,AH=余数,2060H=40962+96=8288,8288,48=172 余数=32,除法不影响标志位,假设(CS)=3000H, (DS)=4000H, (ES)=2000H, (SS)=5000H, (AX)=2060H, (BX)=3000H, (CX)=5, (DX)=0, (SI)=2060H, (DI)=3000H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, (CF)=1, (DF)=1, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(5) SARAX,CL ;,算术右移5次,(AX)=0103H, (CF)=0,2060H=0010 0000 011,0,0000,B,0000 0,001 0000 0011 B,00000B,假设 (AX)=2060H, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(6) XORAX,0FFE7H,0010 0000 011,0,0000B,1111 1111 1110 0111,B,1101 1111 1000 0111B,(AX)=0DF87H, (CF)=0, (OF)=0, (SF)=1, (ZF)=0,相当于对AX的内容求反,假设 (DS)=4000H, (ES)=2000H, (AX)=2060H, (BX)=3000H, (SI)=2060H, (43000H)=0A006H, (23000H)=0B116H, (33000H)=0F802H, (25060)=00B0H,.(SP)=0FFFEH, 请写出下列各条指令单独执行完后, 有关寄存器及存储单元的内容, 若影响条件码请给出条件码SF、ZF、OF、CF的值。,(7) XCHGAX,ES:BX+SI,目的操作数的地址:ES16+(BX+SI),=20000H+3000+2060=25060H,(25060H)=00B0H,(AX)=00B0H, (25060)=2060H, 不影响标志位,假设(DS)=2000H,(ES)=3000H,(SS)=4000H,(SP)=100H,(BX)=200H,(SI)=1,(DI)=2,(BP)=256,字变量ARRAY偏移地址为0050H,20250H)=1234H,(40100H)=00A0H,(40102H)=2200H。填空回答下列问题。,(1)MOVAX,,BP,DI;源操作数物理地址=,H,指令执行后(AX)=,H,(2)POPAX;源操作数物理地址=,H,指令执行后(AX)=,H,(3)PUSHES:BX;源操作数有效地址=,H,(4)LEADI,ARRAY;源字段的寻址方式是,指令执行后(DI)=,H,(5)JMP BX;指令执行后(IP)=,H,(6)ADD AL,BYTE PTR ARRAYBX ;源字段的寻址方式是,?,指令执行后(AL)=,H,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 管理文书 > 施工组织


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!