4.子段 子段( Subsections)是大段中的小段。链接器 可以像处理段一样处理子段。采用子段可以使存 储器图更加紧密。子段的命名句法为: 基段名:子段名 子段也有两种,用.sect命令建立的是已初始化段, 用 sect命令建立的是未初始化段
4.子段 ◼ 子段(Subsections)是大段中的小段。链接器 可以像处理段一样处理子段。采用子段可以使存 储器图更加紧密。子段的命名句法为: 基段名:子段名 ◼ 子段也有两种,用.sect命令建立的是已初始化段, 用.usect命令建立的是未初始化段
5.段程序计数器(SPC) 汇编器为每个段安排一个独立的程序计数器,即 段程序计数器(SPC)。SPC表示一个程序代码 段或数据段内的当前地址。开始时,汇编器将每 个SPC置0,当汇编器将程序代码或数据加到 个段内时,相应的SPc增加。如果汇编器再次遇 到相同段名的段,继续汇编至相应的段,且相应 的SPC在先前的基础上继续增加
5.段程序计数器(SPC) ◼ 汇编器为每个段安排一个独立的程序计数器,即 段程序计数器(SPC)。SPC表示一个程序代码 段或数据段内的当前地址。开始时,汇编器将每 个SPC置0,当汇编器将程序代码或数据加到一 个段内时,相应的SPC增加。如果汇编器再次遇 到相同段名的段,继续汇编至相应的段,且相应 的SPC在先前的基础上继续增加
Line Numbers Object Code Section 100f text 20 f010 0001 21 f842 0001 36 110a 37 f166 000a f868 0006′ 6 0011 6 6 0033 0123 26 noaa oobb 26 Occ 0011 vectors 0033 No data- SS 10 words reserved No data- newvars 31 eight words reserved 图5-3例5-1产生的目标代码 本节
图5-3 例5-1产生的目标代码 返回本节
523链接器对段的处理 链接器对段的处理有两个功能。首先,它将汇编 器产生的cOFF目标文件(,ob文件)中的各种段 作为输入段,当有多个文件进行链接时,它将输 入段组合起来,在可执行的COFF输出模块中建 立各个输出段。其次,链接器为输出段选择存储 器地址
5.2.3 链接器对段的处理 ◼ 链接器对段的处理有两个功能。首先,它将汇编 器产生的COFF目标文件(.obj文件)中的各种段 作为输入段,当有多个文件进行链接时,它将输 入段组合起来,在可执行的COFF输出模块中建 立各个输出段。其次,链接器为输出段选择存储 器地址
链接器有两个命令完成上述功能,即: MEMORY命令——定义目标系统的存储器配置 图,包括对存储器各部分的命名,以及规定它们 的起始地址和长度。 SECTIONS命令—告诉链接器如何将输入段组 合成输出段,以及在存储器何处存放输出段。子 段可以用来更精确地编排段,可用链接器 SECTIONS命令指定子段
◼ 链接器有两个命令完成上述功能,即: ◼ MEMORY 命令——定义目标系统的存储器配置 图,包括对存储器各部分的命名,以及规定它们 的起始地址和长度。 ◼ SECTIONS命令——告诉链接器如何将输入段组 合成输出段,以及在存储器何处存放输出段。子 段可以用来更精确地编排段,可用链接器 SECTIONS命令指定子段