




下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、离线作业2答案2.22、 判断下列程序段跳转的条件XORAX,1E1EHJEEQUALTESTAL,10000001BJNZTHERECMPCX,64HJBTHERE(1)xorax,1e1ehjeequal;AX=1e1eh(异或后为0)testal,10000001bjnzthere;AL的D0或D7至少有一位为1cmpcx,64hjbthere;CX(无符号数)<64hXOR2.24、假设AX和SI存放的是有符号数,DX和DI存放的是无符号数,请用比较指令和条件转移指令实现以下判断:(1)若DX>DI,转至ijABOVE执行;(2)若AX>SI,转到GREATER执行;
2、(3)若CX=0,转到ZERO执行;(4)若AXSI产生溢出,转到OVERFLOW执行;(5)若SI&AX转至ULESS_EQ执行;(6)若DI&DX转至UBELOW_EQ执行。(1)若DX>DI,转到above执行cmpdx,dijaabove;=jnbeabove(2)若AX>SI,转到greater执行cmpax,sijggreater;=jnlegreater(3)若CX=0,转到zero执行cmpcx,0jcxzzerojzzero(4)若AX-SI产生溢出,转到overflow执行;cmpax,dijooverflow(5)若SI&AX,转到le
3、ss_eq执行;cmpsi,axcmpax,sijleless_eqjgeless_eq(6)若DI&DX转到below_eq执行。cmpdi,dxcmpdx,dijbebelow_eqjaebelow_eq(1)若D2.26、按照下列要求,编写相应的程序段:(1)起始地址为STRING的主存单元中存放有一个字符串(长度大于6),把该字符串中的第1个和第6个字符(字节量)传送给DX寄存器。(3)编写一个程序段,在DX高4位全为0时,使AX=0;否则使AX=-1。(6)已知字符串STRING包含有32KB内容,将其中的粉号替换成空格。(7)有一个100个字节元素的数组,其首地址为ARRA
4、Y,将每个元素减1(不考虑溢出)存于原处。(8)统计以$结尾的字符串SRTING的字符个数。(1)(1)起始地址为string的主存单元中存放有一个字符串(长度大于6),把该字符串中的第1个和第6个字符(字节量)传送给DX寄存器。movsi,0movdl,stringsi;第1个字符送dl寄存器movsi,5movdh,stringsi;第6个字符送dh寄存器从主存buffer开始的4个字节中保存了4个非压缩BCD码,现按低(高)地址对低(高)位的原则,将它们合并到DX中。xorsi,si;si清零moval,buffersi;第一字节incsimovah,buffersi;第二字节movcl
5、,4shlah,cl;BCM移到高半字节oral,ah;组合成压缩BCffimovdl,al;存入dl寄.incsimoval,buffersi;第三字节incsimovah,buffersi;第四字节movcl,4shlah,cl;BCM移到高半字节oral,ah;组合成压缩BCDKmovdh,al;存入dh寄.编写一个程序段,在DX高4位全为0时,使AX=0;否则使AX=-1。testdx,0f000hjzzeromovax,-1jmpdonezero:movax,0done:ret有两个64位数值,按小端方式”存放在两个缓冲区buffer1和buffer2中,编写程序段完成buffer1
6、buffer2功能。leabx,buffer1leadx,buffer2movcx,8;8个字节xorsi,si;si=0clc;CF=0假设从B800h:0开始存放有100个16位无符号数,编程求它们的和,并把32位的和保存在DX.AX中。movax,0b800hmovds,ax;段地址xorsi,si;地址偏移量si=0xordx,dx;和的高字dx=0movcx,99;加的次数movax,si;第一个数again:incsi;指向下一个字单元incsiaddax,si;加下一个数jncnoc;无进位转incdx;有进位dx=dx+1noc:deccxjnzretcx,again;次数-1
7、;非0继续加(6)movmovagain:jnz已知字符串si,offsetcx,8000hcmpsi,nextstring包含有32KB内容,将其中的翳号替换成空格。string;32k=2A15=8000h'$'movnext:si,20hincsi;ifsi='$'si<-loopagain有一个100个字节元素的数组,其首地址为array,将每个元素减1(不考虑溢出)存于原处。xorsi,si;si<-0movcx,100;循环次数again:decarraysideccxjnzagain(8)统计以碑尾的字符串srting的字符个数xors
8、i,si;si<-0coun:cmpstringsi,'$'jedoneincsijmpcoundone:ret假设MYWORD是一个字变量,MYBYTE1和MYBYTE2是两个字节变量,指出下列语句中的错误原因。MOVBYTEPTRBX,1000MOVBX,OFFSETMYWORDSICMPMYBYTE1,MYBYTE2MOVAL,MYBYTE1+MYBYTE2)SUBAL,MYWORD)JNZMYWORD(1)movbyteptrbx,1000;1000超出了一个字节范围movbx,offsetmywordsi;寄存器的值只有程序执行时才能确定,;而offset是汇编
9、过程计算偏移地址,故无法确定;可以改为leabx,mywordsicmpmybyte1,mybyte2;两个都是存储单元,指令不允许moval,mybyte1+mybyte2;变量值只有执行时才确定,汇编过程不能计算subal,myword;字节量AL与字量myword,类型不匹配jnzmyword;Jcc指令只有相对寻址方式,不支持间接寻址方式3.22、在SMALL存储模式下,简化段定义格式的代码段、数据段和堆栈段的缺省段名、定位、组合以及类别属性分别是什么?段定义伪指令段名定位组合类别组名.CODE_TEXTWORDPUBLIC'CODE.DATA_DATAWORDPUBLICDATADGROUP.STACKSTACKPARASTACKSTACKDGROUP3.25、按下面要求写一个简化段定义格式的源程序(1)定义常量NUM,其值为5;数据段中定义字数组变量DATALIST,它的头5个字单元中依次存放-1、0、2、5和4,最后1个单元初值不定;(2)代码段中的程序将DATALIST中头NUM个数的累加和存入DATALIST的最后1个字单元中。(1)定义常量num,其值为5;数据段中定义字数组变量datalist,它的头5个字单元中依次存放-1、0、2、5和4,最后1个单元初值不定;(2)代码段中的程序将datalist中头num个数的累加和存入datalist的最后1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公司沙漠活动方案
- 公司聚会端午节活动方案
- 公司茶花会策划方案
- 公司荔枝活动方案
- 公司滑雪团建活动方案
- 公司流量策划方案
- 公司环保团建活动方案
- 公司春季海边活动方案
- 公司聚会场地策划方案
- 公司春节放假策划方案
- 小学生汇报讲课件
- 2025浙江嘉兴市海宁市嘉睿人力招聘5人笔试参考题库附带答案详解析版
- 2025年安徽蚌埠市龙子湖区东方人力资源有限公司招聘笔试参考题库含答案解析
- 2025至2030中国云计算行业产业运行态势及投资规划深度研究报告
- 党课课件含讲稿:《关于加强党的作风建设论述摘编》辅导报告
- GB/T 19023-2025质量管理体系成文信息指南
- 2025中考历史高频点速记大全
- 2025年特种设备作业人员气瓶充装P证考试题库
- 《智能驾驶辅助系统ADAS》课件
- 2024年自然资源部所属单位招聘笔试真题
- 江西吉安市吉水县吉瑞招商运营有限公司招聘笔试题库2025
评论
0/150
提交评论