- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
— PAGE \* Arabic 1 —
汇编语言实验四分支和循环程序设计实验
实验四分支和循环程序设计实验(设计性实验) 一、实验要求和目的 1.熟悉汇编语言程序设计结构; 2.熟悉汇编语言分支程序基本指令的使用方法; 3.掌握利用汇编语言实现单分支、双分支、多分支的程序设计方法; 4.了解汇编语言循环程序设计的基本流程; 5.熟悉汇编语言循环基本指令的使用方法; 6.掌握利用汇编语言的循环指令完成循环程序设计方法。。 二、软硬件环境 1、硬件环境:计算机系统 windows; 2、软件环境:装有MASM、DEBUG、LINK、等应用程序。 三、实验涉及的主要知识 在实际应用中,经常根据一些条件来选择一条分支执行。汇编语言的条件判断主要是通过状态寄存器中的状态位、无符号数相减或有符号相减而导致的结果来进行。 1.无条件转移指令JMP 无条件转移指令JMP 是使程序无条件转移至目标处,又分为段内转移、段间转移。2.条件转移指令JXX 条件转移指令可分为三大类: 1).简单条件转移指令指令。根据单个标志位的状态判断转移条件。 标志位指令转移条件意义 JC CF=1 有进位/借位 CF JNC CF=0 无进位/借位 JE/JZ ZF=1 相等/等于0 ZF JNE/JNZ ZF=0 不相等/不等于0 JS SF=1 是负数 SF JNS SF=0 是正数 JO OF=1 有溢出 OF JNO OF=0 无溢出 JP/JPE PF=1 有偶数个1 PF JNP/JPO PF=0 有奇数个1 2).无符号数条件转移指令。 假设在条件转移指令前使用比较指令,比较两个无符号数A,B,指令进行的的操作是 A-B,其转移指令如下: 指令转移条件意义 JA/JNBE CF=0 AND ZF=0 AB JAE/JNB CF=0 OR ZF=1 A=B JB/JNAE CF=1 AND ZF=0 AB JGE/JNL SF=OF OR ZF=1 A=B JL/JNGE SF OF AND ZF=0 A(其ASCII 码为0DH),则结束程序,若为其它字符则显示显示“R”。 3、(大家再次编成实现实验一的题目,看是否可以优化程序?)分类统计字数组data 中正 数、负数和零的个数,并分别存入内存字变量Positive、Negative 和Zero 中,数组元素个数保存在其第一个字中。使用Debug 查看Positive、Negative 和Zero 三个变量的数据。 4、编写程序,在字符串变量STRING 中存有一个以$为结尾的ASCII 码字符串,要求计算字符串的长度,并把它存入LENGTH 单元中。(要求用条件控制循环方法,并且字符串分数据类型是字节和字两种情况) 注意:涉及到初始数据的,同学们自行给出多组数据,反复加以验证各题程序。 五、实验要求与提示 1、实验要求 (1)画出各程序流程图; (2)列出程序清单,加上适量解释; (3)回答思考问题; (4)记录实验结果; (5)完成实验报告(实验材料上的内容简写,自己的工作要详尽)。 六、程序流程图 七、实验结果 (1) aa db 3 bb db 6 cc db 3 (2)输入u (3)num dw 1,2,3,4,0,0,-1,-2,-3,-4(4)string db abcdefg$ 注: 第一行:0001表示有实根 第二行:输入u,输出c 第四五六行:正,零,负分别为4,2,4个第七行:输出8,即一共8个字符 八、程序代码 data segment aa db 3 bb db 36 cc db 3 temp dw 0 tempin dw 0 num dw 1,2,3,4,0,0,-1,-2,-3,-4 positive dw 0 negative dw 0 zero dw 0
原创力文档


文档评论(0)