4汇编语言程序设计基础.ppt

  1. 1、本文档共36页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
3.4.1 程序设计语言概述 3.4.1.1 汇编语言的优点 3.4.1.2 汇编语言程序设计的过程 3.4.1.3 程序质量 3.4.2.2 伪指令 汇编语言源程序是由汇编语句组成的,一般情况下,汇 编语言语句可分为指令性语句和指示性语句。 指令性语句(即汇编指令) 指令性语句是进行汇编语言程序设计的可执行语句,每条指令都产生相应的机器语言的目标代码。源程序的主要功能是由指令性语句去完成的。 指示性语句(即伪指令) 【例1】 :设有16位二进制数存放在 R0,R1中(R0存放高位,R1存放低位),试编写实现16位二进制数的:“取反加1”操作的程序。 程序如下: ORG 1000H MOV A,R1 CPL A ADD A,#01H MOV R1,A MOV A,R0 CPL A ADDC A,#00H MOV R0,A END 【例2】 :设a存放在累加器A中,b存放在寄存器B中,要求按下式计算Y值,并将结果Y存于累加器A 中,试编写程序。 a-b (a≥0) Y = a+b (a 0) ORG 1000H BRMPNA:JB ACC.7,PLUS CLR C SUBB A,B SJMP BRDONE PLUS: ADD A,B BRDONE : SJMP BRDONE END 【例3】:51单片机晶振为6MHz,分析下列循环进行了多少次?下面程序运行共需要多长时间? MOV R7,#00H ; 1机器周期 RYCL:NOP ; 1机器周期 NOP ; 1机器周期 NOP ; 1机器周期 DJNZ R7,RYCL ; 2机器周期 RET ; 2机器周期 程序运行共需要机器周期=1+5*256+2=1283 1机器周期=12/6M=2us 1283*2us=2566us P87页习题 15,19 * 3.4 汇编语言程序设计基础 3.4.1 程序设计语言概述 3.4.2 汇编语言程序设计的特点及伪指令 3.4.3 单片机汇编语言程序设计 3.4.3.1 顺序结构程序设计 3.4.3.2 分支程序设计 3.4.3.3 散转程序设计 3.4.3.5 查表程序设计 3.4.3.6 子程序设计 3.4.4 单片机汇编语言程序设计举例 3.4.2 汇编语言程序设计的特点及伪指令 3.4.2.1 汇编语言程序的特点 [标号:] 操作码 [操作数1,操作数2,操作数3] [;注释] 方括符[ ]表示可选项。 标号代表指令所在地址,1-8个字母/数字,字母开头,“:”结尾。 操作码就是指令功能助记符,指令实体。 操作数是指令操作的对象。分为目的操作数和源操作数。 注释是对该指令的解释和说明,是指令的非执行部分,可省略,前面必须加“;”。 伪指令 伪指令是控制汇编过程的一些命令,是程序员通知汇编程序在进行汇编时的一些指示。没有对应的机器码,不产生目标代码程序,不影响程序的执行。 1).伪指令主要用来指定程序或数据的起始位置,给出一些连续存放数据的地址或为中间运算结果保留一部分存储空间以及表示源程序结束等等。 2).伪指令还可用来对符号﹑标号赋值。 不同版本汇编语言,伪指令可能有所不同,但基本用法是相似的。 1) 设置目标程序起始地址伪指令ORG 格式: [标号:] ORG 地址 功能:规定其后面的目标程序或数据块的起始地址。 伪指令ORG放在一段源程序(主程序、子程序)或数据块的前面,说明紧跟在其后的程序段或数据块的起始地址就是ORG后面给出的地址。 例如: ORG 1000H START:MOV A, #34H

文档评论(0)

kunpengchaoyue + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档