基于Keil a51汇编 —— Segments, Modules, and Programs

段、模块和程序

在初始设计阶段,定义程序要执行的任务,然后划分为子程序。以下是与 Ax51 汇编器和 Lx51 链接器/定位器一起使用的子程序类型的简要介绍。

是代码块或数据存储器。段可以是可重定位的,也可以是绝对的。可重定位段具有名称、类型和其他属性。来自不同模块的具有相同名称的段被视为同一段的一部分,称为部分段。具有相同名称的几个部分段由 Lx51 链接器/定位器组合成一个段。绝对段不能与其他段组合。

模块包含一个或多个段或部分段。模块是可以独立翻译的源代码单元。它包含模块中使用的所有符号定义。模块可能是由任何标准文本编辑器创建的单个 ASCII 文本文件。但是,您可以使用包含汇编程序指令来合并多个文本文件。Ax51汇编程序将源文件转换为目标文件。每个对象文件都是一个模块。

组装程序的所有模块后,Lx51处理对象模块文件。Lx51 链接器/定位器为所有可重定位段分配绝对内存位置,组合具有相同名称和类型的段。Lx51 还解析模块之间的所有引用。Lx51 输出一个包含已完成程序的绝对对象模块文件,以及一个列出链接/定位过程结果的映射文件。

相关推荐
切糕师学AI2 天前
ARM 汇编指令:UBFX
汇编·arm开发
切糕师学AI2 天前
ARM 汇编指令:STP\LDP
汇编·arm开发
Trouvaille ~3 天前
【Linux】库制作与原理(三):动态链接与加载机制
linux·c语言·汇编·got·动静态库·动态链接·plt
猫猫的小茶馆3 天前
【ARM】从零封装STM32标准库
汇编·arm开发·stm32·单片机·嵌入式硬件·架构
切糕师学AI3 天前
ARM 汇编指令:PUSH 和 POP
汇编·arm开发·assembly
切糕师学AI3 天前
ARM 汇编指令:ERET
汇编·arm开发
切糕师学AI4 天前
ARM 汇编指令:BX
汇编·arm开发·assembly
切糕师学AI4 天前
ARM 汇编指令:B
汇编·arm开发
Trouvaille ~4 天前
【Linux】库制作与原理(一):静态库与动态库的制作使用
linux·运维·服务器·c语言·汇编·动静态库·编译链接
渡我白衣4 天前
计算机组成原理(9):零拓展与符号拓展
c语言·汇编·人工智能·嵌入式硬件·网络协议·硬件工程·c