第五章 80C51单片机地程序设计.ppt
文本预览下载声明
第五章 80C51单片机的程序设计 5.1 概述 一、计算机语言 程序是计算机为完成某一工作而执行的若干指令的有序集合。 这一指令序列称为程序。为计算机准备这一指令序列的过程称为程序设计。程序设计所用的语言大致分为三种: 机器语言、汇编语言、高级语言 机器语言:所有的指令、数字、符号都是用二进制代码表示,能为机器直接识别,简称机器语言。 汇编语言:在程序设计自动化的第一阶段,用英文字符来代替机器语言,这些英文字符称为助记符。用这种助记符表示的指令系统的语言称为汇编语言或符号语言。 高级语言:语句指令近似于人们的日常用语语言,格式参照数学语言而设计的语言,其特点是直观、易学、易懂,且通用性强,易于移植,但不能被计算机直接识别和执行。 二、汇编语言 1.汇编语言的语句的种类和格式 汇编语言的语句有三种基本类型:指令语句、伪指令语句和宏指令语句。 指令语句如:MOV A,R0 宏指令语句:用以代替汇编语言源程序中重复使用的程序段的一种语句,由汇编程序在汇编时产生相应的目标代码。 伪操作指令:汇编程序对汇编语言编写的源程序进行汇编时,还要提供一些汇编用的控制指令,如要指定程序或数据存放的起始位置,定义常数表等,这些指令汇编时不产生目标代码,不影响程序的执行,所以称为伪指令。 如: 1.ORG(Origin) 定义程序的起始地址 org xxxxh ORG 0000H LJMP START ORG 0100H START: MOV A, #30H …… END 2. END 程序结束标志,用以通知汇编程序,该程序段结束。 3.EQU(Equate) 等值伪指令(变量标号赋值) 标号 EQU 表达式 其含义是标号等值于表达式,这里的标号和表达式是不可少的。如 TTY EQU 1008H 又如: LOOP EQU TTY TTY已经赋值,那么LOOP=TTY 他们可以互换 用EQU给一个标号赋值后,在整个程序中该标号的值固定不变,若需改变需用伪指令DL重新定义。 4.定义标号值伪指令DL DL和EQU 虽都是将表达式值赋予标号,但两者有区别,就是DL可在同一源程序中给同一标号赋予不同的值,而EQU不能。 5. 数据说明伪指令 数据说明伪指令的作用是把数据存入指定的存储单元。 ①定义字节伪指令DB 标号 DB 表达式或表达式表 其含义是将表达式或表达式表表示的数据或数据串存入从标号开始的连续存储单元中 如: ORG 5000H DATA1: DB 73,04,53,45,00 DATA2: DB 02,34,26,58,11,44 ②定义字伪指令DW 标号 DW 表达式或表达式表 如 ORG 5000H DATA1: DW 7304, 0C53,45CB,00AB DATA2: DW 0B02,340A,26CC,5D44 MATH EQU 03H ORG 0000H MAIN: CLR C LOOP: MOV A , @R0 MOV R1, #MATH ;相当于 MOV R1, #03H NEXT: SJMP $ ORG 1100H DB 01H , 04H, 09H , 05H ; DW 1000H,3456H END 6. DS:定义存储区 从指定的地址单元开始,保留一定数量存储单元。 ORG 1000H DS 07H 7.BIT:位定义 确定字符名为确定的位地址值。 A1 BIT 30H 汇编语言的格式 标号: 操作码 操作数 ;注释 START: MOV A,30H ;A←(30H) ORG 0000H
显示全部