- 0
- 0
- 约2.01万字
- 约 86页
- 2017-10-08 发布于湖北
- 举报
第4章 89C51汇编语言程序的设计与调试
汇编语言是面向机器硬件的语言,要求程序设计者对89C51单片
机具有很好的“软、硬结合”的功底。
介绍程序设计的基本知识及如何使用汇编语言来进行基本的程
序设计。
4.1 汇编语言程序设计概述
程序是若干指令的有序集合,单片机的运行就是执行这一指令
序列的过程,编写这一指令序列的过程称为程序设计。
4.1.1 机器语言、汇编语言和高级语言
用于程序设计的语言基本上分为3种:机器语言、汇编语言和高
级语言。
1.机器语言
二进制代码表示的指令、数字和符号简称为机器语言不易
懂,难记忆,易出错。
2.汇编语言
英文助记符表示的指令称为符号语言或汇编语言
将汇编语言程序转换成为二进制代码表示的机器语言程序称
为汇编程序
经汇编程序“汇编(翻译)”得到的机器语言程序称为目标程
序,原来的汇编语言程序称为源程序。
汇编语言特点:
(1) 面向机器的语言要求程序设计员对89C51的硬件有相当深
入的了解。
(2) 助记符指令和机器指令一一对应,用汇编语言编写的程序
效率高,占用存储空间小,运行速度快,用汇编语言能编
写出最优化的程序。
(3) 能直接管理和控制硬件设备 (功能部件),它能处理中
断,也能直接访问存储器及I/O接口电路。
汇编语言和机器语言都脱离不开具体机器的硬件,均是面向“机
器”的语言,缺乏通用性。
3.高级语言
不受具体机器的限制,使用了许多数学公式和数学计算上的习惯
用语,非常擅长于科学计算。常用的如BASIC、FORTRAN以及C
语言等。
高级语言优点:通用性强,直观、易懂、易学,可读性好。
计算机不能直接识别和执行高级语言,需要将其 “翻译”成机器
语言才能识别和执行,进行“翻译”的专用程序称为编译程
序。
使用C语言(C51)、PL/M语言来进行89C51的应用程序设计。
对于程序的空间和时间要求很高的场合,汇编语言仍是必不可
缺的。
C语言和汇编语言混合编程
在很多需要直接控制硬件的应用场合,则更是非用汇编语言不
可
使用汇编语言编程,是单片机程序设计的基本功之一
4.1.2 汇编语言语句的种类和格式
两种基本类型:指令语句和伪指令语句
(1)指令语句
已在第3章介绍
每一条指令语句在汇编时都产生一个指令代码——机器代码
(2)伪指令语句
是为汇编服务的。在汇编时没有机器代码与之对应。
51系单片机的汇编语言的四分段格式如下:
标号字段: 操作码字段 操作数字段; 注释字段
规则:
(1)标号字段和操作字码段之间要有冒号“:”相隔;
(2)操作码字段和操作数字段间的分界符是空格;
(3)双操作数之间用逗号相隔;
(4)操作数字段和注释字段之间的分界符用分号“;”相隔。
操作码字段为必选项,其余各段为任选项。
例4-1 下面是一段汇编语言程序的四分段书写格式
标号字段 操作码字段 操作数字段 注释字段
START: MOV A,#00H ;0→A
MOV R1,#10 ;10→R1
MOV R2, ;3→R2
LOOP: ADD A,R2 ;(A)+(R2)→A
DJNZ R1,LOOP;R1内容减1不为零,则循环
NOP
HERE: SJMP HERE
基本语法规则:
1.标号字段
是语句所在地址的标志符号
(1)标号后边必须跟以冒号“:”
(2)由1-8个ASCII字符组成,首字符必须是字母
(3)同一标号在一个程序中只能定义一次
(4)不能使用汇编语言已经定义的符号作为标号
2.操作码字段
是汇编语言指令中唯一不能空缺的部分。汇编程序就是根据这
一字段来生成机器代码的。
3.操作数字段
通常有单操作数、双操作数和无操作数三种情况。如果是双操
作数,则操作数之间,要以逗号隔开。
(1)十六进制、二进制
您可能关注的文档
最近下载
- 初中数学八年级下册 练习题(含答案).pdf VIP
- 2023浪潮信创服务器CS5260H2技术白皮书-v1.0.pdf VIP
- 《甜甜的西瓜》幼儿园小班美术PPT课件.pptx VIP
- 雅思词汇汇编9400(默).docx VIP
- 2025年益阳医学高等专科学校单招笔试综合素质试题库含答案解析(5套试卷).docx VIP
- 2026年春季1530安全教育记录表.pdf VIP
- 水处理工程课后习题及答案(中科院生态环境与研究中心环境工程考博)2025.pdf VIP
- 党支部书记2025年度组织生活会个人对照检查发言材料(五个方面).docx VIP
- 运动训练科学监控课件.ppt VIP
- 7 输变电工程建设施工安全风险管理规程.doc VIP
原创力文档

文档评论(0)