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

段、模块和程序

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

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

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

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

相关推荐
Crossoads2 天前
【汇编语言】call 和 ret 指令(一) —— 探讨汇编中的ret和retf指令以及call指令及其多种转移方式
android·开发语言·javascript·汇编·人工智能·数据挖掘·c#
Crossoads3 天前
【汇编语言】转移指令的原理(三) —— 汇编跳转指南:jcxz、loop与位移的深度解读
android·汇编·人工智能·redis·单片机·深度学习·机器学习
zhuqiyua3 天前
深入解析Kernel32.dll与Msvcrt.dll
汇编·microsoft·windbg·二进制·dll
Crossoads5 天前
【汇编语言】数据处理的两个基本问题(三) —— 汇编语言的艺术:从div,dd,dup到结构化数据的访问
android·linux·运维·服务器·汇编·机器学习·数据挖掘
Crossoads5 天前
【汇编语言】数据处理的两个基本问题(二) —— 解密汇编语言:数据长度与寻址方式的综合应用
android·java·开发语言·javascript·汇编·数据挖掘·c#
Coding~5 天前
逆向攻防世界CTF系列38-xxxorrr
c语言·汇编·安全
Crossoads6 天前
【汇编语言】数据处理的两个基本问题 —— 汇编语言中的数据奥秘:数据位置与寻址方式总结
android·汇编·人工智能·redis·单片机·深度学习·机器学习
Crossoads7 天前
【汇编语言】更灵活的定位内存地址的方法(一)—— 字符操作:and与or指令、ASCII码及大小写转换
android·linux·运维·服务器·汇编·机器学习·数据挖掘
不会写算法的小沈7 天前
函数栈帧的创建与销毁
c语言·汇编·数据结构
zhuqiyua7 天前
windows二进制安全零基础(二)
汇编·安全·二进制