北京理工汇编语言实验四实验报告汇总Word格式文档下载.docx
- 文档编号:13205632
- 上传时间:2022-10-08
- 格式:DOCX
- 页数:16
- 大小:401.06KB
北京理工汇编语言实验四实验报告汇总Word格式文档下载.docx
《北京理工汇编语言实验四实验报告汇总Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《北京理工汇编语言实验四实验报告汇总Word格式文档下载.docx(16页珍藏版)》请在冰豆网上搜索。
一、实验要求和目的
1.熟悉汇编语言程序设计结构;
2.熟悉汇编语言分支程序基本指令的使用方法;
3.掌握利用汇编语言实现单分支、双分支、多分支的程序设计方法;
4.了解汇编语言循环程序设计的基本流程;
5.熟悉汇编语言循环基本指令的使用方法;
6.掌握利用汇编语言的循环指令完成循环程序设计方法。
二、软硬件环境
1、硬件环境:
计算机系统windows;
2、软件环境:
装有MASM、DEBUG、LINK、等应用程序。
三、实验涉及的主要知识
在实际应用中,经常根据一些条件来选择一条分支执行。
汇编语言的条件判断主要是通过状态寄存器中的状态位、无符号数相减或有符号相减而导致的结果来进行。
1.无条件转移指令JMP
无条件转移指令JMP是使程序无条件转移至目标处,又分为段内转移、段间转移。
2.条件转移指令JXX
条件转移指令可分为三大类:
标志位
指令
转移条件
意义
CF
JC
CF=1
有进位/借位
JNC
CF=0
无进位/借位
ZF
JE/JZ
ZF=1
相等/等于0
JNE/JNZ
ZF=0
不相等/不等于0
SF
JS
SF=1
是负数
JNS
SF=0
是正数
OF
JO
OF=1
有溢出
JNO
OF=0
无溢出
PF
JP/JPE
PF=1
有偶数个1
JNP/JP0
PF=0
有奇数个1
2).无符号数条件转移指令。
假设在条件转移指令前使用比较指令,比较两个无符号数A,B,指令进行的的操作是
A-B,其转移指令如下:
JA/JNBE
CF=0ANDZF=0
A>
B
JAE/JNB
CF=0ORZF=1
=B
JB/JNAE
CF=1ANDZF=0
A<
JBE/JNA
CF=1ORZF=1
3).带符号数条件转移指令。
JG/JNLE
SF=OFANDZF=0
JGE/JNL
SF=OFORZF=1
JL/JNGE
SFOFANDZF=0
JLE/JNG
SFOFORZF=1
在汇编程序设计中,循环结构的组成及其设计方法的知识要点有:
1、循环程序的基本结构通常由3部分组成
1)初始化部分
2)循环体
①循环工作部分:
完成程序功能的主要程序段,用于解决程序的实际任务;
②修改部分:
对循环参数进行修改,并为下一次循环做准备;
③循环控制部分:
判断循环结束条件是否满足。
通常判断循环结束方法:
用计数控制循环;
循环是否进行了预定的次数。
用条件控制循环。
循环终止条件是否满足。
3)结束处理处理部分
2、循环控制指令:
指令格式执行操作循环结束条件
LOOP标号CX=CX-1;
若CX=0,则循环CX=0
LOOPNZ/LOOPNE标号CX=CX-1;
若CX=0且ZF=0,则循环CX=0或ZF=0
LOOPZ/LOOPE标号CX=CX-1;
若CX=0且ZF=1,则循环CX=0或ZF=1
JCXZ标号仅测试(CX)=0?
若等于0,则转移到目标地址,否则就顺序执行
3、循环控制可以分为:
计数循环和条件循环。
四、实验内容与步骤
实验一:
1.实验要求:
判断方程AX2+BX+C=0是否有实根。
若有实根,则将字节变量tag置1,否则置0。
假设A、B、C均为字节变量,数据范围为-128~127。
2.实验流程图:
使用
N
Y
3.实验源程序代码:
4.实验结果:
1)无根的情况:
2)有根的情况:
实验二:
编写一个程序,判别键盘上输入的字符;
若是1-9字符,则显示之;
若为A-Z字符,显
示“C”;
若为a-z字符,显示“c”;
若是回车字符<
CR>
(其ASCII码为0DH),则结束程序,
若为其它字符则显示显示“R”。
输入2,输出2
输入E,输出C
输入d,输出c
输入空格,结束
输入=,输出R
实验三
1.实验要求:
(大家再次编成实现实验一的题目,看是否可以优化程序?
)分类统计字数组data中正
数、负数和零的个数,并分别存入内存字变量Positive、Negative和Zero中,数组元素个
数保存在其第一个字中。
使用Debug查看Positive、Negative和Zero三个变量的数据。
N
实验四
编写程序,在字符串变量STRING中存有一个以$为结尾的ASCII码字符串,要求计算
字符串的长度,并把它存入LENGTH单元中。
(要求用条件控制循环方法,并且字符串分数
据类型是字节和字两种情况)
字符型:
有5个(SI)
字型:
有12个(SI)
注意:
涉及到初始数据的,同学们自行给出多组数据,反复加以验证各题程序。
五.实验心得
这次实验主要学习了分支与循环控制,通过对各个题目的分析和理解,基本掌握了计数循环控制盒条件循环控制,以及对于不同情况下的分支描述。
同时为了提高输出效果,在各个程序的编程过程中,均给出了相应的提示信息,从而熟练掌握了字符串的输出。
在第一题中,同时练习了数字和ASCII码的相互转换。
深刻体会运行结果是以字符形式输出的。
这次实验,基本实现了简单程序的所有功能,包括了对数据的输入,信息的处理,以及对结果的输出,甚至用到了不定重复汇编,收获很大。
通过这次实验掌握了输入输出基本操作,学习了单个字符的输入输出与字符串的输入输出,学习使用了数字与ASCII码之间的转换,进一步熟悉了许多的条件转移指令如JZ,JNZ,JGE,JL等.通过实验巩固了基础知识,加深了理解,非常有助于今后的学习.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北京理工 汇编语言 实验 报告 汇总