




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第三章 习题,31什么叫寻址方式?8086/8088CPU共有哪几种寻址方式?(略) 32设(DS)=6000H,(ES)=2000H,(SS)=1500H,(SI)=00A0H,(BX)=0800H,(BP)=1200H,数据变量VAR为0050H。 请分别指出下列各条指令源操作数的寻址方式?它的物理地址是多少? (1)MOV AX,BX (2)MOV DL,80H (3)MOV AX,VAR (4)MOV AX,VARBXSI (5)MOV AL,B (6)MOV DI,ES:BX (7)MOV DX,BP (8)MOV BX,20HBX,解: (1)寄存器寻址 无物理地址 (2)立即寻址 无物理地址 (3)立即寻址 无物理地址 (4)基址变址相对寻址 PA=(DS)10HVAR(BX)(SI)608F0H (5)立即寻址 无物理地址 (6)寄存器间接寻址 PA=(ES) 10H(BX)20800H (7)寄存器间接寻址 PA=(SS) 10H(BP)16200H (8)寄存器相对寻址 PA=(DS) 10H(BX)20H60820H,33假设(DS)=212AH,(CS)=0200H,(IP)=1200H,(BX)=0500H, 位移量DATA=40H (217A0H)=2300H,(217E0H)=0400H,(217E2H)=9000H, 试确定下列转移指令的转移地址。 (1)JMP 2300H (2)JMP WORD PTRBX (3)JMP DWORD PTRBX+DATA,解: (1)JMP 2300H 段内直接转移 PA(CS)10H(IP)+2300H05500H (2)JMP WORD PTRBX 段内间接转移 PA(CS)10HBX =0200H+(217A0H) =04300H (3)JMP DWORD PTRBX+DATA 段间间接转移 PABX+DATA=(217E2H) 10H(217E0H) =90000H+0400H=90400H,34试说明指令MOV BX,5BX与指令LEA BX,5BX的区别。 答: MOV BX,5BX是数据传送类指令,表示将数据段中以(BX+5)为偏移地址的16位数据送寄存器BX中。 LEA BX,5BX是取偏移地址指令,结果为 (BX)=(BX)+5,即操作数的偏移地址为(BX)+5 35设堆栈指针SP的初值为2300H,(AX)=50ABH,(BX)=1234H。执行指令PUSH AX后,(SP)=?,再执行指令PUSH BX及POP AX之后,(SP)=?(AX)=?(BX)=? 解:执行指令PUSH AX后,(SP)=22FEH 执行指令PUSH BX及POP AX之后, (SP)=22FEH,(AX)=(BX)=1234H,36指出下列指令的错误。 (1)MOV AH,CX 类型不匹配或两操作数字长不相等 (2)MOV 33H,AL 立即数不能做目的操作数 (3)MOV AX,SIDI 两变址寄存器不能同时使用 (4)MOV BX,SI 两操作数不能同时为存储器操作数 (5)ADD BYTE PTRBP,256 两操作数类型不匹配,(6)MOV DATASI,ES:AX 源操作数形式错,寄存器操作数不加段重设符 (7)JMP BYTE PTRBX 转移地址的字长至少应是16位 (8)OUT 230H,AX 对I/O指令,端口地址超过8位,必须采用间接寻址 (9)MOV DS,BP 正确 (10)MUL 39H MUL指令中操作数不能为立即数,37已知(AL)=7BH,(BL)=38H,试问执行指令ADD AL,BL后,AF、CF、OF、PF、SF和ZF的值各为多少? 解: (AL)=B3H AF=1,CF=0,OF=1, PF=0,SF=1,ZF=0 38试比较无条件转移指令、条件转移指令、调用指令和中断指令有什么异同?(略),39试判断下列程序执行后,BX中的内容。 MOV CL,3 MOV BX,0B7H ROL BX,1 ROR BX,CL 解:该程序是首先将BX内容不带进位循环左移1位,再循环 右移3位,即相当于将BX内容不带进位循环右移2位, 所以结果为(BX)=C02DH,310按下列要求写出相应的指令或程序段 (1)写出两条使AX内容为0的指令; MOV AX,0 XOR AX,AX AND AX,0 SUB AX,AX (2)使BL寄存器中的高4位和低4位互换; MOV CL,4 ROL BL,CL 或 ROR BL,CL (3)屏蔽CX寄存器的b11、b7和b3位; AND CX,0F777H (4)测试DX中的b0和b8位是否为1。 TEST DX,0101H,311分别指出以下两个程序段的功能。,(1)MOV CX,10 LEA SI,FIRST LEA DI,SECOND STD REP MOVSB 将数据段中FIRST为最高地址的10个字节数据按减地址方向传送到附加段SECOND为最高地址的向前10个单元中。,(2)CLD LEA DI,1200H MOV CX,0F00H XOR AX,AX REP STOSW 将附加段中偏移地址为1200H单元开始的0F00H个字单元清零。,312执行以下两条指令后,标志寄存器FLAGS的六个状态位各为什么状态? MOV AX,84A0H ADD AX,9460H 解:(AX)=1900H 在两个16位数进行加法运算时,对CF、ZF、SF、OF会产生影响,但对PF和AF标志位,只有其低8位运算影响它们的状态。 AF=0,PF=1,CF=1, ZF=0,SF=0,OF=1,313将+46和-38分别乘以2,可应用什么指令来完成?如果除以2呢? 解: 将+46和-38分别乘以2,可分别用逻辑左移指令SHL和算术左移指令SAL完成。SHL针对无符号数,SAL针对有符号数,也可用MUL(无符号数)和IMUL(有符号数) 除以2,用SHR或DIV实现46/2,用SAR或IDIV实现38/2。,314已知AX=8060H,DX=03F8H,端口PORT1的地址是48H,内容为40H;PORT2的地址是84H,内容为85H。请指出下列指令执行后的结果。 (1)OUT DX,AL 将60H输出到地址为03F8H的端口中 (2)IN AL,PORT1 从PORT1读入一字节数据,则(AL)40H (3)OUT DX,AX 将AX8060H从地址为03F8H的端口输出 (4)IN AX,48H 由48H端口读入16位的数据 (5)OUT PORT2,AX 将8060H从地址为84H的端口输出,315试编写程序,统计BUFFER为起始地址的连续200个单元中0的个数。 解: LEA SI,BUFFER MOV CX,200 XOR BX,BX AGAIN:MOV AL,SI CMP AL,0 JNE GOON INC BX GOON: INC SI LOOP AGAIN HLT,316写出完成下述功能的程序段。 (1)从地址DS:0012H中传送一个数据56H到AL寄存器。 MOV DS:BYTE PTR0012H,56H MOV AL,0012H (2)将AL中的内容左移两位。 MOV CL,2 SHL AL,CL (3)AL的内容与字节单元DS:0013H中的内容相乘。 MUL DS:BYTE PTR0013H (4)乘积存入字单元DS:0014H中。 MOV DS:0014H,AX,317若(AL)=96H,(BL)=12H,在分别执行指令MUL和IMUL后,其结果是多少?OF=?CF=? 解: 执行MUL BL后 (AX)0A8CH,CFOF1 执行IMUL BL后 (AX)F88CH,CFOF1,补充作业,1. 系统有一个堆栈段区,其地址为1250H:0000H1250H:0100H, (SP)=0052H,则计算以下数值 (1)栈顶物理地址 (2)栈底物理地址 (3)堆栈段寄存器SS中的段地址 (4)若把数据3456H存入,此时SP的值,解: (1)栈顶地址:逻辑地址为1250H:0052H 物理地址为1250H16+0052H=12552H (2)栈底地址:逻辑地址为1250H:0100H 物理地址为1250H16+0100H=12600H (3)段寄存器:(SS)=1250H (4)若把数据3456H存入, 此时(SP)=0050H,2. 已知(DS)=3000H, (BX)=1000H, (DI)=0020H,MASK=0300H,内存分配如图所示。连续执行下列指令后,DS,SI,DI,AX的内容是什么?标志位状态如何? LEA SI,MASKBX+DI MOV AX,SI LDS DI,BX+SI SUB AX,76EBH,解:(1)LEA SI,MASKBX+DI,这条指令传送的是源操作数的有效地址而不是内容, (SI)=MASK+(BX)+(DI) =0300H+1000H+0020H=1320H (2)MOV AX,SI,这条指令传送的是源操作数的有效地址的内容,源操作数的物理地址PA=(DS)16+(SI)=31320H,则(AX)=1322H (3)LDS DI,BX+SI, 其源操作数的物理地址PA=(DS)16+(SI)+(BX) =30000H+1320H+1000H=32320H 则(DS)=2000H,(DI)=1000H (4)(AX)=1322H,执行SUB AX,76EBH后, (AX)=1322H-76EBH=9C37H 标志位状态分别为:CF=1,SF=1,ZF=0, OF=0,PF=0,AF=1,补充习题,1. 一个有16个字的数据区,起始地址为70A0H:DDF6H,则这个数据区末字单元的物理地址是( ) (A)7E815H (B)7E816H (C)7E814H (D)7E7F8H 2. 已知(BL)6FH,执行TEST BL,8FH后, (BL)( ) (A)0FH (B)6FH (C)0 (D)EFH,3. 读程序回答问题 XOR AX,AX MOV BX,1 MOV CX,5 LOP:ADD AX,BX INC BX INC BX LOOP LOP HLT 上述程序段执行后, (AX)25,(BX)11,4. 在程序运行过程中,确定下一条指令的物理地址的计算表达式是( ) (A)(CS)10H(IP) (B) (DS)10H(DI) (C) (SS)10H(SP) (D) (ES)10H(SI),5. 设(SS)2000H,则下列程序执行后,(SP)( ),(AL)中数据在内存地址( )中,(AH)中数据在内存地址( )中。 MOV SP,2000H MOV AX,1234H PUSH AX 答案:1FFEH,21FFEH,21FFFH,6. 有如下程序段 MOV AX,1234H MOV BX,5678H ADD AL,BL DAA ;(AL)=12H,CF=1 MOV CL,AL MOV AL,AH ADC AL,BH DAA ;12H+56H+CF=69H 执行程序后,(AL)=69H,(CL)=12H,7. 寄存器间接寻址时,操作数在( )中 (A)寄存器 (B)存储器 (C)堆栈区 (D)累加器 8. 执行返回指令,退出中断服务程序,这时返回地址来自( ) (A)ROM区 (B)程序计数区 (C)堆栈区 (D)CPU的暂存寄存器,9. 读程序回答问题 MOV AX,1234H MOV CL,4 ROL AX,CL DEC AX MOV CX,4 MUL CX HLT 执行后,(AH)8DH,(AL)00H,10. 下面程序段中,当满足条件转到NEXT标号执行时,(AL)的值正确的是( ) CMP AL,0FBH JNB NEXT NEXT: (A)80H (B)8FH (C)F0H (D)FEH,答案:SP=1FFEH,AX=00F0H DX=ACF0H,DI=1234H,CF=0,ZF=0,MOV SP,2000H MOV AX,00F0H MOV SI,1234H MOV DX,5678H,PUSH SI POP DI SHL DX,1 TEST AX,DX PUSH DX,11. 执行下列程序后,SP=?AX=?DX=? DI=?标志位CF=?ZF=?,12.交换SI、DI的内容,正确程序段是(AC) (A)PUSH SI (B) PUSH SI PUSH DI PUSH DI POP SI POP DI POP DI POP SI (C)MOV AX,SI (D)MOV AX,SI MOV SI,DI MOV BX,DI MOV DI,AX XCHG BX,AX,13. 完成41H送2100H,42H送2101H的 正确程序段是( A ) (A)MOV AX,4241H MOV 2100H,AX (B)MOV AX,AB MOV 2100H,AX,14.下列程序段执行后,(BX)=? MOV CL,7 MOV BX,8016H SHR BX,CL 答案:0100H 15. 假设(SP)=0100H,(SS)=6000H,执行POP AX指令后,栈顶的物理地址是多少? 答案:60102H,16. 近过程NEAR的RET指令把当前栈顶的一个字弹出到(IP),远过程FAR的RET指令弹出一个字到(IP)后又弹出一个字到(CS),IRET指令是(中断返回),从堆栈顺序弹出三个字分别送到(IP)、(CS)和(FLAGS)中。,17. 程序段如下: MOV AX,
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 细胞的生物膜系统
- 南方能源产品讲解
- 网络入侵检测技术
- 如何控制微生物污染药品
- 宪法日宣誓活动实施方案大纲
- 述职汇报用好还是用
- 手术病人护理常规
- 区域活动指导讲座实务要点
- 医院空气净化管理标准解析
- 体育锻炼心率讲解
- 2025室内设计私人定制合同全面详细版
- 与欧美网红合作合同范本
- 母猪的分娩和护理技术
- 冷库维保合同(2025版)
- 2025年北京市三力考试试题及答案
- 2025年智能家居软装搭配智能家居行业市场前景展望报告
- 2025年双鸭山宝清县融媒体中心招聘考试笔试试题(含答案)
- 2025年北京市人力资源市场薪酬数据报告(二季度)
- 广告牌安装后维护养护措施
- 山西煤矿建设管理办法
- 高职院校实训室管理办法
评论
0/150
提交评论