




已阅读5页,还剩32页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章8086指令系统,2020/4/26,2,2020年4月26日星期日,2,6、分别用一条指令完成下列要求。,(1)将寄存器BX的内容传送给CX:MOVCX,BX(2)将立即数1234H传送给AXMOVAX,1234H(3)把数据段中偏移地址为20H的存储单元的传送给AX寄存器MOVAX,20H(4)把字节数据20H传送到BX指定的存储单元地址中MOVbyteptrBX,20H,2020/4/26,3,2020年4月26日星期日,3,8、假定(BX)=3000H,(SI)=1200H,(X)=300H,指出下列操作数中源操作数的寻址方式,同时写出各指令源操作数的地址。,(1)MOVAX,1234H源操作数寻址方式:立即数寻址方式;(2)MOVAX,X源操作数寻址方式:直接寻址方式;EA=300H;(3)MOVAX,BX源操作数寻址方式:寄存器间接寻址方式;EA=(BX)=3000H;,2020/4/26,4,2020年4月26日星期日,4,8、假定(BX)=3000H,(SI)=1200H,(X)=300H,指出下列操作数中源操作数的寻址方式,同时写出各指令源操作数的地址。,(4)MOVAX,BX+SI:源操作数的寻址方式:基址变址寻址方式;EA=(BX)+(SI)=4200H;(5)MOVAX,XBXSI源操作数的寻址方式:相对基址变址寻址方式;EA=(BX)+(SI)+X=4500H;(6)MOVAX,BX源操作数的寻址方式:寄存器寻址方式;,2020/4/26,5,2020年4月26日星期日,5,10、设(DS)=1000H,(ES)=1500H,(SS)=2000H,(BX)=0010H,(BP)=00A0H,(SI)=0100H,指出下列操作数中源操作数的寻址方式,并计算其物理地址。,(1)MOVAX,0200H物理地址=(DS)16+0200H=10200H(2)MOVAX,BX物理地址=(DS)16+(BX)=1000H16+0010H=10010H(3)MOVAX,ES:BX物理地址=(ES)16+(BX)=1500H16+0010H=15010H,直接寻址方式,寄存器间接寻址方式,寄存器间接寻址方式,2020/4/26,6,2020年4月26日星期日,6,10、设(DS)=1000H,(ES)=1500H,(SS)=2000H,(BX)=0010H,(BP)=00A0H,(SI)=0100H,指出下列操作数中源操作数的寻址方式,并计算其物理地址。,(4)MOVAX,SS:BX物理地址=(SS)16+(BX)=2000H16+0010H=20010H(5)MOVAX,BP物理地址=(SS)16+(BP)=2000H16+00A0H=200A0H(6)MOVAX,BX+100H物理地址=DS16+(BX)+100H=1000H16+0010H+100H=10110H,寄存器间接寻址方式,寄存器间接寻址方式,寄存器相对寻址方式,2020/4/26,7,2020年4月26日星期日,7,10、设(DS)=1000H,(ES)=1500H,(SS)=2000H,(BX)=0010H,(BP)=00A0H,(SI)=0100H,指出下列操作数中源操作数的寻址方式,并计算其物理地址。,(7)MOVAX,BXSI物理地址=DS16+(BX)+(SI)=1000H16+0010H+0100H=10110H(8)MOVAX,100HBXSI物理地址=DS16+(BX)+(SI)+100H=100016+0010H+0100H=10210H(9)MOVAX,SI物理地址=DS16+(SI)=1000H16+0100H=10100H,基址变址寻址方式,相对基址变址寻址方式,寄存器间接寻址方式,2020/4/26,8,2020年4月26日星期日,8,11、指出下列指令的错误原因。,(1)MOVAL,1234H操作类型不匹配;(2)MOVCS,AX目的操作数不能是CS段寄存器;(3)MOV1000,1000h指令的操作类型不明确;需使用PTR显式地指明目的操作数1000的数据类型;,2020/4/26,9,2020年4月26日星期日,9,11、指出下列指令的错误原因。,(4)MOVBYTEPTRBX,1000H两个操作数的类型不匹配;(5)PUSHAL堆栈操作指令的操作数应是字数据,而AL是字节型的;(6)XCHGDS,AXXCHG指令中的操作数不能为段寄存器;,2020/4/26,10,2020年4月26日星期日,10,11、指出下列指令的错误原因,(7)SHLAX,5若移位的位数大于1,则使用CL在指令中表示移位次数;(8)XCHGBX,SI两个操作数同时为存储单元寻址方式,且两个数据的类型不确定;(9)INAX,BXIN指令中应使用DX存放IO端口地址;,2020/4/26,11,2020年4月26日星期日,11,11、指出下列指令的错误原因。,(10)DECSI操作数类型不确定;(11)NEG1234HNEG指令中操作数不能为立即数;(12)MUL05H乘法指令的操作数不能是立即数;,2020/4/26,12,2020年4月26日星期日,12,11、指出下列指令的错误原因,(13)DIVAX,BX16位系统中,DIV指令是单操作数指令;(14)LEAAX,0100HLEA指令的源操作数只能是存储单元寻址方式;(15)ANDBX,SI两个操作数同时是存储单元;,2020/4/26,13,2020年4月26日星期日,13,12、设(DS)=1000H,(SS)=2000H,(BX)=0100H,(BP)=0200H,(SI)=0100H,写出下列指令执行后AX的内容。,(1)MOVAX,0100H(AX)=0100H(2)MOVAX,0100HPA=(DS)16+0100H=10100H(AX)=1020H(3)MOVAX,BXPA=DS16+(BX)=10100H(AX)=1020H,10100H,10200H,20200H,2020/4/26,14,2020年4月26日星期日,14,12、设(DS)=1000H,(SS)=2000H,(BX)=0100H,(BP)=0200H,(SI)=0100H,写出下列指令执行后AX的内容。,(4)MOVAX,BPPA=(SS)16+(BP)=20200H(AX)=5030H(5)MOVAX,100H+BXPA=(DS)16+100H+(BX)=10000H+100H+0100H=10200H(AX)=2020H,10100H,10200H,20200H,2020/4/26,15,2020年4月26日星期日,15,12、设(DS)=1000H,(SS)=2000H,(BX)=0100H,(BP)=0200H,(SI)=0100H,写出下列指令执行后AX的内容。,(6)MOVAX,BXSIPA=(DS)16+(BX)+(SI)=10200H(AX)=2020H(7)MOVAX,SIPA=(DS)16+(SI)=10000H+0100H=10100H(AX)=1020H,10100H,10200H,20200H,2020/4/26,16,2020年4月26日星期日,16,13、已知(DS)=1000H,(SS)=0F00H,(BX)=0010H,要使下列指令的源操作数指向同一个物理地址10320H,写出下列指令中寄存器BP、SI、DI和位移量X的值。,(1)MOVAX,SI(SI)=10320H(DS)16=10320H10000H=0320H(2)MOVAX,BP(BP)=10320H(SS)16=10320H0F000H=1320H(3)MOVAX,BX+DI(DI)=10320H(DS)16(BX)=10320H10000H0010H=0310H(4)MOVAX,XBX+SI(SI)=10320H(DS)16(BX)(SI)=10320H10000H0010H320H=-10H,2020/4/26,17,2020年4月26日星期日,17,14、下列程序段中,各指令执行后AX,CF、OF、ZF和SF的内容如何变化。,2020年4月26日星期日,18,2020年4月26日星期日,18,16、写出实现下列功能的指令或程序段。,(1)将AL中的1、3、5位变反。测试数据为:00101010B,即2AHXORAL,2AH(2)判断AL中的1、3、5位是否均为1。若是将AL置1,否则将AL置0。多位同时为0可用TEST指令测试;故先将AL中的值取反,再判断;,(2)解答MOVBL,ALNOTBLTESTBL,2AHJZNEXTMOVAL,0JMPEXITNEXT:MOVAL,1EXIT:,2020年4月26日星期日,19,2020年4月26日星期日,19,16、写出实现下列功能的指令或程序段。,(3)将AL中的高4位与BL中的低4位、AL中的低4位与BL中的高4位交换。MOVDL,ALMOVDH,BLMOVCL,4RORDL,CLMOVBL,DLRORDH,CLMOVAL,DH,AL,BL,AL,BL,2020年4月26日星期日,20,2020年4月26日星期日,20,16、写出实现下列功能的指令或程序段。,(4)将标志寄存器的内容传送到AX。PUSHFPOPAX(5)将标志寄存器的TF位清0PUSHFPOPAXANDAX,0FEFFHPUSHAXPOPF,P47最后一行,2020年4月26日星期日,21,2020年4月26日星期日,21,16、写出实现下列功能的指令或程序段。,(6)将双字内容逻辑右移4位。设X位双字变量。假定双字数据在变量X中;MOVAX,wordptrXMOVDX,wordptrX+2MOVCX,4NEXT:SHRDX,1RCRAX,1LOOPNEXTMOVwordptrX,AXMOVwordptrX+2,DX,2020年4月26日星期日,22,2020年4月26日星期日,22,16、写出实现下列功能的指令或程序段。,(7)将偏移地址为0100H开始的连续100个字节的数据单元传送到同一数据段中偏移地址为0150H的数据区中。MOVSI,100HMOVCX,100AGAIN:MOVAL,SIMOVSI+50H,ALINCSILOOPAGAIN,2020年4月26日星期日,23,2020年4月26日星期日,23,16、写出实现下列功能的指令或程序段。,(8)将A单元中的内容与B单元中的内容相乘后,结果保存中在C1单元的连续两个字节中。MOVAL,AMULBMOVwordptrC1,AX,第4章MASM汇编语言知识,2020/4/26,25,3、说明下列两条语句的区别,(1)XDB12H此语句中定义的X是一个变量;此语句可为X分配相应空间,其数值在内存中占一个字节;符号X可表示一个存储单元地址;(2)XEQU12H此语句中定义的X是一个常量;此语句并不会为X分配相应空间;符号X仅代替数值12H。,2020/4/26,26,4、指出下列数据段定义后,各数据在内存储器中的分配情况。,DATASEGMENTADB1,2,3,4BDB1,2,3,4CDW1,2,3,4DEQU1234HEDD1234HDATAENDS,D是常量,不分配内存空间;,A,B,C+2,C,D,2020/4/26,27,5、设某数据段如下,试指出(1)STR1的偏移地址100H(2)NUM是多少STR1所占存储单元的个数,即0AH;(3)STR2+3的存储单元的内容字符“O”;,A、B、NUM均为常量;不分配内存空间;,ORG100HA=12HB=A+10HSTR1DBDATASTRINGNUMEQU$-STR1STR2DBINFORMATION,2020/4/26,28,6、下列程序段运行后,Y单元开始的存储区存放的数据是什么?,XDB78HYDB3DUP(?)LEASI,YMOVCX,3MOVAL,XLOP:SARAL,1MOVSI,ALINCSILOOPLOP,X,Y,78H=01111000B,右移一位:00111100B=3CH,3C,右移一位:00011110B=1EH,1E,右移一位:00001111B=0FH,0F,2020/4/26,29,7、下列程序段有何功能?,XDB300DUP(?)YDB100DUP(?)MOVCX,100MOVBX,200MOVSI,0MOVDI,SILOP:SARAL,XBX+SIMOVYDI,ALINCSIINCDILOOPLOP,X+200+SIY+DI其中,SI、DI同步变化。程序功能:将X的后100个字节单元中的数据复制到Y单元中。,2020/4/26,30,8、下列程序段有何功能?如果运行程序时从键盘上输入字符4,则结果是什么?,STR1DBABCDEFHIMOVAH,01HINT21HANDAL,0FHDECALXORAH,AHMOVBX,OFFSETSTR1ADDBX,AXMOVDL,BXMOVAH,02HINT21H,变量名不能为STR,从键盘输入一个数字字符,并转换为数值,将输入数值减1,并扩展为字数据AX,将BX指向STR1中偏移量为AX的字符,将指定字符显示,若程序运行时,从键盘上输入字符“4”,则在屏幕上会显示字符“D”。,2020/4/26,31,9、已知数据定义为“WDATDW1234H,5678H”,并且SI=2,写出下列指令单独执行后的结果。,(1)MOVAX,WDAT(AX)=1234H(2)MOVAX,WDAT+2(AX)=5678HH(3)MOVAX,WDAT+SI(AX)=5678HH,2020/4/26,32,11、使用一伪指令语句完成下列要求。,(1)将数据12H、34H、56H、0ABH依次存放在字节数组ARRAY中。ARRAYDB12H,34H,56H,0ABH(2)在字数组DARRY中依次存放数据1234H、5678H和0ABCDH。DARRYDW1234H,5678H,0ABCDH(3)将压缩的BCD码1234存放在BCD单元中。BCDDB12H,34H,2020/4/26,33,11、使用一伪指令语句完成下列要求。,(4)将字符串STRING存放在数组STR1中。STR1DBSTRING$(5)在数据区DATA1中连续存放字节数据12H、34H,字符数据A、B、C,字数据1234H、5678H、0ABCDHDATA1DB12H,34HDBA,B,CDW1234H,5678H,0ABCDH,2020/4/26,34,12、使用一条指令语句完成下列要求。,(1)将栈顶内容弹至字变量STAK中。POPSTAK(2)将双字变量DVAR存放的地址指针送到ES和SI。LESSI,DVAR(3)把变量VAR的类型属性送到AX中。MOVAX,TYPEVAR(4)取字符串变量VSTR的首地址送到AX中。LEAAX,VSTR,2020/4/26,35,1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 重庆石柱土家族自治县2025年上半年事业单位公开遴选试题含答案分析
- 浙江省瑞安市2025年上半年事业单位公开遴选试题含答案分析
- 河北省南皮县2025年上半年事业单位公开遴选试题含答案分析
- 河北省满城县2025年上半年公开招聘城市协管员试题含答案分析
- 河北省涞源县2025年上半年公开招聘村务工作者试题含答案分析
- 河北省景县2025年上半年公开招聘城市协管员试题含答案分析
- 2025版区域代理销售合同示范文本
- 2025布料进出口贸易合作协议书
- 2025保温系统施工与质量保证合同范本
- 2025年资产证券化担保合同范本
- 生殖伦理培训课件
- 船舶压载水取样与检测技术
- 【种植活动中培养幼儿自主探究的实践研究4100字(论文)】
- 飞蚊症护理的课件
- 金融工程.郑振龙(全套课件560P)
- 读书分享交流会《全球通史》课件
- 古典诗歌的生命情怀
- 2017版小学科学课程标准思维导图
- 诚信展业与法律法规月演示
- 第十一章-异常分娩-1产力异常
- P公司采购管理程序
评论
0/150
提交评论