河北工业大学 单片机 第三次实验内容

2025-08-08

3.3汇编语言程序设计实验

实验六 分支程序设计

一、 实验目的

1. 进一步熟悉MCS-51指令系统,了解汇编语言程序设计的基本结构。 2. 掌握分支结构程序设计的方法。

3. 学会用条件转移指令、CJNE、JMP及其配合使用来编写二分支、三分支和多分支程序。 二、 实验内容

1. 二分支的条件转移程序

设变量X存放于R0,函数值Y存放在R1,其中X、Y均为二进制数。试按照下式的要求给Y赋值:

1 X>0

Y= 0 X=0 -1 X<0

程序框图如图3-5所示:

:

三、实验步骤

1. 根据实验内容和参考程序流程图,编出相应的分支结构程序。 2. 输入程序,汇编成功; 3. 用F4(执行到光标处)、F7(跟踪执行)、F8(单步执行)或断点运行等方式调试程序; 4. 观察程序的流程,记录运行结果。 四、思考题

1.CJNE指令对CY 有影响吗?用CJNE 和JC/JNC指令配合应注意什么?

在用JMP 指令前,若变址?255怎么办?

答:1)CJNE指令对CY 有影响。CJNE (目的字节),(源字节),rel 功能 :目的字节与源字节比较,相等则继续执行,不相等则转移,同时,

若目的字节>=源字节,(C)=0 若目的字节<源字节,(C)=1

2)选取好正确的direct值以便确定Cy的值

3)提前设好变址,使变址<255 2.用什么指令可以实现多分支之间的隔离?

答:控制、条件转移指令,包括JMP、CJNE、DJNZ、JC、JB等,可以转移到$或其他。

五、实验报告要求

写出题目运行结果。 六、参考程序清单

1、二分支的条件转移程序 1) 用二分支结构程序实现:

ORG 0000H

MOV A, R0

JZ LOAD ;等于零转LOAD JNB ACC.7,GO ;大于零转GO MOV A, #0FFH SJMP LOAD GO: MOV A, #01H LOAD: MOV R1, A SJMP $ END

1)赋值(R0)=00H ORG 0000H MOV A, R0 JZ LOAD (pc) (psw) (A) (P) (R1) (R0) (DPTR) (SP) 备注 C:0X0000 C:0X0001 0X00 0X00 0 0X00 0X00 0X0000 0X07 等于零转LOAD JNB ACC.7,GO MOV A, #0FFH SJMP LOAD GO: MOV A, #01H LOAD: MOV R1, A SJMP $ END C:0X0003 C:0X0006 C:0X0008 C:0X000A C:0X000C C:0X000D 0X00 运行结果:(R1)=0X00


河北工业大学 单片机 第三次实验内容.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:蛟河市卫生局政务公开目录 - 图文

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219