ARM汇编中符号命名规则
3个回答
展开全部
特殊符号 ---- 对应指令 ---- 含义 ---- 示例
^ ---- MAP ---- 定义结构化内存表 ---- MAP 4096;内存表首地址为4096
# ---- FIELD ---- 定义内存表中的数据,结合MAP指令使用 ----
MAP 4096
STACKSVC FIELD 256;定义从4096开始的256字节为SVC的堆栈空间。
% ---- SPACE ---- 分配一块内存,并用“0”初始化 ---- DataStruc SPACE 280;分配280字节内存并初始化
[|] ---- IF ELSE ENDIF ---- 条件编译,有选择的确定需要编译的代码IF,ELSE,ENDIF,可以嵌套使用 ----
IF 逻辑表达式
指令或伪指令
ELSE
指令或伪指令
ENDIF
另外还有符号: $
如果在串变量前有一个$,则在汇编时编译器将用该串变量的数值取代该串变量,如:
GBLS STR1
GBLS STR2
STR1 SETS “pen.”
STR2 SETS “This is a $STR1"
编译后的结果是STR2的值为This is a pen.
如果$后是数字变量(与串变量区分),在汇编时编译器将该数字变量的数值转换成十六进制的串,然后用该十六进制的串取代$后的数字变量。
如果$后是逻辑变量,在汇编时编译器将该逻辑变量替换成它的取值(T或者F)。
如果程序中需要$,则用$$来表示,编译器将不进行变量替换。
GBLS STR1
GBLS B
GBLA NUM1
NUM1 SETA 14
B SETS “CHANGED”
STR1 SETS “abc$$B$NUM1”
编译结果STR1的值为:abcB0000000E。
注意:在两个竖线“|”之间的$并不表示进行变量替换,但如果“|”是在双引号内,则将进行变量替换。
使用点"."来表示变量名的结束。
GBLS STR1
GBLS STR2
STR1 SETS “AAA”
STR2 SETS “bbb$STR1.CCC"
编译结果STR2值为bbbAAACCC
还有
^ ---- MAP ---- 定义结构化内存表 ---- MAP 4096;内存表首地址为4096
# ---- FIELD ---- 定义内存表中的数据,结合MAP指令使用 ----
MAP 4096
STACKSVC FIELD 256;定义从4096开始的256字节为SVC的堆栈空间。
% ---- SPACE ---- 分配一块内存,并用“0”初始化 ---- DataStruc SPACE 280;分配280字节内存并初始化
[|] ---- IF ELSE ENDIF ---- 条件编译,有选择的确定需要编译的代码IF,ELSE,ENDIF,可以嵌套使用 ----
IF 逻辑表达式
指令或伪指令
ELSE
指令或伪指令
ENDIF
另外还有符号: $
如果在串变量前有一个$,则在汇编时编译器将用该串变量的数值取代该串变量,如:
GBLS STR1
GBLS STR2
STR1 SETS “pen.”
STR2 SETS “This is a $STR1"
编译后的结果是STR2的值为This is a pen.
如果$后是数字变量(与串变量区分),在汇编时编译器将该数字变量的数值转换成十六进制的串,然后用该十六进制的串取代$后的数字变量。
如果$后是逻辑变量,在汇编时编译器将该逻辑变量替换成它的取值(T或者F)。
如果程序中需要$,则用$$来表示,编译器将不进行变量替换。
GBLS STR1
GBLS B
GBLA NUM1
NUM1 SETA 14
B SETS “CHANGED”
STR1 SETS “abc$$B$NUM1”
编译结果STR1的值为:abcB0000000E。
注意:在两个竖线“|”之间的$并不表示进行变量替换,但如果“|”是在双引号内,则将进行变量替换。
使用点"."来表示变量名的结束。
GBLS STR1
GBLS STR2
STR1 SETS “AAA”
STR2 SETS “bbb$STR1.CCC"
编译结果STR2值为bbbAAACCC
还有
展开全部
特殊符号 ---- 对应指令 ---- 含义 ---- 示例
^ ---- MAP ---- 定义结构化内存表 ---- MAP 4096;内存表首地址为4096
# ---- FIELD ---- 定义内存表中的数据,结合MAP指令使用 ----
^ ---- MAP ---- 定义结构化内存表 ---- MAP 4096;内存表首地址为4096
# ---- FIELD ---- 定义内存表中的数据,结合MAP指令使用 ----
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询