- 1、本文档共54页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
椭圆框或桶形框:表示程序的开始或结束。矩形框:表示要进行的工作。菱形框:表示要判断的事情,菱形框内的表达式表示要判断的内容。圆圈:表示连接点指向线:表示程序的流向第31页,共54页,星期日,2025年,2月5日§4.4汇编语言程序的基本结构一、顺序程序二、分支程序三、循环程序第32页,共54页,星期日,2025年,2月5日一、顺序程序顺序程序是最简单的程序结构,即顺序结构。程序按顺序一条一条地执行指令。第33页,共54页,星期日,2025年,2月5日例:请编写能把20H单元内两个BCD数变成相应的ASCII码并放在22H(高位)和21H(低位)分析:根据ACSII字符表,0~9的BCD数和ASCII码相差30H。所以,只要将20H中两个BCD数拆开,分别加30HORG00HMOVA,20HANLA,#0FHADDA,#30HMOV21H,AMOVA,20HSWAPAANLA,#0FHADDA,#30HMOV22H,ASJMP$END开始(20H)→A(A)∧#0F→A(A)+#30H→A(A)→21H(20H)→ASWAPA(A)∧#0F→A(A)+30H→A(A)→22H↓(20H)→A(A)∧#0F→A↓↓↓↓第34页,共54页,星期日,2025年,2月5日例2:16位数和。设16位无符号二进制数一个存在30H31H中,一个存在32H和33H中(均是低位在前)中,求这两个数的和,结果存于R0R1(低位在前)。这两个16位数相加结果不会超出16位。开始(20H)→A(A)∧#0F→A↓(30H)→A(A)+(32H)→R0↓↓↓(31H)→A(A)+(33H)+Cy→R1结束ORG00HMOVA,30HADDA,32HMOVR0,AMOVA,31HADDCA,33HMOVR1,ASJMP$END第35页,共54页,星期日,2025年,2月5日二、分支程序程序分支是通过条件转移指令实现的,即根据条件对程序的执行进行判断、满足条件则进行程序转移,不满足条件就顺序执行程序。分支程序又分为单分支和多分支结构。多分支程序是首先把分支程序按序号排列,然后按序号值进行转移。第36页,共54页,星期日,2025年,2月5日在MCS-51指令系统中,通过条件判断实现单分支程序转移的指令有:JZ、JNZ、CJNE、DJNZ等。此外还有以位状态作为条件进行程序分支的指令,如JC、JNC、JB、JNB、JBC等。使用这些指令可以完成0、1、正、负,以及相等、不相等作为各种条件判断依据的程序转移。第37页,共54页,星期日,2025年,2月5日 例:片内RAM31H和32H两个单元中存有两个无符号数,将两个数中的小者存入30H单元。开始(31H)→AA=(32H)?YCy=0?NNYA→30H(32H)→A第38页,共54页,星期日,2025年,2月5日第1页,共54页,星期日,2025年,2月5日4.1.1汇编语言的构成用MCS-51汇编语言编写的源程序行(一条语句)包括四个部分,也叫四个字段:〔标号:〕〔操作码〕〔操作数〕;〔注释〕每个字段之间要用分隔符分隔,而每个字段内部不能使用分隔符。可以用作分隔符的符号:空格“”、冒号“:”、、逗号“,”、分号“;”等。例:LOOP:MOVA,#00H;立即数00H→A第2页,共54页,星期日,2025年,2月5日标号标号是用户定义的符号地址。一条指令的标号是该条指令的符号名字,标号的值是汇编这条指令时指令的地址。标号由以英文字母开始的1~8个字母或数字组成,以冒号“:”结尾。标号可以由赋值伪指令赋值,如果没有赋值,汇编程序把存放该指令目标码第一字节的存储单元的地址赋给该标号,所以,标号又叫指令标号。第3页,共54页,星期日,2025年,2月5日操作码操作码是必不可少的。它用一组字母符号表示指令的操作码。在MCS-51中,由MCS-51的指令助记符组成。第4页,共54页,星期日,2025年,2月5日操作数汇编语言指令可能要求或不要求操作数,所以这一字段可能有也可能没有。若有两个操作数,操作数之间用逗号“,”分开。操作数包括的内容有:(1)工作寄存器:由PSW.3和PSW.4规定的当前工作寄存器区中的R0~R7。(2)特殊功能寄存器:21个SFR的名字。(3)标号名:赋值标号—由汇编指令EQU等赋值的标号;指令标号—指令标号指示的指令的第一字节地址是该标号
文档评论(0)