第4章-程序结构习题答案.doc
《第4章-程序结构习题答案.doc》由会员分享,可在线阅读,更多相关《第4章-程序结构习题答案.doc(11页珍藏版)》请在咨信网上搜索。
1、第4章 程序结构4.1 简答题(1)CPUID指令返回识别字符串的首字符“G”在哪个寄存器中?EBX的高8位(2)数据的直接寻址和指令的直接寻址有什么区别?数据的直接寻址给出数据所在的存储器地址,指令的直接寻址给出指令所在的存储器地址。(3)是什么特点决定了目标地址的相对寻址方式应用最多?指令代码中提供目标地址相对于当前指令指针寄存器EIP的位移量,使得同一个程序被操作系统安排在不同的存储区时,指令间的位移并没有变化的特点。(4)Jcc指令能跳转到代码段之外吗? 不能,Jcc指令采用段内相对寻址方式(5)什么是奇偶校验?数据通信时,数据的某一位用做传输数据的奇偶校验位,数据中包括校验位在内的“
2、1”的个数恒为奇数,就是奇校验;恒为偶数,就是偶校验(6)助记符JZ和JE为什么表达同一条指令?两个数相减,差值为0(JZ)与两个数相等(JE)是一个含义(7)为什么判断无符号数大小和有符号大小的条件转移指令不同?判断两个无符号数的大小和判断两个有符号数大小关系要利用不同的标志组合。判断有符号数的大小需要组合SF和OF标志,并利用ZF标志确定相等与否。判断无符号数的高低利用CF标志,利用ZF标志确定相等。(8)双分支结构中两个分支体之间的JMP指令有什么作用?用于跳过分支体2,避免进入分支体2而出现错误。(9)如果循环体的代码量远超过128个字节,还能用LOOP指令实现计数控制循环吗?不能,因
3、为LOOP指令的目标地址采用相对短转移,只能在128127字节之间循环(10)什么是“先循环、后判断”循环结构?指先执行循环体,然后判断是否继续循环的结构,这种结构通常至少执行一次循环体4.2 判断题(1)指令指针或者号包括代码段寄存器值的改变将引起程序流程的改变。对(2)指令的相对寻址都是近转移。对(3)采用指令的寄存器间接寻址,目标地址来自存储单元。错,(4)JMP指令对应高级语言的GOTO语句,所以不能使用错,需要使用(5)因为条件转移指令Jcc要利用标志作为条件, 所以也影响标志。错(6)JA和JG指令的条件都是“大于”,所以是同一个指令的两个助记符。错,JA针对无符号数,JG针对有符
4、号数(7)JC和JB的条件都是CF1,所以是同一条指令。对。无符号小于(JB)必然借位(JC)(8)控制循环是否结束只能在一次循环结束之后进行错(9)介绍loop指令时,常说它相当于dec ecx和jnz两条指令。但是考虑对状态标志的影响,它们有差别。Loop指令不影响标志,而dec指令却影响除cf之外的其他状态标志。对(10)若ECX0,则LOOP指令和JECX指令都发生转移。对4.3 填空题(1)JMP指令根据目标地址的转移范围和寻址方式,可以分成4种类型:段内转移、( ),段内转移、( )以及段间转移、( ),段间转移、( )。相对寻址,间接寻址,直接寻址,间接寻址(2)MASM给短转移
5、、近转移和远转移定义的类型名依次是_、_和_。SHORT,NEAR,FAR(3)假设在平展存储模型下,EBX1256H,双字变量TABLE的偏移地址是20A1H,线性地址32F7H处存放3280H,执行指令“JMP EBX” 后EIP_,执行指令“JMP TABLEEBX”后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,_”构成条件
6、,然后使用JE指令实现转移。0,EDX(7)循环结构程序一般由三个部分组成,它们是( )、循环体和 ( )部分。 循环初始,循环控制(8)JECXZ指令发生转移的条件是( ),loop指令不发生转移的条件是( )。Ecx=0, ecx 不等于0(9)loop指令进行减1计数,实际应用中也常进行加1计数。针对例4-14程序,如果删除其中的loop指令,则可以使用指令“cmp( ),ecx”和“jb ( ) ”替代。Ebx, jb again(10)小写字母“e”是英文当中出现频率最高的字母。如果某个英文文档利用例4-16的异或方法进行简单加密, 统计发现密文中字节数据“8FH”最多, 则高程序采
7、用的字节密码可能是( )0EAh习题4.4已知var1、var2、var3和var4是32位无符号整数,用汇编语言程序片段实现如下C+语句:var4=(var1*6)/( var2-7)+var3解答:mov eax,var1mov ebx,6mul ebx;var1*6mov ebx,var2sub ebx,7;var2-7div ebx;(var1*6)/( var2-7) add eax,var3;(var1*6)/( var2-7)+var3mov var4,eax习题4.5已知var1、var2、var3和var4是32位有符号整数,用汇编语言程序片段实现如下C+语句:Var1=(v
8、ar2*var3)/( var4+8)-47解答:Moveax,var2Imulvar3Movebx,var4Addebx,8IdivebxSubeax,47Movvar1,eax习题4.6参看例4-1,假设N小于90000,这时求和结果只需要eax保存,edx为0。修改例4-1使其可以从键盘输入一个数值N(用readuid子程序),最后显示累加和(用dispuid子程序)。解答:.dataMsgbyte Input a number(090000):,0.codeStart:Moveax,offset msgCallreaduidCalldispcrlfMovebx,eaxAddebx,1I
9、mulebxShredx,1Rcreax,1Calldispuid习题4.7定义COUNT(假设为10)个元素的32位数组,输入元素编号(0COUNT-1),利用DISPHD子程序输出其地址、利用DISPSID子程序输出其值。解答:;数据段count= 10arraydword 0,1,2,3,4,5,6,7,8,9;代码段call readuid;输入N,小于10lea eax,arrayeax*4;EAX地址call disphd;显示地址mov eax,arrayeax*4;EAX变量值call dispsid;显示数值习题4.10判断下列程序段跳转的条件(1)xor ax,1e1eh
10、Je equal(2)test al,10000001b Jnz here(3)cmp cx,64h Jb there答:(1) zf= 1 (2) zf= 0 (3) cf =1习题4.11假设EBX和ESI存放的是有符号数,EDX和EDI存放的是无符号数,请用比较指令和条件转移指令实现以下判断:(1)若EDX EDI ,转到above执行(2)若EBX ESI ,转到greater执行(3)若EBX = 0 ,转到zero执行(4)若EBX - ESI产生溢出 ,转到overflow执行(5)若ESI = EBX ,转到less_eq执行(6)若EDI= EDX ,转到below_eq执行
11、答:(1) cmp ebx,ediJa above(2) cmpebx,esiJggreater(3) cmpebx ,0Je zero(4) cmp ebx,esiJooverflow(5) cmpesi,ebxJleless_eq(6) cmpedi,edxJbebelow_eq习题4.12使用“shr eax,2”将eax中的D1位移入CF标志,然后用JC /JNC指令替换JZ /JNZ指令完成例4-6程序的功能。答:mov eax,56hShr eax,2jnc nommov eax,offset yes_msgjmp donenom:mov eax,offset no_msgdone
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序结构 习题 答案
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。