




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
24章 补充练习及解答第2章 8086/8088微处理器1 8086是多少位的微处理器?为什么?答:8086是16位的微处理器,其内部数据通路为16位,对外的数据总线也是16位。2 EU与BIU各自的功能是什么?如何协同工作?答:EU是执行部件,主要的功能是执行指令。BIU是总线接口部件,与片外存储器及I/O接口电路传输数据。EU经过BIU进行片外操作数的访问,BIU为EU提供将要执行的指令。EU与BIU可分别独立工作,当EU不需BIU提供服务时,BIU可进行填充指令队列的操作。3 8086/8088微处理器内部有那些寄存器,它们的主要作用是什么?答:执行部件有8个16位寄存器,AX、BX、CX、DX、SP、BP、DI、SI。AX、BX、CX、DX一般作为通用数据寄存器。SP为堆栈指针存器,BP、DI、SI在间接寻址时作为地址寄存器或变址寄存器。总线接口部件设有段寄存器CS、DS、SS、ES和指令指针寄存器IP。段寄存器存放段地址,与偏移地址共同形成存储器的物理地址。IP的内容为下一条将要执行指令的偏移地址,与CS共同形成下一条指令的物理地址。4 8086对存储器的管理为什么采用分段的办法?答:8086是一个16位的结构,采用分段管理办法可形成超过16位的存储器物理地址,扩大对存储器的寻址范围 (1MB,20位地址)。若不用分段方法,16位地址只能寻址64KB空间。5在8086中,逻辑地址、偏移地址、物理地址分别指的是什么?具体说明。答:逻辑地址是在程序中对存储器地址的一种表示方法,由段地址和段内偏移地址两部分组成,如1234H:0088H。偏移地址是指段内某个存储单元相对该段首地址的差值,是一个16位的二进制代码。物理地址是8086芯片引线送出的20位地址码,用来指出一个特定的存储单元。6给定一个存放数据的内存单元的偏移地址是20C0H,(DS)=0C00EH,求该内存单元的物理地址。答:物理地址:320F8H。78086/8088为什么采用地址/数据引线复用技术?答:考虑到芯片成本,8086/8088采用40条引线的封装结构。40条引线引出8086/8088的所有信号是不够用的,采用地址/数据线复用引线方法可以解决这一矛盾,从逻辑角度,地址与数据信号不会同时出现,二者可以分时复用同一组引线。8 8086与8088的主要区别是什么?答:8086有16条数据信号引线,8088只有8条;8086片内指令预取缓冲器深度为6字节,8088只有4字节。9 怎样确定8086的最大或最小工作模式?最大、最小模式产生控制信号的方法有何不同答:引线MN/MX#的逻辑状态决定8086的工作模式,MN/MX#引线接高电平,8086被设定为最小模式,MN/MX#引线接低电平,8086被设定为最大模式。最小模式下的控制信号由相关引线直接提供;最大模式下控制信号由8288专用芯片译码后提供,8288的输入为8086的S2#S0#三条状态信号引线提供。108086被复位以后,有关寄存器的状态是什么?微处理器从何处开始执行程序?答:标志寄存器、IP、DS、SS、ES和指令队列置0,CS置全1。处理器从FFFFOH存储单元取指令并开始执行。118086基本总线周期是如何组成的?各状态中完成什么基本操作?答:基本总线周期由4个时钟(CLK)周期组成,按时间顺序定义为T1、T2、T3、T4。在T1期间8086发出访问目的地的地址信号和地址锁存选通信号ALE;T2期间发出读写命令信号RD#、WR#及其它相关信号;T3期间完成数据的访问;T4结束该总线周期。12 结合8086最小模式下总线操作时序图,说明ALE、M/IO#、DT/R#、RD#、READY信号的功能。答:ALE为外部地址锁存器的选通脉冲,在T1期间输出;M/IO#确定总线操作的对象是存储器还是I/O接口电路,在T1输出;DT/R#为数据总线缓冲器的方向控制信号,在T1输出;RD#为读命令信号;在T2输出;READY信号为存储器或I/O接口“准备好”信号,在T3期间给出,否则8086要在T3与T4间插入Tw等待状态。13什么是总线请求?8086在最小工作模式下,有关总线请求的信号引脚是什么?答:系统中若存在多个可控制总线的主模块时,其中之一若要使用总线进行数据传输时,需向系统请求总线的控制权,这就是一个总线请求的过程。8086在最小工作模式下有关总线请求的信号引脚是HOLD与HLDA。14简述在最小工作模式下,8086如何响应一个总线请求?答:外部总线主控模块经HOLD引线向8086发出总线请求信号;8086在每个时钟周期的上升沿采样HOLD引线;若发现HOLD=1则在当前总线周期结束时(T4结束)发出总线请求的响应信号HLDA;8086使地址、数据及控制总线进入高阻状态,让出总线控制权,完成响应过程。15在基于8086的微计算机系统中,存储器是如何组织的?是如何与处理器总线连接的?BHE#信号起什么作用?答:8086为16位处理器,可访问1M字节的存储器空间;1M字节的存储器分为两个512K字节的存储体,命名为偶字节体和奇字节体;偶体的数据线连接D7D0,“体选”信号接地址线A0;奇体的数据线连接D15D8,“体选”信号接BHE#信号;BHE#信号有效时允许访问奇体中的高字节存储单元,实现8086的低字节访问、高字节访问及字访问。16 微型计算机系统总线由哪三部分组成?它们各自的功能是什么?答:由地址总线、数据总线和控制总线三部分组成。地址总线用于指出数据的来源或去向;数据总线提供了模块间数据传输的路径;控制总线用来传送各种控制信号以便控制数据、地址总线的操作及使用。第3章 8086/8088CPU的指令系统及寻址方式1. 根据下列要求编写一个汇编语言程序::(1) (1)代码段的段名为COD_SG(2) (2)数据段的段名为DAT_SG(3) (3)堆栈段的段名为STK_SG,并预留64字节空间(4) (4)变量HIGH_DAT所包含的数据为95(5) (5)将变量HIGH_DAT装入寄存器AH,BH和DL(6) (6)程序运行的入口地址为START答案:DAT_SG SEGEMNTHIGH_DATDB95DAT_SG ENDS;STK_SG SEGMENT DW32 DUP(?)STK_SG ENDS;COD_SG SEGMENTMAINPROCFARASSUMECS: COD_SG, DS: DAT_SG, SS: STK_SGSTART:MOVAX, DAT-SGMOVDS, AXMOVAH, HIGH_DATMOVBH, AHMOVDL, AHMOVAH, 4CHINT21HMAINENDPCOD_SG ENDS END START2. 指出下列程序中的错误:STAKSGSEGMENTDB100 DUP(?)STA_SGENDSDTSEGSEGMENTDATA1DB?DTSEGENDCDSEGSEGMENTMAINPROCFARSTART:MOVDS,DATSEGMOVAL,34HADDAL,4FHMOVDATA,ALSTARTENDPCDSEGENDSEND答案: 改正后:STAKSGSEGMENTDB100 DUP(?)STAKSGENDSDTSEGSEGMENTDATA1DB?DTSEGENDSCDSEG SEGMENTMAINPROCFARASSUME CS: CDSEG, DS: DTSEG, SS: STAKSGSTART:MOVAX, DTSEGMOVDS, AXMOVAL, 34HADDAL, 4FHMOVDATA1, ALMOVAH, 4CHINT21HMAINENDPCDSEGENDSEND S3. 将下列文件类型填入空格:(1) .obj (2) .exe (3) .crf (4) .asm (5) .lst (6) .map 编辑程序输出的文件有_; 汇编程序输出的文件有_; 连接程序输出的文件有_。答案:编辑程序输出文件: (4)汇编程序输出文件: (1), (3), (5) 连接程序输出文件: (2), (6)4. 下列标号为什么是非法的?(1) GET.DATA (2) 1_NUM (3) TEST-DATA(4) RET(5) NEW ITEM答案:非法标号: (1)因为.只允许是标号的第一个字符(2)第一个字符不能为数字 (3)不允许出现-(4)不能是保留字,如助记符 (5)不能有空格5. 下面的数据项定义了多少个字节?DATA_1DB6 DUP (4 DUP(0FFH)答案: 24字节6. 对于下面两个数据段,偏移地址为10H和11H的两个字节中的数据是一样的吗?为什么?DTSEGSEGMENT |DTSEGSEGMENTORG10H |ORG10HDATA1DB72H |DATA1DW7204HDB04H |DTSEGENDSDTSEGENDS |答案: 不一样. 分别是72H, 04H和04H, 72H. 存储字时低8位存在低字节,高8位存在高字节.7. 下面的数据项设置了多少个字节?(1) ASC_DATADB1234(2) HEX_DATADB1234H答案: (1) 设置了4个字节 (2) 设置了2个字节8. 执行下列指令后, AX寄存器中的内容是什么?TABLEDW10,20,30,40,50ENTRYDW3 . . .MOVBX,OFFSET TABLEADDBX,ENTRYMOVAX,BX答案: (AX)=409. 指出下列指令的错误:(1) MOVAH,BX(2) MOVSI,BX(3) MOVAX,SIDI(4) MOVAX,BXBP(5) MOVBX,ES:AX(6) MOVBYTE PTRBX,1000(7) MOVAX,OFFSET SI(8) MOVCS,AX(9) MOVDS,BP答案: (1) 源、目的字长不一致 (2) 源、目的不能同时为存贮器寻址方式 (3) 基址变址方式不能有 SI和DI的组合 (4) 基址变址方式不能有 BX和BP的组合 (5) 在8086寻址方式中,AX不能作为基址寄存器使用,而且源、目的不能同时为存贮器寻址方式 (6) 1000超出一个字节的表数范围 (7) OFFSET只用于简单变量,应去掉 (8) CS不能作为目的寄存器 (9) 段地址不能直接送入数据段寄存器10. DATASEGMENTTABLE_ADDRDW1234HDATAENDS . . .MOVBX, TABLE_ADDRLEABX, TABLE_ADDR 请写出上述两条指令执行后, BX寄存器中的内容。答案:MOVBX,TABLE_ADDR; 执行后(BX)=1234H LEABX,TABLE_ADDR; 执行后(BX)=OFFSET TABLE_ADDR11. 设(DS)=1B00H, (ES)=2B00H, 有关存储器地址及其内容如右图所示,请用两条指令把X装入AX寄存器。 1B00:2000H8000H 1B00:2002H2B00H . . 2B00:8000HX答案:LES BX, 2000HMOV AX, ES: BX12. 变量DATAX和DATAY定义如下: DATAXDW 0148H DW 2316H DATAYDW 0237H DW 4052H按下述要求写出指令序列:(1) (1)DATAX和DATAY中的两个字数据相加, 和存放在DATAY和DATAY+2中。(2) (2)DATAX和DATAY中的两个双字数据相加, 和存放在DATAY开始的字单元中。(3) (3)DATAX和DATAY两个字数据相乘(用MUL)。(4) (4)DATAX和DATAY两个双字数据相乘(用MUL)。(5) (5)DATAX除以23(用DIV)。(6) (6)DATAX双字除以字DATAY(用DIV)。答案:(1)MOVAX, DATAXADDAX, DATAYMOVBX, DATAX+2ADDBX, DATAY+2MOVDATAY, AXMOVDATAY+2, BX(2)MOVAX, DATAXADDDATAY, AXMOVAX, DATAX+2ADCDATAY+2, AX(3)MOVAX, DATAXMULDATAYMOVDATAY,AXMOVDATAY+2,DX(4)MOVAX,WORD PTR DATAXMOVBX,WORD PTR DATAYMULBXMOVRESULT,AXMOVRESULT+2,DXMOVAX,WORD PTR DATAXMOVAX,WORD PTR DATAY+2MULBXADDRESULT+2,AXADCRESULT+4,DXMOVAX,WORD PTR DATAX+2MOVBX,WORD PTR DATAYMULBXADDRESULT+2,AXADCRESULT+4,DXMOVAX,WORD PTR DATAX+2MOVBX,WORD PTR DATAY+2MULBXADDRESULT+4,AXADCRESULT+6,DX (5)MOVAX, DATAXMOVBL, 23DIVBLMOVBL,AHMOVAH, 0MOVDATAY, AX;存放商MOVAL,BLMOVDATAY+2, AX;存放余数(6)MOVAX, DATAXMOVDX, DATAX+2DIVDATAY MOVDATAY, AXMOVDATAY+2, DX13. 试分析下面的程序段完成什么操作?MOVCL,04SHLDX,CLMOVBL,AHSHLAX,CLSHRBL,CLORDL,BL答案: 将DX: AX中的双字左移4位(乘16)14. 用其他指令完成和下列指令一样的功能:(1) REP MOVSB(2) REP LODSB(3) REP STOSB(4) REP SCASB答案:(1) (1) LOOP1:MOVAL,BYTE PTR SIMOVES:BYTE PTR DI, ALINCSI或:DECSIINCDI或:DECDILOOPLOOP1(2) LOOP1:MOVAL, BYTE PTR SIINCSI或:DECSILOOPLOOP1(3) LOOP1:MOVES:BYTE PTR DI, ALINCDI或:DECDILOOPLOOP1(4) LOOP1:CMPAL,ES:BYTE PTR DIJEEXITINCDI或:DECDILOOPLOOP1EXIT:15. 编写程序段, 比较两个5字节的字符串OLDS和NEWS, 如果OLDS字符串与NEWS不同, 则执行NEW_LESS, 否则顺序执行程序。答案:LEASI, OLDSLEADI, NEWSMOVCX, 5CLDREPZCMPSBJNZNEW_LESS16. 假定AX和BX中的内容为带符号数, CX和DX中的内容为无符号数, 请用比较指令和条件转移指令实现以下判断:(1) (1) 若DX的值超过CX的值,则转去执行EXCEED(2) (2) 若BX的值大于AX的值,则转去执行EXCEED(3) (3) CX中的值为0吗? 若是则转去执行ZERO(4) (4) BX的值与AX的值相减, 会产生溢出吗? 若溢出则转OVERFLOW(5) (5) 若BX的值小于AX的值,则转去执行EQ_SMA(6) (6) 若DX的值低于CX的值,则转去执行EQ_SMA 答案:(1) CMPDX, CX JAEXCEED(2) CMPBX, AX JGEXCEED(3) CMPCX, 0 JEZERO(4) SUBBX, AX JOOVERFLOW(5) CMPBX, AX JLEQ_SMA(6) CMPDX, CX JBEQ_SMA17. 假如在程序的括号中分别填入指令:(1) LOOP L20(2) LOOPNE L20(3) LOOPE L20试说明在三种情况下, 当程序执行完后, AX、BX、CX、DX四个寄存器的内容分别是什么?TITLEEXLOOP.COMCODESGSEGMENTASSUMECS:CODESG, DS:CODESG. SS:CODESGORG100HBEGIN:MOVAX,01MOVBX,02MOVDX,03MOVCX,04L20:INCAXADDBX,AXSHRDX,1( )RETCODESGENDSENDBEGIN答案: (1)(AX)= 5 (BX)= 16 (CX)= 0 (DX)= 0 (2)(AX)= 2 (BX)= 4 (CX)= 3 (DX)= 1 (3)(AX)= 3 (BX)= 7 (CX)= 2 (DX)= 018. 变量N1和N2均为2字节的非压缩BCD数码,请写出计算N1与N2之差的指令序列。答案:MOVAX, 0MOVAL, N1+1SUBAL, N2+1AASMOVDL, ALMOVAL, N1SBBAL, N2AASMOVDH, AL19. 有两个3位的ASCII数串ASC1和ASC2定义如下:ASC1DB578ASC2DB694ASC3DB0000请编写程序计算ASC3ASC1+ASC2。答案:CLCMOVCX, 3MOVBX, 2BACK:MOVAL, ASC1BXADCAL, ASC2BXAAAORASC3BX+1, ALDECBXLOOPBACKRCLCX, 1ORASC3BX, CL20. 假设(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的值。(1) SBBAX,BX(2) CMPAX,WORD PTRSI+0FA0H(3) MULBYTE PTRBX(4) AAM(5) DIVBH(6) SARAX,CL(7) XORAX,0FFE7H(8) REPSTOSB(9) JMPWORD PYRBX(10) XCHGAX,ES:BX+SI 答案:(1) (AX)=0F05FH, (SF)=1, (ZF)=0, (OF)=0, (CF)=1(2) (SF)=1, (ZF)=0, (OF)=1, (CF)=1(3) (AX)=0240H, (OF)=1, (CF)=1(4) (AX)=0906H, (SF)=0, (ZF)=0(5) (AX)=20ACH(6) (AX)=0103H, (CF)=0(7) (AX)=0DF87H, (CF)=0, (OF)=0, (SF)=1, (ZF)=0(8) (23000H)(23004H)=60H, 不影响标志位(9) (IP)=0A006H, 不影响标志位(10) (AX)=00B0H, (25060)=2060H, 不影响标志位部分疑难题及解答一选择填空1有数据定义NUM DB 12345 ,经汇编后,N
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨界传播伦理-洞察及研究
- 情感计算分析系统-洞察及研究
- 铁路专用通信设备课件
- 知识付费培训流程图表格课件
- 2025年城管笔试综合知识试题及答案
- 2025年安徽省公开遴选公务员笔试题及答案解析(A类)
- 知识付费主播培训内容课件
- 知识产权远程教育培训课件
- 知识产权贯标培训讲话稿课件
- 知识产权课程培训台账课件
- 商业计划书推广
- 选品与采购全套教学课件
- 维生素D与女性生殖健康的预防
- DB13-T 5838-2023大型会展活动临建设施安全、绿色管理通用要求
- 创伤失血性休克中国急诊专家共识(2023)解读
- 材料风险调差表
- (订正版)全面质量管理知识习题集大全(含答案)
- 武汉市古树名木资源调查报告
- 主变压器安装施工方案完整版本
- 高中音乐-《国歌里的故事》教学课件设计
- 深度学习教学改进丛书 深度学习:走向核心素养(理论普及读本)
评论
0/150
提交评论