视频网站如何做营销,做营销网站建设,android下载,网页制作教程零基础学会在C语言中#xff0c;为了编程方便#xff0c;编译器会定义一系列与处理命令#xff0c;并用#来标识#xff0c;如#include#xff0c;#define#xff0c;#if#xff0c;#else#xff0c;#end等。这些预处理命令并不是真正的C语言关键字#xff0c;而是为了编程方便为了编程方便编译器会定义一系列与处理命令并用#来标识如#include#define#if#else#end等。这些预处理命令并不是真正的C语言关键字而是为了编程方便编译器提供给我们的使用的预定义标识符。一个C程序经过预处理后这些预处理命令一般会全部消失预处理后的代码变成了一个完全由C语言关键字和标准语法构成的原汁原味的C程序然后编译器才能对这些源程序进行语法语义分析最后变异成二进制可执行文件在整个编译过程中编译器是不认识这些预处理命令的如果编译之前不坐处理则编译器就会报错。 同理汇编中为了编程方便也有助记符方便对汇编程序做各种处理如使用AREA来定义一个段section, 使用GBLA来定义一个数据使用ENTRY来制定汇编程序入口这些指令助记符统称为伪指令或者伪操作。伪操作是为便携汇编程序服务的即使在同一个CPU架构下不同的编译环境或者汇编器虽然会遵循和兼容同一套指令集但是可能定义不同的伪指令使用的方法和格式也不同。 伪指令一般用于符号定义数据定义汇编程序结构控制等场合在一个汇编中经常使用的伪指令如下。 GBLA a;定一个一个全局算数变量a并初始化为0 a SETA 10 给算数变量a 设置为10 GBLL b 定义一个全局逻辑变量b并出实话位0 b SETL 20 b 20 GBLS STR 定义一个全局字符串str初始化位0 STR SETS higosasdaf 将字符串赋值 LCLA a 定义一个全局算术变量a, 并初始化位0 LCLL b 定义一个局部逻辑变量b并初始化位false LCLS name 定义一个局部字符串变量并初始化位0 name SETS xsanp 给局部字符串变量赋值 关于数据定义常用的伪指令又DCDDCBSPACEDATA 这些伪指令的使用方法如下 DATA1 DCB 10,20,30,40 STR DCB higosasdaf DATA2 DCD 10,20,30,40 BUF SPACE 100 除此之外还有一些常用的伪指令操作如用来表示程序的入口地址程序的结束地址用来定义段的属性等。 伪操作 说明 ALIGN 地址对齐 AREA 用来定义一个代码段或者数据段常用的段属性位CODE/DATA CODE16/CODE32 指令为THUMB或者ARM ENTRY 程序入口 END 程序结束停止编译 EQU 赋值伪指令类似宏给常量定义一个符号 EXPORT/GLOBAL 声明一个全局符号可以被其它文件引用 IMPORT /EXTERN 引用其它文件的符号 GET/INCLUDE 包含文件并在当前位置编译该文件一般是程序文件 INCBIN 包含文件一般是数据文件