这是命令 h8300-hitachi-coff-as 可以在 OnWorks 免费托管服务提供商中使用我们的多个免费在线工作站之一运行,例如 Ubuntu Online、Fedora Online、Windows 在线模拟器或 MAC OS 在线模拟器
程序:
您的姓名
AS - 便携式 GNU 汇编器。
概要
作为 [-a[细胞因子][=文件]][- 备用[-D]
[--defsym 符号=VAL[-f[-g[--gtabs[--gtabs+]
[--gdwarf-2[ - 帮帮我[-I DIR[-J[-K[-L]
[--listing-lhs-宽度=民[--列表-lhs-width2=民]
[--listing-rhs-宽度=民[--列表续行=民]
[--保持本地人[-o 目标文件[-R[- 统计数据[-v]
[-版[- 版[-W[- 警告[--致命警告]
[-w[-x[-Z[--目标帮助[目标选项]
[--⎪档 ...]
目标 阿尔法 opţiuni:
[-mCPU]
[-调试 ⎪ -无调试]
[-放松[-g[-G尺寸]
[-F[-32地址]
目标 ARC opţiuni:
[-marc[5风6风7风8]]
[-EB⎪-这]
目标 ARM opţiuni:
[-微处理器=处理器[+延期...]]]
[-行进=架构[+延期...]]]
[-mfpu=浮点格式]
[-mfloat-abi=ABI]
[-米比=版本]
[-拇指]
[-EB⎪-这]
[-mapcs-32⎪-mapcs-26⎪-mapcs-浮动⎪
-mapcs-可重入]
[-拇指互通[-k]
目标 CRIS opţiuni:
[--下划线 ⎪ --无下划线]
[--图片[-N]
[--仿真=危机 ⎪ --emulation=crisaout]
[--行军=v0_v10 ⎪ --三月=v10 ⎪ --三月=v32 ⎪ --march=common_v10_v32]
目标 D10V opţiuni:
[-O]
目标 D30V opţiuni:
[-O⎪-n⎪-N]
目标 i386 opţiuni:
[ - 32⎪ - 64[-n]
目标 i960 opţiuni:
[-ACA⎪-ACA_A⎪-ACB⎪-ACC⎪-又名⎪-AKB⎪
-AKC⎪-AMC]
[-b[-不放松]
目标 IA-64 opţiuni:
[-mconstant-gp⎪-自动图片]
[-milp32⎪-milp64⎪-mlp64⎪-mp64]
[-mle⎪MBE]
[-munwind-check=警告⎪-munwind-检查=错误]
[-mint.b=ok⎪-mint.b=警告⎪-mhint.b=错误]
[-x⎪-x 显式[-xauto[-x调试]
目标 IP2K opţiuni:
[-mip2022⎪-mip2022ext]
目标 M32R opţiuni:
[--m32rx⎪--[no-]警告显式并行冲突⎪
--W[n]p]
目标 M680X0 opţiuni:
[-l[-立方米⎪-立方米⎪-立方米变成...]
目标 M68HC11 opţiuni:
[-m68hc11⎪-m68hc12⎪-m68hcs12]
[-mshort⎪-长]
[-mshort-双⎪-mlong-双]
[--强制长分支[--短枝]
[--严格直接模式[--print-insn-语法]
[--打印操作码[--生成示例]
目标 核心 opţiuni:
[-jsri2bsr[-过滤器[-放松]
[-mcpu=[210刷340]]
目标 MIPS opţiuni:
[-nocpp[-这[-EB[-O[优化 水平]]
[-g[调试 水平]][-G NUM[-大韩油化[-call_shared]
[-非共享[-xgot]
[-马比=ABI[-32[-n32[-64[-mfp32[-mgp32]
[-行进=中央处理器[-mtune=中央处理器[-mips1[-mips2]
[-mips3[-mips4[-mips5[-mips32[-mips32r2]
[-mips64[-mips64r2]
[-构造浮动[-无构造浮点数]
[-陷阱[-没有休息[-break[-无陷阱]
[-mfix7000[-mno-fix7000]
[-mips16[-无mips16]
[-mips3d[-无mips3d]
[-mdmx[-无-mdmx]
[-调试[-无调试]
[-mpdr[-mno-pdr]
目标 多媒体混音 opţiuni:
[--固定特殊寄存器名称[--globalize-符号]
[--gnu 语法[- 放松[--无预定义符号]
[--不扩展[--无合并格雷格[-x]
[--链接器分配-gregs]
目标 等离子11 opţiuni:
[-mpic⎪-mno-pic[-购物中心[-mno-扩展]
[-m延期⎪-mno-延期]
[-mCPU[-m机]
目标 picoJava opţiuni:
[-mb⎪-我]
目标 PowerPC的 opţiuni:
[-mpwrx⎪-mpwr2⎪-mpwr⎪-立方米⎪-mppc⎪-mppc32⎪-立方米⎪-立方米⎪
-立方米⎪-立方米⎪-mppc64⎪-立方米⎪-mppc64bridge⎪-mbooke⎪
-mbooke32⎪-mbooke64]
[-mcom⎪-许多⎪-马尔代夫[-成员]
[-mregnames⎪-mno-regnames]
[-可重定位⎪-mrelocate-lib]
[-小⎪-小端⎪-mbig⎪-mbig-endian]
[-姆索拉里斯⎪-mno-solaris]
目标 SPARC opţiuni:
[-AV6⎪-AV7⎪-AV8⎪-天冬氨酸⎪-天冬石
-AV8plus⎪-Av8plusa⎪-AV9⎪-AV9a]
[-xarch=v8plus⎪-xarch=v8plusa[-磕碰]
[-32⎪-64]
目标 TIC54X opţiuni:
[-mcpu=54[123589]⎪-mcpu=54[56]lp[-mfar模式⎪-mf]
[-错误到文件 ⎪-我 ]
目标 克滕萨 opţiuni:
[--[no-]文本部分文字[--[no-] 绝对字面量]
[--[no-]目标对齐[--[无-]长时间通话]
[--[无-]变换]
[--重命名部分 旧名=新名字]
商品描述
GNU as 真是一个汇编家族。 如果您使用(或已经使用)GNU 汇编器
一个架构,当你在另一个架构上使用它时,你应该找到一个相当相似的环境
建筑学。 每个版本与其他版本有很多共同点,包括目标文件
格式,大多数汇编指令(通常称为 伪操作) 和汇编语法。
as 主要用于汇编 GNU C 编译器“gcc”的输出以供
链接器“ld”。 尽管如此,我们已经尝试使 as 正确组装一切
同一台机器的其他组装者将进行组装。 任何异常都被记录在案
明确地。 这并不意味着 as 总是使用与另一个汇编程序相同的语法
相同的架构; 例如,我们知道有几个不兼容的 680x0 程序集版本
语言语法。
每次跑步 as 它只汇编了一个源程序。 源程序制作完成
一个或多个文件。 (标准输入也是一个文件。)
你给 as 具有零个或多个输入文件名的命令行。 输入文件是
读取(从左文件名到右)。 一个命令行参数(在任何位置)具有
输入文件名没有特殊含义。
如果你给 as 没有文件名它试图从文件中读取一个输入文件 as 标准
输入,通常是您的终端。 您可能需要输入 ctl-d 告诉 as 没有
更多的程序来组装。
使用 -- 如果您需要在命令行中明确命名标准输入文件。
如果源为空, as 产生一个小的、空的目标文件。
as 可能会将警告和错误消息写入标准错误文件(通常是您的
终端)。 这不应该在编译器运行时发生 as 自动地。 警告
报告一个假设,以便 as 可以继续组装有缺陷的程序; 错误报告
使装配停止的严重问题。
如果您正在调用 as 通过 GNU C 编译器,您可以使用 -哇 选择通过
参数传递给汇编程序。 汇编器参数必须与每个参数分开
其他(和 -哇) 用逗号。 例如:
gcc -c -g -O -Wa,-alh,-L 文件.c
这将两个选项传递给汇编程序: -啊 (将列表发送到标准输出
高级和汇编源)和 -L (在符号表中保留局部符号)。
通常你不需要使用这个 -哇 机制,因为许多编译器命令行
选项由编译器自动传递给汇编器。 (你可以调用 GNU
编译器驱动程序 -v 选项以准确查看它传递给每个选项的选项
编译过程,包括汇编程序。)
配置
-a[cdhlmns]
以多种方式中的任何一种打开列表:
-交流 省略假条件
-广告 省略调试指令
-啊 包括高级来源
-al 包括组装
-是 包括宏扩展
-一个 省略表格处理
-如 包括符号
=文件
设置列表文件的名称
您可以组合这些选项; 例如,使用 -阿尔恩 用于组装列表,没有
表格处理。 这 =文件 选项,如果使用,必须是最后一个。 通过它自己, -a
默认为 -ahls.
- 备用
以备用宏模式开始,参见@ref{Altmacro,,".altmacro"}。
-D 忽略。 接受此选项是为了与调用其他脚本兼容
装配工。
--defsym 符号=折扣值
定义符号 符号 成为 折扣值 在组装输入文件之前。 折扣值 必须是
整数常量。 在 C 中,一个领先的 0x 表示一个十六进制值,和一个前导
0 表示八进制值。
-f ``fast''---跳过空格和注释预处理(假设源是编译器
输出)。
-g
--gen-调试
使用任何调试为每个汇编源代码行生成调试信息
目标首选格式。 这当前意味着 STABS、ECOFF 或
矮人2。
--gtabs
为每个汇编行生成 stabs 调试信息。 这可能有助于调试
汇编代码,如果调试器可以处理它。
--gtabs+
为每个汇编行生成 stab 调试信息,带有 GNU 扩展
可能只有 gdb 可以处理,这可能会使其他调试器崩溃或拒绝
阅读你的程序。 这可能有助于调试汇编代码。 目前唯一的 GNU
扩展名是组装时当前工作目录的位置。
--gdwarf-2
为每个汇编行生成 DWARF2 调试信息。 这可能有帮助
调试汇编代码,如果调试器可以处理它。 注意---此选项仅
得到一些目标的支持,而不是全部。
- 帮帮我
打印命令行选项的摘要并退出。
--目标帮助
打印所有目标特定选项的摘要并退出。
-I DIR
添加目录 DIR 到“.include”指令的搜索列表。
-J 不要警告签名溢出。
-K 当差异表因长位移而改变时发出警告。
-L
--保持本地人
保留(在符号表中)局部符号。 在传统的 a.out 系统上,这些开始
L,但不同的系统有不同的本地标签前缀。
--listing-lhs-宽度=数
将汇编器列表的输出数据列的最大宽度(以字为单位)设置为
数.
--列表-lhs-width2=数
设置连续行的输出数据列的最大宽度(以字为单位)
汇编器列表 数.
--listing-rhs-宽度=数
将输入源行的最大宽度(如列表中所示)设置为 数
个字节。
--列表连续行=数
将单行输入的列表中打印的最大行数设置为
数 + 1。
-o 目标文件
将目标文件输出命名为 as 目标文件.
-R 将数据部分折叠到文本部分。
- 统计数据
打印程序集使用的最大空间(以字节为单位)和总时间(以秒为单位)。
--strip-本地-绝对
从传出符号表中删除局部绝对符号。
-v
-版
打印 as 版。
- 版
打印 as 版本并退出。
-W
--无警告
禁止警告消息。
--致命警告
将警告视为错误。
- 警告
不要抑制警告消息或将它们视为错误。
-w 忽略了。
-x 忽略了。
-Z 即使发生错误也生成目标文件。
-- ⎪ 档 ...
要汇编的标准输入或源文件。
当为 ARC 处理器配置 as 时,以下选项可用。
-marc[5风6风7风8]
此选项选择核心处理器变体。
-EB ⎪ -这
选择大端 (-EB) 或小端 (-EL) 输出。
当为 ARM 处理器系列配置 as 时,以下选项可用。
-单片机=处理器[+延期...]
指定哪个 ARM 处理器变体是目标。
-三月=架构[+延期...]
指定目标使用哪个 ARM 体系结构变体。
-mfpu=浮点格式
选择哪个浮点架构是目标。
-mfloat-abi=ABI
选择正在使用的浮点 ABI。
-拇指
启用 Thumb only 指令解码。
-mapcs-32 ⎪ -mapcs-26 ⎪ -mapcs-浮动 ⎪ -mapcs-可重入
选择正在使用的过程调用约定。
-EB ⎪ -这
选择大端 (-EB) 或小端 (-EL) 输出。
-拇指互通
指定代码已经生成,Thumb 和 ARM 代码互通
在心。
-k 指定已生成 PIC 代码。
有关 CRIS 特定选项的文档,请参阅信息页面。
当为 D10V 处理器配置 as 时,以下选项可用。
-O 通过并行化指令优化输出。
当为 D30V 处理器配置 as 时,以下选项可用。
-O 通过并行化指令优化输出。
-n 生成 nops 时发出警告。
-N 生成 32 位乘法指令后的 nop 时发出警告。
当为 Intel 80960 处理器配置 as 时,以下选项可用。
-ACA ⎪ -ACA_A ⎪ -ACB ⎪ -ACC ⎪ -又名 ⎪ -AKB ⎪ -AKC ⎪ -AMC
指定 960 架构的哪个变体是目标。
-b 添加代码以收集有关所采用分支的统计信息。
-不放松
不要更改长位移的比较和分支指令; 错误如果
必要。
当为 Ubicom IP2K 系列配置时,以下选项可用。
-mip2022ext
指定允许扩展 IP2022 指令。
-mip2022
恢复默认行为,将允许的指令限制在
基本 IP2022 的。
当为 Renesas M32R(以前的
三菱 M32R) 系列。
--m32rx
指定 M32R 系列中的哪个处理器是目标。 默认值通常是
M32R,但此选项将其更改为 M32RX。
--警告显式并行冲突 or --wp
当遇到有问题的并行结构时产生警告消息。
--无警告显式并行冲突 or --Wnp
当遇到有问题的并行结构时,不要产生警告消息。
当为 Motorola 68000 系列配置时,以下选项可用。
-l 缩短对未定义符号的引用,将其缩短为一个词而不是两个词。
-立方米 ⎪ -立方米 ⎪ -立方米 ⎪ -立方米 ⎪ -立方米
⎪ -立方米 ⎪ -立方米 ⎪ -立方米 ⎪ -立方米 ⎪ -立方米
⎪ -立方米 ⎪ -立方米 ⎪ -单片机32 ⎪ -立方米
指定 68000 系列中的哪个处理器是目标。 默认值通常是
68020,但这可以在配置时更改。
-立方米 ⎪ -立方米 ⎪ -mno-68881 ⎪ -mno-68882
目标机器有(或没有)一个浮点协处理器。 默认的
假设有一个用于 68020、68030 和 cpu32 的协处理器。 虽然基本的68000是
与 68881 不兼容,可以指定两者的组合,因为它是
可以用主处理器模拟协处理器指令。
-立方米 ⎪ -mno-68851
目标机器有(或没有)内存管理单元协处理器。 这
默认是为 68020 及更高版本假设 MMU。
有关 PDP-11 机器相关功能选项的详细信息,请参阅 @ref{PDP-11-Options}。
-mpic ⎪ -mno-pic
生成位置无关(或位置相关)代码。 默认是 -mpic.
-购物中心
-商城扩展
启用所有指令集扩展。 这是默认设置。
-mno-扩展
禁用所有指令集扩展。
-m延期 ⎪ -mno-延期
启用(或禁用)特定指令集扩展。
-mCPU
启用特定 CPU 支持的指令集扩展,并禁用所有
其他扩展。
-m机
启用特定机器模型支持的指令集扩展,以及
禁用所有其他扩展。
当为 picoJava 处理器配置 as 时,以下选项可用。
-mb 生成“大端”格式输出。
-毫升 生成“小端”格式输出。
当为 Motorola 68HC11 或
68HC12系列。
-m68hc11 ⎪ -m68hc12 ⎪ -m68hcs12
指定目标处理器。 默认由配置定义
构建汇编程序时的选项。
-mshort
指定使用 16 位整数 ABI。
-长
指定使用 32 位整数 ABI。
-mshort-双
指定使用 32 位双 ABI。
-mlong-双
指定使用 64 位双 ABI。
--强制长分支
相对分支变成绝对分支。 这涉及条件分支,
无条件分支和分支到子程序。
-S ⎪ --短枝
当偏移量超出范围时,不要将相对分支转换为绝对分支。
--严格直接模式
请勿将直接寻址模式转换为扩展寻址模式
指令不支持直接寻址方式。
--print-insn-语法
出现错误时打印指令的语法。
--打印操作码
用语法打印指令列表,然后退出。
--生成示例
为每个可能的指令打印一个指令示例,然后退出。 这个
选项仅对测试有用 as.
下列选项可用时 as 为 SPARC 架构配置:
-AV6 ⎪ -AV7 ⎪ -AV8 ⎪ -天冬氨酸 ⎪ -天冬石
-AV8plus ⎪ -Av8plusa ⎪ -AV9 ⎪ -AV9a
显式选择 SPARC 体系结构的变体。
-AV8plus 和 -Av8plusa 选择 32 位环境。 -AV9 和 -AV9a 选择 64 位
环境。
-Av8plusa 和 -AV9a 使用 UltraSPARC 扩展启用 SPARC V9 指令集。
-xarch=v8plus ⎪ -xarch=v8plusa
为了与 Solaris v9 汇编器兼容。 这些选项相当于
分别为 -Av8plus 和 -Av8plusa。
-磕碰
当汇编器切换到另一种架构时发出警告。
当为 'c54x 架构配置 as 时,以下选项可用。
-mfar模式
启用扩展寻址模式。 所有地址和重定位将假定扩展
寻址(通常为 23 位)。
-单片机=CPU_版本
设置正在编译的 CPU 版本。
-错误到文件 文件名
对于不支持此类行为的损坏系统,将错误输出重定向到文件
在外壳中。
当为 MIPS 处理器配置 as 时,以下选项可用。
-G NUM
此选项设置可以隐式引用的对象的最大大小
“gp”寄存器。 它仅适用于使用 ECOFF 格式的目标,例如
DECstation 运行 Ultrix。 默认值为 8。
-EB 生成“大端”格式输出。
-这 生成“小端”格式输出。
-mips1
-mips2
-mips3
-mips4
-mips5
-mips32
-mips32r2
-mips64
-mips64r2
为特定的 MIPS 指令集架构级别生成代码。 -mips1 是一个
别名为 -三月=r3000, -mips2 是的别名 -三月=r6000, -mips3 是的别名
-三月=r4000 和 -mips4 是的别名 -三月=r8000. -mips5, -mips32, -mips32r2,
-mips64及 -mips64r2 对应于泛型 MIPS V, MIPS32, MIPS32 发布 2, MIPS64,
和 MIPS64 发布 2 ISA 处理器。
-三月=中央处理器
为特定的 MIPS cpu 生成代码。
-mtune=CPU
为特定的 MIPS cpu 安排和调整。
-mfix7000
-mno-fix7000
如果读取 mfhi 或 mflo 的目标寄存器,则导致插入 nops
指令出现在以下两条指令中。
-调试
-无调试
导致 stabs 样式的调试输出进入 ECOFF 样式的 .mdebug 部分
标准 ELF .stab 部分。
-mpdr
-mno-pdr
控制“.pdr”部分的生成。
-mgp32
-mfp32
寄存器大小通常从 ISA 和 ABI 推断,但这些标志强制
某些寄存器组始终被视为 32 位宽。 -mgp32
控制通用寄存器的大小和 -mfp32 控制大小
浮点寄存器。
-mips16
-无mips16
为 MIPS 16 处理器生成代码。 这相当于把“.set mips16”
在程序集文件的开头。 -无mips16 关闭此选项。
-mips3d
-无mips3d
为 MIPS-3D 应用程序特定扩展生成代码。 这告诉
汇编器接受 MIPS-3D 指令。 -无mips3d 关闭此选项。
-mdmx
-无-mdmx
为 MDMX 应用程序特定扩展生成代码。 这告诉汇编器
接受 MDMX 指令。 -无-mdmx 关闭此选项。
--构造浮点数
--无构造浮动
--无构造浮动 选项禁用双宽度浮动的构造
通过将值的两半加载到两个单一宽度中来点常量
构成双宽寄存器的浮点寄存器。 默认情况下
--构造浮点数 被选中,允许构建这些浮点
常数。
--仿真=姓名
此选项导致 as 模仿 as 为其他目标配置,在所有方面,
包括输出格式(仅在 ELF 和 ECOFF 之间选择),处理伪
可能生成调试信息或存储符号表信息的操作码,
和默认字节序。 可用的配置名称是: 关闭, 自己,
米普莱科夫, 米普斯贝科夫, mips 自身, 米普斯贝尔夫. 前两个不改变默认值
从配置汇编器的主要目标的字节序开始; 这
其他人将默认值更改为小端或大端,如 b or l ,在
姓名。 使用 -EB or -这 在任何情况下都将覆盖字节序选择。
当前仅当主要目标时才支持此选项 as 配置为
是 MIPS ELF 或 ECOFF 目标。 此外,主要目标或其他指定的
--启用目标=... 在配置时必须包括对另一个的支持
格式,如果两者都可用。 例如,Irix 5 配置包括
支持两者。
最终,这个选项将支持更多的配置,具有更细粒度的
控制汇编器的行为,并将支持更多处理器。
-nocpp
as 忽略此选项。 它被接受是为了与本机工具兼容。
- 陷阱
--无陷阱
- 休息
- 没有休息
控制如何处理乘法溢出和被零除。 - 陷阱 or
- 没有休息 (它们是同义词)采用陷阱异常(并且仅适用于指令
设置架构级别 2 及更高); - 休息 or --无陷阱 (也是同义词,以及
默认)采取中断异常。
-n 使用此选项时, as 每次生成 nop 时都会发出警告
来自宏的指令。
当为 MCore 处理器配置 as 时,以下选项可用。
-jsri2bsr
-nojsri2bsr
启用或禁用 JSRI 到 BSR 的转换。 默认情况下这是启用的。 这
命令行选项 -nojsri2bsr 可以用来禁用它。
-过滤器
-鼻过滤器
启用或禁用硅过滤器行为。 默认情况下这是禁用的。 这
默认值可以被覆盖 -过滤器 命令行选项。
-放松
更改长位移的跳转指令。
-mcpu=[210刷340]
选择目标硬件上的 CPU 类型。 这控制了哪些指令可以
组装好的。
-EB 组装一个大端目标。
-这 组装一个小端目标。
有关 MMIX 特定选项的文档,请参阅信息页面。
当为 Xtensa 处理器配置 as 时,以下选项可用。
--文本部分文字 ⎪ --无文本部分文字
--文本部分文字,文字池散布在文本部分。 这
默认是 --无文本部分文字, 将文字放在一个单独的部分
输出文件。 这些选项仅影响通过 PC 相关的“L32R”引用的文字
指示; 绝对模式“L32R”指令的文字是单独处理的。
--绝对字面量 ⎪ --无绝对文字
向汇编器指示“L32R”指令是使用绝对指令还是 PC 相对指令
寻址。 如果 Xtensa 处理器
包括绝对“L32R”寻址选项。 否则,只有 PC 相关的
可以使用“L32R”模式。
--目标对齐 ⎪ --无目标对齐
启用或禁用自动对齐以减少分支惩罚,但代价是
一些代码密度。 默认是 --目标对齐.
--长通话 ⎪ --无长调用
启用或禁用调用指令的转换以允许跨更大范围的调用
地址范围。 默认是 --无长调用.
- 转变 ⎪ --无变换
启用或禁用 Xtensa 指令的所有汇编器转换。 默认的
is - 转变; --无变换 只应在极少数情况下使用
指令必须与汇编源代码中指定的完全相同。
使用 h8300-hitachi-coff-as online 使用 onworks.net 服务