没有合适的资源?快使用搜索试试~ 我知道了~
首页GNU as manual
资源详情
资源评论
资源推荐

Using as
The gnu Assembler
(GNU Binutils)
Version 2.19.1
The Free Software Foundation Inc. thanks The Nice Computer Company of Australia for
loaning Dean Elsner to write the first (Vax) version of as for Project gnu. The proprietors,
management and staff of TNCCA thank FSF for distracting the boss while they got som e
work done.
Dean Elsner, Jay Fenlason & friends

Using as
Edited by Cygnus Support
Copyright
c
1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001, 2002, 2006, 2007 Free Software
Foundation, Inc.
Permission is granted to copy, distribute and/or modify this document under the terms of
the GNU Free Documentation License, Version 1.1 or any later version published by the
Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with
no Back-Cover Texts. A copy of the license is included in the section entitled “GNU Free
Documentation License”.

i
Table of Contents
1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Structure of this Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.2 The GNU Assembler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.3 Object File Formats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.4 Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
1.5 Input Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.6 Output (Object) File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
1.7 Error and Warning Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2 Command-Line Options . . . . . . . . . . . . . . . . . . . 17
2.1 Enable Listings: ‘-a[cdghlns]’. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.2 ‘--alternate’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
2.3 ‘-D’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.4 Work Faster: ‘-f’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.5 .include Search Path: ‘-I’ path . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.6 Difference Tables: ‘-K’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.7 Include Local Symbols: ‘-L’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.8 Configuring listing output: ‘--listing’ . . . . . . . . . . . . . . . . . . . . . . 18
2.9 Assemble in MRI Compatibility Mode: ‘-M’ . . . . . . . . . . . . . . . . . . 19
2.10 Dependency Tracking: ‘--MD’. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.11 Name the Object File: ‘-o’. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.12 Join Data and Text Sections: ‘-R’ . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.13 Display Assembly Statistics: ‘--statistics’ . . . . . . . . . . . . . . . . 21
2.14 Compatible Output: ‘--traditional-format’. . . . . . . . . . . . . . . 21
2.15 Announce Version: ‘-v’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.16 Control Warnings: ‘-W’, ‘--warn’, ‘--no-warn’,
‘--fatal-warnings’ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.17 Generate Object File in Spite of Errors: ‘-Z’ . . . . . . . . . . . . . . . . 22
3 Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.1 Preprocessing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.2 Whitespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.4 Symbols . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.5 Statements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
3.6 Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.1 Character Constants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.1.1 Strings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.6.1.2 Characters. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6.2 Number Constants. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6.2.1 Integers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.6.2.2 Bignums. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3.6.2.3 Flonums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

ii Using as
4 Sections and Relocation . . . . . . . . . . . . . . . . . . . 29
4.1 Background. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.2 Linker Sections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
4.3 Assembler I nternal Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.4 Sub-Sections . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
4.5 bss Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
5 Symbols. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.1 Labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.2 Giving Symbols Other Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.3 Symbol Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
5.4 The Special Dot Symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5 Symbol Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5.1 Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5.2 Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5.3 Symbol Attributes: a.out . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
5.5.3.1 Descriptor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.5.3.2 Other . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.5.4 Symbol Attributes for COFF . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.5.4.1 Primary Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.5.4.2 Auxiliary Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
5.5.5 Symbol Attributes for SOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38
6 Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.1 Empty Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2 Integer Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2.1 Arguments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2.2 Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2.3 Prefix Operator. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
6.2.4 Infix Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
7 Assembler Directi ves. . . . . . . . . . . . . . . . . . . . . . 43
7.1 .abort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.2 .ABORT (COFF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
7.3 .align abs-expr, abs-expr, abs-expr . . . . . . . . . . . . . . . . . . . . . 43
7.4 .ascii "string". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.5 .asciz "string". . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.6 .balign[wl] abs-expr, abs-expr, abs-expr . . . . . . . . . . . . . . . 44
7.7 .byte expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.8 .comm symbol , length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
7.9 .cfi_startproc [simple]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.10 .cfi_endproc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.11 .cfi_personality encoding [, exp ] . . . . . . . . . . . . . . . . . . . . . . 45
7.12 .cfi_lsda encoding [, exp ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.13 .cfi_def_cfa register, offset . . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.14 .cfi_def_cfa_register register . . . . . . . . . . . . . . . . . . . . . . . . . 45
7.15 .cfi_def_cfa_offset offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

iii
7.16 .cfi_adjust_cfa_offset offset . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.17 .cfi_offset register, offset . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.18 .cfi_rel_offset register, offset . . . . . . . . . . . . . . . . . . . . . . . 46
7.19 .cfi_register register1, register2 . . . . . . . . . . . . . . . . . . . . 46
7.20 .cfi_restore register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.21 .cfi_undefined register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.22 .cfi_same_value register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.23 .cfi_remember_state, . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.24 .cfi_return_column register . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.25 .cfi_signal_frame . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
7.26 .cfi_window_save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.27 .cfi_escape expression[, . . . ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.28 .cfi_val_encoded_addr register, encoding, label . . . . . . 47
7.29 .file fileno filename . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47
7.30 .loc fileno lineno [column ] [options ] . . . . . . . . . . . . . . . . . 47
7.31 .loc_mark_labels enable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.32 .data subsection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.33 .def name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.34 .desc symbol, abs-expression . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.35 .dim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.36 .double flonums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.37 .eject . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.38 .else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
7.39 .elseif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.40 .end . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.41 .endef . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.42 .endfunc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.43 .endif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.44 .equ symbol, expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.45 .equiv symbol, expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.46 .eqv symbol, expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
7.47 .err . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.48 .error "string" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.49 .exitm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.50 .extern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.51 .fail expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.52 .file string . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.53 .fill repeat , size , value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
7.54 .float flonums . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.55 .func name[,label ]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.56 .global symbol, .globl symbol . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.57 .gnu_attribute tag,value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.58 .hidden names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.59 .hword expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
7.60 .ident . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.61 .if absolute expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
7.62 .incbin "file"[,skip [,count ]] . . . . . . . . . . . . . . . . . . . . . . . . . 53
7.63 .include "file" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
剩余285页未读,继续阅读
















安全验证
文档复制为VIP权益,开通VIP直接复制

评论3