欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    汇编语言程序设计(顺序分支).ppt

    • 资源ID:6586409       资源大小:237KB        全文页数:10页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    汇编语言程序设计(顺序分支).ppt

    3.1 汇编语言程序设计,顺序结构程序简单程序结构,程序清单如下:MOVAX,DATAMOV DS,AXMOVSI,0050H;被加数指针MOVDI,0052H;加数指针MOVBX,0054H;和的指针MOVAL,SI;取被加数低8位ADDAL,DI;低位相加MOVAH,SI+1;取被加数高8位ADCAH,DI+1;高位相加MOVBX,AX;保存运算结果INT 20H;结束,数据段定义为:DATA SEGMENTORG 0050HDB 34HDB 12HDB 78HDB 56HDB 2 DUP(?)DATA ENDS,如数据段定义为:DATA SEGMENTORG 0050HDW 1234HDW 5678HDW?DATA ENDS 程序也可改为:MOVAX,DATAMOV DS,AXMOVSI,0050H;被加数指针;MOVDI,0052H;加数指针MOVBX,0054H;和的指针MOVAX,SI;取被加数低8位ADDAX,DI;低位相加MOVBX,AX;保存运算结果INT 20H;结束,3.1 汇编语言程序设计,例、编写计算f=(V-(X*Y+Z-500)/X的程序。X、Y、Z、V均为有符号16 位二进制数。,DATASEGMENTX DW 0100HY DW 01ABHZ DW-2100HV DW 6200HF DW?,?DATAENDS,CODESEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOVDS,AXMOVAX,XIMULY;DX:AX=X*YADDAX,ZADCDX,0;DX:AX=X*Y+ZSUBAX,500HSBBDX,0;DX:AX=()此处注意进位和借位的处理方法。MOV BX,AXMOV CX,DX;保存中间结果MOVAX,VCWD;DX:AX=VSUBAX,BXSBBDX,CX;DX:AX=(V-()IDIVX,MOVAH,4CHINT21HCODEENDSEND START,MOVF,AX;保存商MOVF+2,DX;保存余数,3.1 汇编语言程序设计,分支结构程序,分支程序是利用条件转移指令,使程序执行到某一指令后,根据运算状态标志条件是否满足,来改变程序执行的次序。分支程序的结构如图所示。,3.1 汇编语言程序设计,分支结构程序,MOVAL,XXCMPAL,0JGEBIGRMOVAL,0FFH;x0HLTEQUL:MOVYY,AL;X=0HLT,3.1 汇编语言程序设计,分支结构程序,例2、求AX和BX中两无符号数之差的绝对值,结果放在内存200H单元中。,方法1用比较指令完成MOVAX,300HMOVBX,302HCMPAX,BXJAAASUBBX,AXMOV200H,BXINT20HAA:SUBAX,BXMOV200H,AXINT20H,分析:AX和BX的数未知。两数相减求绝对值,应先解决哪一个值稍大些,然后再用大数减小数的方法,才可求得绝对值。,3.1 汇编语言程序设计,分支结构程序,例2、求AX和BX中两无符号数之差的绝对值,结果放在内存200H单元中。,方法2优化上面的程序MOVAX,300HMOVBX,302HCMPAX,BXJAAAXCHGAX,BXAA:SUBAX,BXMOV200H,AXINT20H,方法3用新的算法完成MOVAX,300HMOVBX,302SUBAX,BXJAAANEGAXAA:MOV200H,AXINT20H,DEBUG,不同的算法程序的质量不相同,好的数学模型往往是最好的算法,3.1 汇编语言程序设计,分支结构程序,例3、利用跳转表实现多重分支。跳转表:内存中连续存放一系列的跳转地址、跳转指令组成一分支表。,DATA SEGMENTBASE DW SBRO,SBR1,SBR2,SBR3DW SBR4,SBR5,SBR6,SBR7BN DB 3;工序DATA ENDS,某工厂有8种产品的加工程序R0到R7分别存放在以SBR0,SBR1,SBR7为首地址的内存区域中,这8个首地址的偏移量连续存放在以BASE为首地址的跳转表内,如图所示。,表地址=表基地址+偏移量。表基地址即为跳转表的首地址,偏移量即对应的程序人口地址在表中的地址与表基地址的距离。,3.1 汇编语言程序设计,分支结构程序,MAIN PROC FARBEGIN:PUSH DSMOV AX,0PUSH AXMOV AX,DATAMOV DS,AX MOV AL,BNMOV AH,0ADD AL,ALMOV BX,OFFSET BASEADD BX,AXMOV AX,BX JMP AXNEXT:RETMAINENDP,SBRO:JMPNEXTSBR7:JMPNEXTNEXT:COSEG ENDSEND BEGIN,COSEG SEGMENT ASSUME CS:COSEG,DS:DATA,DATA SEGMENTBASE DW SBRO,SBR1,SBR2,SBR3DW SBR4,SBR5,SBR6,SBR7BN DB 3;工序DATA ENDS,3.1 汇编语言程序设计,返回DOS方法小结:1、MOVDX,DATAMOVDS,DXMOVAH,4CHINT21H,3、扩展名为COM的文件INT20H,2、MAIN PROC PUSHDSMOVAX,0PUSHAXRET MAINENDP,

    注意事项

    本文(汇编语言程序设计(顺序分支).ppt)为本站会员(牧羊曲112)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

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




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开