『壹』 单片机汇编语言程序每段程序可以随便命名吗
单片机汇编语言程序每段程序名(即标号)的命名是有规则约束的:
1、不能是与汇编语言中的关键字同名,比如MOV、ADD、Ac、DB,DW,END等等;
2、标号的第一个字符必须是字母,一般由字符、数字和下划线组成;
3、标号长度不能超过8个字符;
4、标号就以“:”结束。
『贰』 把一年的科研成果汇编成书,什么书名好
《**************科研成果汇总》
『叁』 汇编中CF、PF、AF、ZF、SF、OF都表示什么意思
各标志位含义:
CF(进位标志) =1 算术操作最高位产生了进位或借位 =0 最高位无进位或借位 ;
PF(奇偶标志) =1 数据最低8位中1的个数为偶数 =0 数据最低8位中1的个数为奇数;
AF(辅助进位标志) =1 D3→D4位产生了进位或借位 =0 D3→D4位无进位或借位;
ZF(零标志) =1 操作结果为0 =0 结果不为0;
SF(符号标志) =1 结果最高位为1 =0 结果最高位为0;
OF(溢出标志) =1 此次运算发生了溢出 =0 无溢出。
例如8位二进制数相加:1001 1100B+0001 1000B 结果为 1011 0100B 此时无进位CF=0,PF=1,AF=1,ZF=0,SF=1,OP=0。
(3)成果汇编命名扩展阅读:
汇编:大多是指汇编语言,汇编程序。把汇编语言翻译成机器语言的过程称为汇编。在汇编语言中,用助记符(Memoni)代替操作码,用地址符号(Symbol)或标号(Label)代替地址码。这样用符号代替机器语言的二进制码,就把机器语言变成了汇编语言。于是汇编语言亦称为符号语言。用汇编语言编写的程序,机器不能直接识别,要由一种程序将汇编语言翻译成机器语言,这种起翻译作用的程序叫汇编程序,汇编程序是系统软件中语言处理的系统软件。
参考资料:汇编-网络
『肆』 汇编语言的命名规则是什么啊急急急!!!!!!
规则如下:
(1)字符个数:1-31个。
(2)标识符的第1个字符必须是字母、问号“?”、“@”或下划线“_”这4种字符中的一个。
(3)从第2个字符开始,可以是字母、数字、?、@、或_。
(4)不能使用属于系统的专用保留字。
(4)成果汇编命名扩展阅读:
汇编语言具有更高的机器相关性,更加便于记忆和书写,但又同时保留了机器语言高速度和高效率的特点。汇编语言仍是面向机器的语言,很难从其代码上理解程序设计意图,设计出来的程序不易被移植,故不像其他大多数的高级计算机语言一样被广泛应用。所以在高级语言高度发展的今天,它通常被用在底层,通常是程序优化或硬件操作的场合。
『伍』 ARM汇编中符号命名规则
特殊符号 ---- 对应指令 ---- 含义 ---- 示例
^ ---- 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
还有
『陆』 课题中的成果汇编相当于中期报告吗
『柒』 arm汇编的符号命名和书写规则有哪些
特殊符号 ---- 对应指令 ---- 含义 ---- 示例
^ ---- 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
还有一个例外:“%”
“%”除了表示SPACE外,还可以在局部标号中使用,具体意思见伪指令ROUT的使用示例:
◆ROUT
ROUT伪指令定义局部标号的有效范围,伪指令格式如下:{name} ROUT。其中 name 所定义的作用范围的名称。
当没有使用ROUT伪指令时,局部标号的作用范围为所在段;ROUT伪令的作用范围在本ROUT伪指令和下一个ROUT伪指令之间(指同一段中的ROUT伪指令)
伪指令应用举例如下:
routineA ROUT ;定义局部标号的有效范围,名称为routineA
......
3routineA ;routineA范围内的局部标号3
......
BEQ %4routineA ;若条件成立,跳转到routineA范围内的局部标号 4
......
BEQ %3routineA ;若条件成立,跳转到routineA范Iq内的局部标号 3
......
4routineA ;routineA范围内的局部标号4
......
otherstuff ROUT ;定义新的局部标号的有效范围
----------------------------------------------------------------------
ADS中ARM汇编语言程序设计的符号引用规范
Error:Undefined symbols ....
找到引用符号的汇编源文件和定义符号的汇编源文件仔细检查和对比,符号没有写错,而且在引用符号之前确实把符号使用IMPORT引入了进来。百思不得其解时,突然想到在定义符号的文件中没有对符号EXPORT。非常低级的错误。
在汇编语言程序设计中,养成良好的编程习惯,形成良好的编码风格是非常重要的。 这里仅根据个人习惯和体会略谈一下使用ADS进行ARM汇编语言程序设计时的符号引用规则,主要是对不同性质的符号使用不同的引用办法:
(1)对于寄存器地址定义以及通用的常量或符号定义(使用EQU定义),可以按类定义在一个.s汇编文件中,在要使用这些定义的源文件中可使用INCLUDE将该.s汇编文件包含进来。
这样做的好处是:避免大量的IMPORT和EXPORT伪语句,增强代码的可读性,另外,对于多个源文件要使用许多相同寄存器地址定义或常量定义的场合,这样做可以大大压缩代码尺寸(经笔者实践证实)。
(2)对于代码段的地址标号或函数入口地址标号(函数名),在代码段或函数的定义处使用EXPORT输出;在要调用该代码段或函数的源文件中使用IMPORT将符号引入。
一定要保证IMPORT和EXPORT是成对使用的,若不EXPORT则IMPORT无效,若只EXPORT而不IMPORT也无法引用符号。
『捌』 混合编程时,C源程序和汇编源程序变量和函数命名规则是什么
http://wenku..com/view/71bf3d4ae45c3b3567ec8bd4.html
别说是 wxc 的啊
『玖』 汇编文件最长命名长度
dos时代的文件名是8.3规则,8个字符的名字,3个字符的扩展名(不包括.)8086汇编,tc都是这个时代的
『拾』 汇编文件命名
masm5.0是在DOS下执行的汇编程序,而DOS下文件的主名不能超过8个字符,所以在masm5.0汇编时文件命名为MyFirstASM.asm时会提示出错信息,原因就是MyFirstASM超过8个字符的长度,而MyFirst则不超过8个字符因而是正确的文件名。