首页 理论教育零基础学单片机多语言编程

零基础学单片机多语言编程

【摘要】:对单片机来说,可以用高级语言编程,也可用汇编语言编程,两种语言各有特点。像8051具有MCS51系列单片机的指令集。用助记符指令组成的计算机语言就称为汇编语言。

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等。下注最好不要用“-”,而用下划线“_”。

“注释”是对本语句的简短解释。好的注释可以帮助对程序的理解和阅读。在分号后面的部分不参加汇编。