
上QQ阅读APP看书,第一时间看更新
4.2 指令格式及分类
4.2.1 汇编语言的概念及格式
用助记符来描述机器指令的语言称为符号语言或汇编语言。显然,汇编语言是一种面向机器的程序设计语言。一般格式如下:

其中,带有中括号的内容是可以省略的内容或者指令格式中不需要的内容。
标号是表示该指令所在的符号地址,根据程序设计的需要而设置。子程序的名称也使用子程序的第一条语句的标号表示。标号一般是由字母开头的字符串组成,例如:

操作码助记符表示指令的功能,操作数表示指令操作的对象。根据指令的语法要求,一条指令中,可能有0~3个操作数。例如:

注释字段对汇编语句来讲可有可无,是为方便用户阅读程序所加注的中文或英文说明。
4.2.2 指令代码的存储格式
指令代码是指令的二进制表示方法,是指令在存储器中存放的形式。汇编语言只有经“汇编”程序翻译成机器语言,才能被执行。在微型计算机中,为了节省内存单元,往往采用变字长存储机器指令的方式。按8位二进制码为一个字节,8051单片机指令系统中的指令字长有单字节、双字节、三字节3种,在存储器中分别占有1~3个单元。其格式如下:
单字节指令:

例:RET;机器代码:22H
双字节指令:

例:MOV A,#0FH;机器代码:74H 0FH
三字节指令:

例:MOV 74H,#0BH;机器代码:75H 74H 0BH
对于指令的机器代码,读者无须记忆,汇编程序会根据指令的助记符自动生成。
指令字节数越多,所占用内存单元越多。但是指令执行时间长短并不和所占用字节数的多少成比例。例如乘法为单字节指令,但是所需的指令执行时间却最长。
4.2.3 指令中的符号约定
在描述8051单片机指令系统时,经常使用各种缩写符号,各种符号及含义见表4-2。
表4-2 8051单片机指令中的常用符号及含义

(续)
