该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
as86 和ld86 是由Bruce Evans 编写的Intel 8086 汇编编译程序和连接程序。它完全是一个8086 的汇编编译器,但却可以为386 处理器编制32 位的代码。这两个程序的使用方法和选项如下:
as 的使用方法和选项:
--------------------
as [-03agjuw] [-b [bin]] [-lm [list]] [-n name][-o obj] [-s sym] src
默认设置 (除了以下默认值以外,其它选项默认为关闭或无;若没有明确说明a 标志,则不会有输出):
-03 32 位输出;
list 在标准输出上显示;
name 源文件的基本名称(也即不包括“.“后的扩展名);
选项含义:
-0 从16 比特代码段开始;
-3 从32 比特代码段开始;
-a 开启与as、ld 的部分兼容性选项;
-b 产生二进制文件,后面可以跟文件名;
-g 在目标文件中仅存入全局符号;
-j 使所有跳转语句均为长跳转;
-l 产生列表文件,后面可以跟随列表文件名;
-m 在列表中扩展宏定义;
-n 后面跟随模块名称(取代源文件名称放入目标文件中);
-o 产生目标文件,后跟目标文件名;
-s 产生符号文件,后跟符号文件名;
-u 将未定义符号作为输入的未指定段的符号;
-w 不显示警告信息;
ld 连接器的使用语法和选项:
ld 连接器的使用语法和选项:
-------------------------
对于生成Minix a.out 格式的版本:
ld [-03Mims[-]] [-T textaddr] [-llib_extension] [-o outfile] infile...
对于生成GNU-Minix 的a.out 格式的版本:
ld [-03Mimrs[-]] [-T textaddr] [-llib_extension] [-o outfile] infile...
默认设置(除了以下默认值以外,其它选项默认为关闭或无):
-03 32 位输出;
outfile a.out 格式输出;
-0 产生具有16 比特魔数的头结构,并且对-lx 选项使用i86 子目录;
-3 产生具有32 比特魔数的头结构,并且对-lx 选项使用i386 子目录;
-M 在标准输出设备上显示已链接的符号;
-T 后面跟随文本基地址 (使用适合于strtoul 的格式);
-i 分离的指令与数据段(I&D)输出;
-lx 将库/local/lib/subdir/libx.a 加入链接的文件列表中;
-m 在标准输出设备上显示已链接的模块;
-o 指定输出文件名,后跟输出文件名;
-r 产生适合于进一步重定位的输出;
-s 在目标文件中删除所有符号。
摘录自《Linux内核剖析》