计算机系统第三章答案解析.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
WORD文档 可编辑 技术资料 专业分享 习 题 3. 参考答案: (1)后缀:w, 源:基址+比例变址+偏移, 目:寄存器 (2)后缀:b, 源:寄存器, 目:基址+偏移 (3)后缀:l, 源:比例变址, 目:寄存器 (4)后缀:b, 源:基址, 目:寄存器 (5)后缀:l, 源:立即数, 目:栈 (6)后缀:l, 源:立即数, 目:寄存器 (7)后缀:w, 源:寄存器, 目:寄存器 (8)后缀:l, 源:基址+变址+偏移, 目:寄存器 4.参考答案: (1)源操作数是立即数0xFF,需在前面加‘$’ (2)源操作数是16位,而长度后缀是字节‘b’,不一致 (3)目的操作数不能是立即数寻址 (4)操作数位数超过16位,而长度后缀为16位的‘w’ (5)不能用8位寄存器作为目的操作数地址所在寄存器 (6)源操作数寄存器与目操作数寄存器长度不一致 (7)不存在ESX寄存器 (8)源操作数地址中缺少变址寄存器 5.参考答案: 表3.12 题5用表 src_type dst_type 机器级表示 char int movsbl %al, (%edx) int char movb %al, (%edx) int unsigned movl %eax, (%edx) short int movswl %ax, (%edx) unsigned char unsigned movzbl %al, (%edx) char unsigned movsbl %al, (%edx) int int movl %eax, (%edx) 6.参考答案: (1)xptr、yptr和zptr对应实参所存放的存储单元地址分别为:R[ebp]+8、R[ebp]+12、 R[ebp]+16。 (2)函数func的C语言代码如下: void func(int *xptr, int *yptr, int *zptr) { int tempx=*xptr; int tempy=*yptr; int tempz=*zptr; *yptr=tempx; *zptr = tempy; *xptr = tempz; } 7.参考答案: (1)R[edx]=x (2)R[edx]=x+y+4 (3)R[edx]=x+8*y (4)R[edx]=y+2*x+12 (5)R[edx]=4*y (6)R[edx]=x+y 8.参考答案: (1)指令功能为:R[edx]←R[edx]+M[R[eax]]=0M[0x8049300],寄存器EDX中内容改变。改变后的内容为以下运算的结果+FFFFFFF0H 0000 0000 0000 0000 0000 0000 1000 0000 0000 0000 0000 0000 0000 0000 1000 0000 1111 1111 1111 1111 1111 1111 1111 0000 1 0000 0000 0000 0000 0000 0000 0111 0000 + 因此,EDX中的内容改变为0根据表3.5可知,加法指令会影响OF、SF、ZF和CF标志。OF=0,ZF=0,SF=0,CF=1。 (2)指令功能为:R[ecx]←R[ecx]-M[R[eax]+R[ebx]]=0M[0x8049400], 寄存器ECX中内容改变。改变后的内容为以下运算的结果 0000 0000 0000 0000 0000 0000 0000 0001 0000 0111 1111 1111 1111 1111 1111 1111 1000 0 1000 0000 0000 0000 0000 0000 0000 1000 + 因此,ECX中的内容改为0根据表3.5可知,减法指令会影响OF、SF、ZF和CF标志。OF=1,ZF=0,SF=1,CF=1?0=1。 (3)指令功能为:R[bx]←R[bx] or M[R[eax]+R[ecx]*8+4],寄存器BX中内容改变。改变后的内容为以下运算的结果:0x0100 or M[0x8049384]=0100H or FF00H 0000 0001 0000 0001 0000 0000 1111 1111 0000 0000 1111 1111 0000 0000 or 因此,BX中的内容改为0xFF00。由3.3.3节可知,OR

文档评论(0)

xiangxiang + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档