尽管单片机有许多特点,但仍然属于计算机的范围。这种特殊的语言就是程序设计语言,也就是由一系列语句组成的程序。程序设计语言从原理上可分为机器语言、汇编语言和高级语言三种类型,单片机也不例外。由于汇编语言指令具有直接对应机器语言指令的特点,因而生成的机器代码效率高,执行速度快,至今在单片机程序设计中仍被采用。在众多高级语言中,只有C语言成了应用于单片机系统的高级语言。......
2023-11-07
1.汇编语言
计算机程序设计语言有高级语言、汇编语言、机器语言。对单片机来说,可以用高级语言编程,也可用汇编语言编程,两种语言各有特点。
助记符指令与机器指令是一一对应的,它是由生产厂商设定的一种专用指令,每一系列的单片机都有自己的专用指令集。像8051具有MCS51系列单片机的指令集。但这种用助记符指令编辑的程序并不能为单片机所识别,必须通过软件将它变换为单片机能识别的机器代码(也就是机器语言),才能输入到单片机芯片的Flash ROM内被执行。这个过程就称为汇编。执行汇编的软件称为汇编软件。用助记符指令组成的计算机语言就称为汇编语言。
2.汇编语言的特点
汇编语言可灵活地设置和分配片内RAM地址及程序存储器地址,且占用存储空间小、执行速度快,但要求编程人员要对计算机硬件有较好的了解。程序移植比较困难。
由于单片机本身资源有限无法加入汇编软件,因而对助记符指令组成的源程序,要用PC进行编辑和汇编,产生机器代码。由于是在异种机(PC)上进行汇编,所以称为交叉汇编。
3.汇编语言语句格式(www.chuimin.cn)
MCS51系列单片机的汇编语言语句格式如下:
<标号>:<操作码><空格><操作数1>,<操作数2>,<操作数3>;文字注释
其中,标号是可选项,由编程者自行决定。标号后面要加冒号。操作数的数量由采用的指令决定,最多3个,中间用逗号“,”分隔。分号;后面是文字注释。若1行不够,可另起1行,但前面仍要加分号。
4.格式说明
“标号”是转移地址的标识符号。标号由1~8个ASCII码组成,但第1个必须是文字(英语字母),其余可以是文字、数字或其他特定字符,不能使用本汇编语言已定义了的符号作为标号。一个标号在程序中只能定义一次,不能重复定义。标号的文字一般应以英文缩略字符组成以便于阅读,最好不用拼音字符。这样有利于以后与C语言的连接。例如,DELAY(延时),DISP(显示),NEXT(下一个),START(开始),MAIN(主程序),TAB(表格),BEGIN(起始),INIT(初始化),LOOP(循环)等。如果不够也可以加下注,如DELAY_1、DELAY_2等。下注最好不要用“-”,而用下划线“_”。
“注释”是对本语句的简短解释。好的注释可以帮助对程序的理解和阅读。在分号后面的部分不参加汇编。
有关零起点学习单片机多语言编程的文章
尽管单片机有许多特点,但仍然属于计算机的范围。这种特殊的语言就是程序设计语言,也就是由一系列语句组成的程序。程序设计语言从原理上可分为机器语言、汇编语言和高级语言三种类型,单片机也不例外。由于汇编语言指令具有直接对应机器语言指令的特点,因而生成的机器代码效率高,执行速度快,至今在单片机程序设计中仍被采用。在众多高级语言中,只有C语言成了应用于单片机系统的高级语言。......
2023-11-07
1)把I/O接口的P2口中的输入数据保存在累加器A,再将累加器A中保存的输入数据输出到I/O接口的P1口。从P1口验证P2口输入的数据源程序(一)实验机的小键盘上的+1键、-1键、高一位操作键、地址键和写入键一端分别接在P2口的P2.0、P2.1、P2.2、P2.3、P2.4上,另一端接地。每次复位后可以重新输入。安装在P1口的发光二极管亮的位与接在P2口按下的键相对应。程序点评:P2口输入的数据通过芯片内部RAM用户区某地址输出到P1口。......
2023-11-07
本款单片机的小键盘中的“+1”键、“-1”键、高一位操作键、地址键和写入键一端分别接在P2口的P2.0、P2.1、P2.2、P2.3、P2.4上,另一端接地。按下P2口的不同键时,P1口对应的灯亮。以便查询P2口位的状态。程序点评:程序中使用了P1口,灯的亮灭可以直观地检测光线传感器和驱动电动机的工作状况。......
2023-11-07
逐一依次循环闪烁:“逐一”表示某时刻仅能有一个发光二极管亮;“依次”表示I/O接口各位的发光二极管按顺序亮;“循环”表示I/O接口各位的灯逐一依次无固定次数的不停闪烁;“闪烁”表示I/O接口各位的发光二极管有亮有灭。方案说明:图2-1中深色的符号表示发光二极管亮,浅色的符号表示发光二极管不亮。3)程序设计(二)。程序点评:在关闭上一对发光二极管1s后,开启下一对,关闭与开启之间有1s的时间间隔。I/O接口位N=00~07。......
2023-11-07
单片机是将CPU+ROM+RAM+I/O集成在一块小小的芯片上,这种结构使用非常灵活,可以“嵌入”任何控制对象内,组成嵌入式系统。单片机中的片内程序存储器是一种可编程可擦除的只读存储器。通用计算机的CPU主要是进行高速数据处理。单片机体积很小,可以直接“嵌入”到机器的控制板上,实际上就是将计算机系统嵌入到机器内,组成所谓的“嵌入式系统”。......
2023-11-07
定时器/计数器是MCS51系列单片机芯片内的一个组件,简写为T/C。它有2个相同的定时器/计数器,称为定时器/计数器0和定时器/计数器1。实际上定时器/计数器是一个计数器,可以8位、13位或16位计数,对应的两组4个8位计数器。TCON定时控制位共4位。TR0=0,停止定时器/计数器工作;TR0=1,开启定时器/计数器工作。TMOD是专业寄存器,用于设定定时器/计数器0和定时器/计数器1的工作方式,只能用字节传送设置。......
2023-11-07
安装在单片机上的两个数码管从“00”开始累加1显示,到“99”后循环。需要讲解的指令重点是累加器A加1赋值指令“INC A”和十进制变换指令“DA A”。低位数码管逐段循环显示源程序实例程序运行效果:在完成了源文件建立、汇编、下载的步骤后,单片机自动运行该程序。......
2023-11-07
if-else条件分支语句是选择结构的一种形式,是最常用的语句之一。这意味着如果if后面的表达式成立(不为0),则执行if下面的语句,否则直接向下执行。......
2023-11-07
相关推荐