汇编语言程序设计资料.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
〈汇编语言程序设计〉课后习题及答案 作者名:不详 来源:网友提供 06年6月8日 第一章  1.1  CPU 分析、控制并执行指令的部件  IP 指示下一条将要执行的指令的地址  SP 保存当前栈顶地址的寄存器  状态标志 指出指令操作结果的标志,如ZF,CF等。  控制标志 控制操作的标志,只有DF,IF,TF三个。  ALU 进行算术和逻辑运算的单元  存储器 存储程序、数据等信息的的记忆装置。  物理地址 CPU发出的访问存储器的地址信息。  偏移地址 相对于段起始地址的偏移量。  段地址 是逻辑段的起始地址。  1.2下列操作可使用哪些寄存器  ·存放各种运算操作的数据:AX,BX,CX,DX,SP,BP,SI,DI  (我的辅导书上没有SP,BP;why?)  ·存放数据串操作时的计数值:CX  ·查看程序已执行到哪条指令的地址:IP  ·查看堆栈中当前正要进行入出栈的存储单元的地址:SP  ·查年运算结果是否等于零:PSW的ZF  ·查年程序中的数据存放段区是从哪个地址开始的:DS,ES  ·查看程序中的指令存放的段区是从哪个地址开始的:CS  1.3段地址和偏移地址为1000:117A的存储单元的物理地址是什么?而1109:00EA或1025:0F2A的存储单元的物理地址又是什么:这说明了什么问题?  1000:117A物理地址为:1117A;1109:00EA的物理地址为:1117A;1025:0F2A的物理地址为:1117A.说明物理地址不变,段地址改变,偏移地址也随之变化.  1.存储器地址对应的数据(图略)  75422H(字节):9CH  75424H(字节):5DH  75422H(字):249CH  75424H(字):E65DH                            第二章  2.1写出相应的汇编语言指令:  (1)以寄存器BX和SI作为基址变址寻址方式把存储器中的一个字传送到CX寄存器。  MOV CX,[BX][SI(注:寄存器寻址只能使用:BX,BP,SI,DI;且BX、BP或SI,DI不能同时使用,可能我说的不太对,请版主确认一下)  (2)以寄存器BX和偏移量value作寄存器相对寻址方式把存储器的一个字和AX相加,把结果(即和)送回那个字单元中。  ADD value[BX],AX  (3)将一个字节立即数0B6H与符号的地址为NUM的存储器字节单元内容相比较。  CMP BYTE PTR 0B6H,NUM(如果前面不加BYTE RTR,默认的也是字节比较吧?还有双字比较,应该怎么写?)  (4)测试从寄存器BP和DI、偏移量COUNT作为相对基址变址寻址方式寻址的存储器字节单元内容最高位B7的值,字节单元的内容不能改变。  TEST COUNT[BP][DI],80H  (5)将AH寄存中的高4位和低4位数据互换。  MOV CL,4  ROL(或ROR) AH,CL  (6)清除以寄存器SI间接寻址的存储器字单元,同时清除CF标志位.  XOR AX,AX ;使AXCF=0  MOV [SI],AX  2.2设DS=1000H,BX=2865H,SI=0120H,偏移量D=47A8H,试计算下列各种寻址方式下的有效地址.  1)使用D的直接寻址 47A8H (这道指令怎么写?如何定义D的值)  2)使用BX的寄存器间接寻址 2865H  3)使用BX和D的寄存器相对寻址 700DH  4)使用BX、SI和F的相对基址变址寻址 712DH  5)使用BX、SI的基址变址寻址 2985  2.3假设 DS=1000H,BX=2A80H,CX=3142H,SI=0050H,(10050H)=3BH,(10051H)=86H,(11200H)=7AH,(11101H)=64H,(12ADOH)=0A3H,每小题的括号中分别填入指令执行后的结果:  1)MOV AX,1200H ;AX=1200H  2)MOV AX,[1200H] ;AX=1200H(书上的答案是647A,但是我用DEBUG试了一下是1200,可能是因为我的PII的原因吧,希望有8088的 朋友能试一下,版主,考起试来应该怎么写呀?)  3)ADD [SI],CX ;(10050H)=7DH,9100510=B7H,ZF=0,CF=0,SF=1,OF=1  4)OR BYTE PTR [BX][SI],54 ;(12AD0H)=F7,CF=0,OF=0  5)MOV 150H[BX],CH ;[12BD0H]=31,CH=31  2.4指出下列指令的错误原因  1)MO

文档评论(0)

四娘 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档