openKylin论坛

 找回密码

as86,ld86 简介 [复制链接]

1.as86 和 ld86 是由 Bruce Evans 编写的 Intel 8086 汇编编译程序和连接程序。
2.它完全是一个 8086 的汇编编译器,但却可以为 386 处理器编制 32 位的代码。
3.Linux 使用它仅仅是为了创建 16 位的启动扇区(bootsector) 代码和 setup 二进制执行代码。
4.该编译器的语法与 GNU 的汇编编译器的语法是不兼容的,但近似于 Intel 的汇编语言语法(如操作数的次序相反等)
5.Bruce Evans 是 minix 操作系统 32 位版本的主要编制者,他与 Linux 的创始人 Linus Torvalds 是很好的朋友。minix 操作系统的不足之处也是两个好朋友互相探讨得出的结果,这激发了 Linus 在 Intel 386 体系结构上开发一个全新概念的操作系统,因此 Linux 操作系统的诞生与 Bruce Evans 也有着密切的关系。
6.as的使用方法和选项如下:as [-03agjuw] [-b [bin]] [-lm [list]] [-n name] [-o obj] [-s sym] src
7.默认设置 (除了以下默认值以外,其它选项默认为关闭或无;若没有明确说明 a 标志,则不会有输出):
8.-03         32 位输出
   list          在标准输出上显示
   name     源文件的基本名称(也即不包括“.“后的扩展名)
9.选项含义:
10.-0 从 16 比特代码段开始;
     -3 从 32 比特代码段开始;
     -a 开启与 as、ld 的部分兼容性选项;
     -b 产生二进制文件,后面可以跟文件名;
     -g 在目标文件中仅存入全局符号;
     -j  使所有跳转语句均为长跳转;
     -l  产生列表文件,后面可以跟随列表文件名;
    -m 在列表中扩展宏定义
    -n  后面跟随模块名称(取代源文件名称放入目标文件中)
    -o  产生目标文件,后跟目标文件名
    -s  产生符号文件,后跟符号文件名
    -u  将未定义符号作为输入的未指定段的符号
    -w 不显示警告信息
11.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...
12.默认设置(除了以下默认值以外,其它选项默认为关闭或无):
13.-03           32 位输出;
     outfile      a.out 格式输出;
14.-0        产生具有 16 比特魔数的头结构,并且对-lx 选项使用 i86 子目录
     -3        产生具有 32 比特魔数的头结构,并且对-lx 选项使用 i386 子目录
     -M       在标准输出设备上显示已链接的符号
     -T        后面跟随文本基地址 (使用适合于 strtoul 的格式)
     -i         分离的指令与数据段(I&D)输出
     -lx       将库/local/lib/subdir/libx.a 加入链接的文件列表中
     -m       在标准输出设备上显示已链接的模块
     -o        指定输出文件名,后跟输出文件名
     -r         产生适合于进一步重定位的输出
     -s        在目标文件中删除所有符号

楼主
发表于 2013-11-22 16:09:32
回复

使用道具 举报

openKylin

GMT+8, 2024-6-4 01:34 , Processed in 0.016496 second(s), 17 queries , Gzip On.

Copyright ©2022 openKylin. All Rights Reserved .

ICP No. 15002470-12 Tianjin

快速回复 返回顶部 返回列表