



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机系统基础第二次作业-CAL-FENGHAI-(2020YEAR-YICAI)INGBIAN计算机系统基础第二次作业3、对于以下AT&T格式汇编指令,根据操作数的长度确定对应指令助记符中的 长度后缀,并说明每个操作数的寻址方式。(1)mov 8(%ebp, %ebx, 4), %ax(2)mov %a, 12(%ebp)(3)add (, %ebx,4)/ %ebx< 4) or (%ebx), %dh(5)push $0xF8< 6) mov $OxFFFO, %eax(7)test %cx, %cx(8)lea 8(%ebx/ %esi), %eax答:如下表所示:
2、题目编号长度后缀源操作数目的操作数(1)W基址+比例变址+位移寄存器(2)b寄存器基址+位移(3)1比例变址寄存器(4)b基址寄存器(5)1立即数栈(6)1立即数寄存器(7)w寄存器寄存器(8)1基址亠变址+位移寄存器4.使用汇编器处理以下各行AT&T格式代码时都会产生错误,请说明每一行 存在什么错误。< 1) movl OxFF, (%eax)(3) addl %ecx, $OxFO(5) addb $0xF8, (%dl)(7) andl %esi, %esx(2) movb %ax, 12(%ebp)(4) orw $OxFFFFO, (%ebx)(6) movl %bx,
3、 %eax(8) movw 8(%ebp, 4), %ax答:(1)书写错误。因为源操作数是立即数OxFF,所以需要在前面加上$(2)由于源操作数(ax)是16位,而长度后缀是字节h,所以不一致,应 改为4 movwJ(3)目的操作数不能是立即数寻址(4)操作数位数超过16位,而长度后缀为16位的应改为4orr(5)不能用8位寄存器作为口的操作数地址所在寄存器(6)源操作数寄存器与LI的操作数寄存器长度不一致(7)不存在ESX寄存器(8)源操作数地址中缺少变址寄存器7.假设变量x和y分别存放在寄存器EAX和ECX中,请给出以下每条指令执 行后寄存器EDX中的结果。(1) leal (%eax)
4、, %edx(2) leal 4(%eax, %ecx)z %edx(3) leal (%eax, %ecx, 8), %edx(4) leal OxC(%ecx, %eax, 2), %edx(5) leal (, %eax, 4), %edx< 6) leal (%eax, %ecx), %edx答:(1) Redx=x把eax的值放到edx中去(2) Redx=x+y+4把 eax+ecx+4 的值放到 edx 中去< 3) Redx=x+8*y把 eax+8*ecx 的值放到 edx 中去(4) Redx=y+2*x+12把 ecx+2*eax+12 的值放到 edx 中去
5、< 5) Redx=4*x 把 4*eax 的值放到 edx 中去(6) Redx=x+y 把 eax+ecx 的值放到 edx 中去8假设以下地址以及寄存器中存放的机器数如下表所示地址机器数寄存器机器数0x8049300OxfffffffOEAX0x80493000x8049400OxEBX0x1000x80493840x80f7ff00ECX0x100x80493800x908fl2a8EDX0x80分别说明执行以下指令或寄存中的内容交发生改变改变后的内容是什么条件标 志OF、SF、ZF和CF会发生什么改变。指令功能为:RedxRedx+MReax=0x00000080+M0x804
6、9300,寄存器EDX中内容改变。改变后的内容为以下运算的结果:00000080H+FFFFFFF0H0000 0000 0000 0000 0000 0000 1000 0000+ 1111 1111 1111 1111 1111 1111 1111 00001 0000 0000 0000 0000 0000 0000 0111 0000因此,EDX中的内容改变为0x00000070o根据表可知,加法指令会影响OF、SF、ZF 和 CF 标志。OF=0, ZF=O, SF=O, CF=lo(2)指令功能为:Recx -Recx-MReax+Rebx=0x00000010+M0x804940
7、0,寄存器 ECX 中内容改变。 改变后的内容为以下运算的结果:00000010H-Ho0000 0000 0000 0000 0000 0000 0001 0000+ 0111 1111 1111 1111 1111 1111 1111 10000 1000 0000 0000 0000 0000 0000 0000 1000根据表可知,减法指令会影响OF、SF、ZF和CF标志。OF=1, ZF=O, SF=1,CF=1 0=lo(3) 指令功能为:RtbxJ-Rfbx or MReax+Recx*8+4,寄存器 BX 中内容改 变。改变后的内容为以下运算的结果:0x0100 or M0x8
8、049384=0100H or FFOOH0000 0001 0000 0000or 1111 11110000 00001111 1111 0000 0000因此,BX中的内容改为OxFFOO。由节可知,OR指令执行后OF=CF=O;因为结 果不为0,故ZF=O:因为最高位为1,故SF=lo(4) test指令不改变任何通用寄存器,但根据以下“与”操作改变标志:Rdl and 0x801000 0000and 1000 00001000 0000由节可知,TEST指令执行后OF=CF=O:因为结果不为0,故ZF=O;因为最高位 为,故 SF=lo(5) 指令功能为:MReax+Redx-MR
9、eax+Redx*32,即存储单元 0x8049380中的内容改变为以下运算的结果:M0x8049380*32=0x908fl2a8*32,也即只要将 0x908fl2a8 左移 5 位即 可得到结果。 1001 0000 1000 1111 0001 0010 1010 1000«5=0001 0001 1110 0010 0101 0101 0000 0000因此,指令执行后,单元0x8049380中的内容改变为0xlle25500。显然,这个 结果是溢岀的。但是,根据表可知,乘法指令不影响标志位,也即并不会使 OF=lo(6) 指令功能为:Rcx -Rcx-1,即CX寄存器的内容
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 芋头粗加工管理制度
- 英语社团机管理制度
- 财务会计管理制度范本
- 财务管理项目化教材习题参考答案
- 财务部月度工作计划格式
- 财务会计应用补充练习
- 视觉感知行业面临的挑战分析
- 计算机网络技术基础 教案
- 山东省济宁市邹城市第一中学2024-2025学年高一下学期5月月考生物试卷(有答案)
- 江苏省南通市期末模拟试卷(含答案)2024-2025学年统编版语文八年级下册
- 凉山州木里县选聘社区工作者笔试真题2024
- 2025年安徽省高考物理试卷真题(含答案解析)
- 配电线路高级工练习试题附答案
- (2025)干部任前廉政知识考试题库及答案
- 护士N2理论考试试题及答案
- GB/T 45439-2025燃气气瓶和燃气瓶阀溯源二维码应用技术规范
- YC/T 620-2024烟草零售客户满意度调查规范
- 《公路桥梁挂篮设计与施工技术指南》
- 16J914-1 公用建筑卫生间
- 2024年南昌市产业投资集团有限公司招聘笔试参考题库附带答案详解
- 试验检测单位安全培训课件
评论
0/150
提交评论