蚂蚁文库
换一换
首页 蚂蚁文库 > 资源分类 > PDF文档下载
 

第4章-程序结构习题答案

  • 资源ID:55661662       资源大小:360.24KB        全文页数:11页
  • 资源格式: PDF        下载权限:游客/注册会员    下载费用:10积分 【人民币10元】
快捷注册下载 游客一键下载
会员登录下载
三方登录下载: 微信快捷登录 QQ登录  
下载资源需要10积分 【人民币10元】
邮箱/手机:
温馨提示:
支付成功后,系统会自动生成账号(用户名和密码都是您填写的邮箱或者手机号),方便下次登录下载和查询订单;
支付方式: 微信支付    支付宝   
验证码:   换一换

 
友情提示
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,既可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰   

第4章-程序结构习题答案

精品文档 第 4 章 程序结构 4.14.1 简答题简答题 (1)CPUID 指令返回识别字符串的首字符“G”在哪个寄存器中 EBX 的高 8 位 (2)数据的直接寻址和指令的直接寻址有什么区别 数据的直接寻址给出数据所在的存储器地址, 指令的直接寻址给出指令所在的存储器地 址。 (3)是什么特点决定了目标地址的相对寻址方式应用最多 指令代码中提供目标地址相对于当前指令指针寄存器EIP 的位移量, 使得同一个程序被 操作系统安排在不同的存储区时,指令间的位移并没有变化的特点。 (4)Jcc 指令能跳转到代码段之外吗 不能,Jcc 指令采用段内相对寻址方式 (5)什么是奇偶校验 数据通信时,数据的某一位用做传输数据的奇偶校验位, 数据中包括校验位在内的 “1” 的个数恒为奇数,就是奇校验;恒为偶数,就是偶校验 (6)助记符 JZ 和 JE 为什么表达同一条指令 两个数相减,差值为 0(JZ)与两个数相等(JE)是一个含义 (7)为什么判断无符号数大小和有符号大小的条件转移指令不同 判断两个无符号数的大小和判断两个有符号数大小关系要利用不同的标志组合。 判断有符号数的大小需要组合SF 和 OF 标志,并利用 ZF 标志确定相等与否。 判断无符号数的高低利用CF 标志,利用 ZF 标志确定相等。 (8)双分支结构中两个分支体之间的JMP 指令有什么作用 用于跳过分支体 2,避免进入分支体 2 而出现错误。 (9) 如果循环体的代码量远超过128 个字节, 还能用 LOOP 指令实现计数控制循环吗 不能,因为LOOP 指令的目标地址采用相对短转移,只能在-128~+127 字节之间循环 (10)什么是“先循环、后判断”循环结构 指先执行循环体,然后判断是否继续循环的结构,这种结构通常至少执行一次循环体 4.24.2 判断题判断题 (1)指令指针或者号包括代码段寄存器值的改变将引起程序流程的改变。 对 (2)指令的相对寻址都是近转移。 对 (3)采用指令的寄存器间接寻址,目标地址来自存储单元。 错, (4)JMP 指令对应高级语言的 GOTO 语句,所以不能使用 错,需要使用 (5)因为条件转移指令Jcc 要利用标志作为条件, 所以也影响标志。 错 (6)JA 和 JG 指令的条件都是“大于” ,所以是同一个指令的两个助记符。 错,JA 针对无符号数,JG 针对有符号数 (7)JC 和 JB 的条件都是 CF=1,所以是同一条指令。 对。无符号小于(JB)必然借位(JC) (8)控制循环是否结束只能在一次循环结束之后进行 。1欢迎下载 精品文档 错 (9)介绍loop 指令时,常说它相当于dec ecx 和 jnz 两条指令。但是考虑对状态标志 的影响, 它们有差别。 Loop 指令不影响标志, 而 dec 指令却影响除 cf 之外的其他状态标志。 对 (10)若 ECX=0,则 LOOP 指令和 JECX 指令都发生转移。 对 4.34.3 填空题填空题 (1)JMP 指令根据目标地址的转移范围和寻址方式,可以分成4 种类型段内转移、 () ,段内转移、 ()以及段间转移、 () ,段间转移、 () 。 相对寻址,间接寻址,直接寻址,间接寻址 (2)MASM 给短转移、近转移和远转移定义的类型名依次是___、___和___。 SHORT,NEAR,FAR (3)假设在平展存储模型下,EBX=1256H,双字变量 TABLE 的偏移地址是 20A1H,线 性地址 32F7H 处存放 3280H,执行指令“JMP EBX” 后 EIP=_______,执行指令“JMP TABLE[EBX]”后 EIP=_______。 1256H,3280H (4) “CMP EAX,3721H”指令之后是 JZ 指令,发生转移的条件是EAX=________,此时 ZF=_______。 3721H,1 (5)执行“SHR EBX,4”指令后,JNC 发生转移,说明 EBX 的 D3=_____。 0 (6) 在 EDX 等于 0 时转移, 可以使用指令 “CMP EDX,____” 、 也可以使用 “TEST EDX,_____” 构成条件,然后使用 JE 指令实现转移。 0,EDX (7)循环结构程序一般由三个部分组成,它们是() 、循环体和 ()部分。 循环初始,循环控制 (8)JECXZ 指令发生转移的条件是() ,loop 指令不发生转移的条件是() 。 Ecx0, ecx 不等于 0 (9)loop 指令进行减 1 计数,实际应用中也常进行加 1 计数。针对例 4-14 程序,如 果删除其中的 loop 指令,则可以使用指令“cmp(),ecx”和“jb ”替代。 Ebx, jb again (10)小写字母“e”是英文当中出现频率最高的字母。如果某个英文文档利用例4-16 的异或方法进行简单加密, 统计发现密文中字节数据“8FH”最多, 则高程序采用的字节 密码可能是() 0EAh 习题习题 4.44.4 已知 var1、 var2、 var3 和 var4 是 32 位无符号整数, 用汇编语言程序片段实现如下C 语句 var4var1*6/ var2-7var3 解答解答 mov eax,var1 mov ebx,6 mul ebx ;var1*6 mov ebx,var2 。2欢迎下载 精品文档 sub ebx,7;var2-7 div ebx ;var1*6/ var2-7 add eax,var3;var1*6/ var2-7var3 mov var4,eax 习题习题 4.54.5 已知 var1、 var2、 var3 和 var4 是 32 位有符号整数, 用汇编语言程序片段实现如下C 语句 Var1var2*var3/ var48-47 解答解答 Mov Imul Mov Add Idiv Sub Mov eax,var2 var3 ebx,var4 ebx,8 ebx eax,47 var1,eax 习题习题 4.64.6 参看例 4-1,假设N 小于 90000,这时求和结果只需要eax 保存,edx 为 0。修改例4-1 使其可以从键盘输入一个数值N用 readuid子程序, 最后显示累加和 (用 dispuid子程序) 。 解答 .data Msg byte ‘ a number090000’,0 .code Start Mov eax,offset msg Callreaduid Calldispcrlf Mov ebx,eax Add ebx,1 Imulebx Shredx,1 Rcreax,1 Calldispuid 习题习题 4.74.7 定义 COUNT (假设为 10) 个元素的 32 位数组, 输入元素编号 (0~COUNT-1) , 利用 DISPHD 子程序输出其地址、利用DISPSID 子程序输出其值。 解答 ;数据段 count 10 arraydword 0,1,2,3,4,5,6,7,8,9 ;代码段 call readui

注意事项

本文(第4章-程序结构习题答案)为本站会员(wangxing100)主动上传,蚂蚁文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知蚂蚁文库(发送邮件至2303240369@qq.com或直接QQ联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们


网站客服QQ:2303240369

copyright@ 2017-2027 mayiwenku.com 

网站版权所有  智慧蚂蚁网络

经营许可证号:ICP备2024020385号



收起
展开