飞思卡尔汇编源程序的格式
发表:2023-08-29 12:00:55 阅读:97

飞思卡尔汇编源程序的格式:每条语句包括以下4部分:标号、操作码、操作数、注释、例如:LOOP:STA$81;将累加器A中的内容存入$81单元中,在一条完整的语句中,操作码说明这条语句的功能。操作数可以是地址或数据,也可以空缺.例如隐含寻址指令。为了使程序便于编写和阅读,可以给一条语句指定一个标号和注释。

1.标号:标号是以英文字母开始的1~15个字符组成的字母或数字串,以冒号“:”结束,但“:”不是必须的,可以省略,只要使标号与操作码之间有空格隔开就行。为了增强程序阅读性,标号通常用代表某种含义的英文缩写来表示,并且常用于表示转移语句的转向地址、程序的起始地址或数据区域地址等。

例如:HERE:BRA HERE与HERE BRA HERE是等价的。

注意:一个标号在标号部分只能出现一次,否则就会发生重复定义的错误。

2.操作码:这是一条汇编语言指令不可缺少的部分,它位于标号之后,两者之间至少用一个空格隔开。在这部分,不区分字母的大小写,如LDA、Lda、lda均为相同的助记符。

注意:指令码与机器指令一一对应。若指令码包括与指令有关的寄存器名,则寄存器名不应与指令码用空格分开。

例如“CLRA”与“CLR A”是两条不同的指令,前者表示将累加器A清零,而后者意味着将由符号A定义的存储器单元清零。

3.操作数:不同的指令对操作数的要求也不一样,它也可能没有。若有,则操作数之间应用逗号分开。操作数部分的内容是复杂多样的,它可以包括下列形式,见表5—2。表达式由符号、常数、运算符和括号组成。表达式的运算结果作为操作数。S08允许使用的运算符及其含义见表5—3。

注意:“*”符号也用来表示当前行的地址值。

例如:BRCLR 7,SCISl,*;如果SCISl第7位是0,则在本句循环,否则顺序执行(在串行通信中常用)

4.汪释:此字段并非汇编语言的功能部分,主要是用于增强程序的可读性。对于初学者,建议多用注释。

 

更多精彩请您关注:

飞思卡尔MOV源地址,目的地址

飞思卡尔S08汇编语言程序设计

飞思卡尔编程步骤

freescale代理