- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
学 生 实 验 报 告
学 院: 软件与通信工程学院课程名称: 微机原理与接口技术专业班级: 电信 141 班
姓 名:
学 号:
学生实验报告(1)
学生姓名
学生姓名
学号
同组人:无
实验项目
实验 3
■必修 □选修
□演示性实验 □验证性实验 ■操作性实验 □综合性实验
实验地点
实验仪器台号
指导教师
实验日期及节次
一、实验综述
1、实验目的及要求实验目的
利用测试与转移指令实现分支。
利用比较与转移指令实现分支。
实验要求
利用测试与转移指令实现分支。
程序设计方法:在需要分支的地方用逻辑测试指令TEST 进行分支条件的测试判断, 再利用各种条件转移指令实现程序分支。
利用比较与转移指令实现分支。
程序设计方法:在需要分支的地方用两数的比较指令 CMP,或串比较指令 CMPS 等进行分支条件的比较判断,再利用转移指令(如 JNZ、JNC、JA、JB 等)实现程序的分支。
实验内容:
1.在 BLOCK 开始的内存单元中有若干以字节为单位的正、负数,自编程序,试统计其中≧0 的个数存放于 M_DATA 单元中,0 的个数存放于 P_DATA 单元中。2.在 BLOCK 开始的内存单元中有若干以字节为单位的奇、偶数,自编程序,试统计其中偶数的个数存放于 M_DATA 单元中,奇数的个数存放于 P_DATA 单元中。
2、实验仪器、设备或软件
电脑,Masm for windows 集成实验环境共享版 2015,DOSBOX
二、实验过程(实验步骤、记录、数据、分析)
打开电脑,打开 Masm for windows 集成实验环境共享版 2015、新建一个空白的汇编程序,开始编写程序
实验 1:
DATA SEGMENT ORG 1000H
BLOCK DB 37,-90,-32,60,-7,-120 COUNT EQU $-BLOCK
ORG 2000H
P_DATA DB COUNT DUP (0) ORG 3000H
M_DATA DB COUNT DUP (0) DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
MOV AX,DATA MOV DS,AX
LEA SI,BLOCK;待判断的数据
LEA DI,P_DATA;存放0 的数据区域LEA BX,M_DATA;存放0 的数据区域MOV CX,COUNT
NEXT:
MOV AL,[SI]
CMP AL,00H
JGE L1;ZF=1,为0 的数转 L1 MOV [BX],AL ;ZF=0,存0 的数INC BX
JMP LOOP1
L1: MOV [DI],AL;存0 的数到 M_DATA INC DI
LOOP1: INC SI;判断下一个数据
LOOP NEXT ;CS-1=CS≠0继续处理MOV AH,4CH
INT 21H CODE ENDS
END START
实验 2:
DATA SEGMENT ORG 1000H
BLOCK DB 3,7,2,6,17,0 COUNT EQU $-BLOCK ORG 2000H
P_DATA DB COUNT DUP (0) ORG 3000H
M_DATA DB COUNT DUP (0) DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA START:
MOV AX,DATA MOV DS,AX
LEA SI,BLOCK;待判断的数据
LEA DI,M_DATA;存放偶数LEA BX,P_DATA;存放奇数MOV CX,COUNT
NEXT:
MOV AL,[SI]
TEST AL,01H;测试末位数据是否为 0 JZ L1;等于 0 为偶数转 L1
MOV [BX],AL;不等于 0 为奇数存 p_data 区域INC BX
JMP LOOP1
L1: MOV [DI],AL;等于 0 为偶数存 m_data 区域INC DI
LOOP1: INC SI;判断下一个数据LOOP NEXT
MOV AH,4CH INT 21H
CODE ENDS
END START
三.结论1.实验结果实验 1:
实验 2:
2、分析讨论
利用比较与转移指令实现分支,分别存放至数据区域,调试过程先 u 反汇编,使用g 指令进行运行到终止地址处,使用 d:ds=地址地址 地址长度显示结果,且实验结果正确。
思考题
1、如果将比较指令改为测试指令(加下划线处),程序需做哪些改动?
2、将上述程序修改实现单元中数据奇数、偶数个数的统计。 改动部分如下划线处所示:
思考题 1:
实验 1
DATA SEGMENT ORG 1000H
BLOCK DB 37,-90,-32,60,-7,-12=0 COUNT
您可能关注的文档
最近下载
- 浙江省台州市台州六校2023-2024学年高一下学期4月期中英语试题含答案.docx VIP
- 医疗器械研发各阶段所需DMR及DHF文件.xlsx VIP
- 抖音海外版tiktok的全球化运营策略.pptx
- 在线网课《公司并购与重组》课后单元测试答案.docx
- 海外发展研究所-国家开发银行:为净零世界建立市场.docx
- 中班数学绘本游戏《首先有一个苹果》课件.ppt VIP
- 2024全国罕见病诊疗协作网成员医院名单 .pdf
- 浙江省台州市2023-2024学年高一下学期6月期末英语试题含答案.pdf VIP
- 《农业经理人》教学大纲.docx VIP
- 基桩声波透射法检测理论考试题库(含答案).docx
文档评论(0)