04.汇编语言程序设计2015.ppt
文本预览下载声明
4.1 程序设计语言概述 4.1.1 汇编语言的优点 4.1.2 汇编语言程序设计的过程 4.1.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,5,6 * 第四章 汇编语言程序设计 4.1 程序设计语言概述 4.2 汇编语言程序设计的特点及伪指令 4.3 单片机汇编语言程序设计 4.3.1 顺序结构程序设计 4.3.2 分支程序设计 4.3.3 散转程序设计 4.3.5 查表程序设计 4.3.6 子程序设计 4.4 单片机汇编语言程序设计举例 4.2 汇编语言程序设计的特点及伪指令 4.2.1 汇编语言程序的特点 [标号:] 操作码 [操作数1,操作数2,操作数3] [;注释] 方括符[ ]表示可选项。 标号代表指令所在地址,1-8个字母/数字,字母开头,“:”结尾。 操作码就是指令功能助记符,指令实体。 操作数是指令操作的对象。分为目的操作数和源操作数。 注释是对该指令的解释和说明,是指令的非执行部分,可省略,前面必须加“;”。 伪指令 伪指令是控制汇编过程的一些命令,是程序员通知汇编程序在进行汇编时的一些指示。没有对应的机器码,不产生目标代码程序,不影响程序的执行。 1).伪指令主要用来指定程序或数据的起始位置,给出一些连续存放数据的地址或为中间运算结果保留一部分存储空间以及表示源程序结束等等。 2).伪指令还可用来对符号﹑标号赋值。 不同版本汇编语言,伪指令可能有所不同,但基本用法是相似的。 1) 设置目标程序起始地址伪指令ORG 格式: [标号:] ORG 地址 功能:规定其后面的目标程序或数据块的起始地址。 伪指令ORG放在一段源程序(主程序、子程序)或数据块的前面,说明紧跟在其后的程序段或数据块的起始地址就是ORG后面给出的地址。 例如: ORG 1000H START:MOV A, #34H … 2) 结束汇编伪指令END 格式: [标号:] END 功能: END是汇编语言源程序的结束标志,用于终止源程序的汇编工作。 在END以后所写的指令,汇编程序都不予处理。 一个源程序只能有一个END命令。 3) 定义字节伪指令DB 格式: [标号:] DB 字节常数或字符 功能:从指定地址单元开始存放若干个字节的数据或字符。 字符若用引号括起来则表示ASCII码。 例如: ORG 2000H TAB1: DB 30H,8AH,7FH,73 DB 5,A, ‘YES 4) 定义字伪指令DW 格式: [标号:] DW 16位数据表 功能: DW伪指令告诉
显示全部