# NASM - The Netwide Assembler

version 2.15.02

## Index

- `!` operator: Section 3.5.12
- `!=` operator: Section 3.5.5
- `$$` token: Section 3.5, Section 8.9.3
- `$`, Here token: Section 3.5
- `$`, prefix: Section 3.1, Section 3.4.1, Section 8.13.2
- `%` operator: Section 3.5.11
- `%!`: Section 4.11.2
- `%$` and `%$$` prefixes: Section 4.7.2
- `%%` operator: Section 3.5.11, Section 4.3.2
- `%+`: Section 4.1.4
- `%,`: Section 4.1.11
- `%?`: Section 4.1.5
- `%??`: Section 4.1.5
- `%[`: Section 4.1.3
- `%` prefix to `DB` lists: Section 3.2.1
- `&` operator: Section 3.5.8
- `&&` operator: Section 3.5.4
- `*` operator: Section 3.5.11
- `+` modifier: Section 4.3.3
- `+` operator, binary: Section 3.5.10
- `+` operator, unary: Section 3.5.12
- `-` operator, binary: Section 3.5.10
- `-` operator, unary: Section 3.5.12
- `..@` symbol prefix: Section 3.9, Section 4.3.2
- `/` operator: Section 3.5.11
- `//` operator: Section 3.5.11
- `<` operator: Section 3.5.5
- `<<` operator: Section 3.5.9
- `<<<` operator: Section 3.5.9
- `<=` operator: Section 3.5.5
- `<=>` operator: Section 3.5.5
- `<>` operator: Section 3.5.5
- `=` operator: Section 3.5.5
- `==` operator: Section 3.5.5
- `>` operator: Section 3.5.5
- `>=` operator: Section 3.5.5
- `>>` operator: Section 3.5.9
- `>>>` operator: Section 3.5.9
- `?`, data syntax: Section 3.2.1, Section 3.2.2
- `?`, operator: Section 3.5.1
- `^` operator: Section 3.5.7
- `^^` operator: Section 3.5.3
- `|` operator: Section 3.5.6
- `||` operator: Section 3.5.2
- `~` operator:
- ~ opunary: Section 3.5.12
- `%0` parameter count: Section 4.3.5, Section 4.3.6
- `%00`: Section 4.3.7
- `%+1` and `%-1` syntax: Section 4.3.10
- 16-bit mode, versus 32-bit mode: Section 7.1
- 1's complement: Section 3.5.12
- 2's complement: Section 3.5.12
- 64-bit displacement: Section 12.2
- 64-bit immediate: Section 12.2
- `-a` option: Section 2.1.23, Section A.2.3
- `A16`: Section 3.1, Section 11.3
- `A32`: Section 3.1, Section 11.3
- `A64`: Section 3.1, Section 11.3
- `a86`: Section 2.2, Section 2.2.2, Section 2.2.6
- `ABS`: Section 3.3, Section 7.2.1
- `ABSOLUTE`: Section 7.4, Section 8.4.1
- addition: Section 3.5.10
- addressing, mixed-size: Section 11.2
- address-size prefixes: Section 3.1
- algebra: Section 3.3
- `ALIGN`: Section 5.10.1, Section 6.2, Section 8.1.2, Section 8.4.1
- `ALIGN`, smart: Section 6.2
- align, elf attribute: Section 8.9.2
- `ALIGNB`: Section 5.10.1
- alignment: Section 5.10
- alignment, in `bin` sections: Section 8.1.2
- alignment, in ELF sections: Section 8.9.2
- alignment, in `obj` sections: Section 8.4.1
- alignment, in `win32` sections: Section 8.5.1
- alignment, of ELF common variables: Section 8.9.7
- `ALIGNMODE`: Section 6.2
- `__?ALIGNMODE?__`: Section 6.2
- `ALINK`: Section 9.1.1
- `alink.sourceforge.net`: Section 9.1.1
- `all`: Section 2.1.26
- `alloc`: Section 8.9.2
- alternate register names: Section 6.1
- `altreg`: Section 6.1
- ambiguity: Section 2.2.3
- `a.out`, BSD version: Section 8.11
- `a.out`, Linux version: Section 8.10
- `aout`: Section 8.10
- `aoutb`: Section 8.11, Section 10.2
- `%arg`: Section 4.8.1
- `arg`: Section 9.4.5, Section 10.1.4
- `as86`: Section 8.12
- assembler directives: Chapter 7
- assembly-time options: Section 2.1.20
- `%assign`: Section 4.1.7
- `ASSUME`: Section 2.2.4
- `AT`: Section 5.9.2
- `auto-sync`: Section A.2.3
- `-b`: Section A.2
- `bad-pragma`: Section 2.1.26
- `--before`: Section 2.1.30
- `bin` output format: Section 2.1.2, Section 8.1
- bin, multisection: Section 8.1.3
- binary: Section 3.4.1
- binary files: Section 3.2.3
- bit shift: Section 3.5.9
- `BITS`: Section 7.1, Section 8.1
- `__?BITS?__`: Section 5.3
- bitwise AND: Section 3.5.8
- bitwise OR: Section 3.5.6
- bitwise XOR: Section 3.5.7
- block IFs: Section 4.7.6
- `BND`: Section 7.2.2
- `bnd`: Section 2.1.26
- boolean, AND: Section 3.5.4
- boolean, OR: Section 3.5.2
- boolean, XOR: Section 3.5.3
- boot loader: Section 8.1
- boot sector: Section 13.1.3
- Borland, Pascal: Section 9.5
- Borland, Win32 compilers: Section 8.4
- braces, after `%` sign: Section 4.3.9
- braces, around macro parameters: Section 4.3
- BSD: Section 10.2
- `.bss`: Section 8.9.2, Section 8.10, Section 8.11, Section 8.12, Section 8.13
- bug tracker: Section E.2
- bugs: Section E.2
- `BYTE`: Section 13.1.1
- C calling convention: Section 9.4.3, Section 10.1.2
- C symbol names: Section 9.4.1
- `c16.mac`: Section 9.4.5, Section 9.5.3
- `c32.mac`: Section 10.1.4
- `CALL FAR`: Section 3.6
- case sensitivity: Section 2.2.1, Section 4.1.1, Section 4.1.2, Section 4.1.7, Section 4.3, Section 4.4.5, Section 8.4.3
- changing sections: Section 7.3
- character constant: Section 3.2.1, Section 3.4.3
- character strings: Section 3.4.2
- circular references: Section 4.1.1
- `CLASS`: Section 8.4.1
- `%clear`: Section 4.11.3, Chapter 5
- CodeView debugging format: Section 8.5.3
- `coff`: Section 8.7
- colon: Section 3.1
- `.COM`: Section 8.1, Section 9.2
- comma: Section 4.3.4
- command-line: Section 2.1, Chapter 8
- commas in macro parameters: Section 4.3.3
- `.comment`: Section 8.9.2
- `COMMON`: Section 7.8, Section 8.4.1
- `COMMON`, ELF extensions to: Section 8.9.7
- `COMMON`, `obj` extensions to: Section 8.4.8
- Common Object File Format: Section 8.7
- common variables: Section 7.8
- common variables, alignment in ELF: Section 8.9.7
- common variables, element size: Section 8.4.8
- comparison operators: Section 3.5.5
- `comp.os.msdos.programmer`: Section 9.3
- concatenating macro parameters: Section 4.3.9
- concatenating strings: Section 4.2.1
- condition codes as macro parameters: Section 4.3.10
- conditional assembly: Section 4.4
- conditional comma operator: Section 4.1.11
- conditional jumps: Section 13.1.2
- conditional-return macro: Section 4.3.10
- constants: Section 3.4
- context fall-through lookup: Section 4.7.4
- context stack: Section 4.7, Section 4.7.6
- context-local labels: Section 4.7.2
- context-local single-line macros: Section 4.7.3
- counting macro parameters: Section 4.3.6
- `CPU`: Section 7.11
- `CPUID`: Section 3.4.3
- creating contexts: Section 4.7.1
- critical expression: Section 3.2.2, Section 3.8, Section 4.1.7, Section 7.4
- \c{section: Section 8.1.2
- `cv8`: Section 8.5.3
- `-D` option: Section 2.1.20
- `-d` option: Section 2.1.20
- daily development snapshots: Section E.1
- `.data`: Section 8.9.2, Section 8.10, Section 8.11, Section 8.12, Section 8.13
- `_DATA`: Section 9.4.2
- `data`: Section 8.9.5, Section 8.13.3
- data structure: Section 9.4.4, Section 10.1.3
- `__?DATE?__`: Section 5.6
- `__?DATE_NUM?__`: Section 5.6
- `DB`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- `db-empty`: Section 2.1.26
- `dbg`: Section 8.14
- `DD`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- debug information: Section 2.1.14
- debug information format: Section 2.1.13
- `__?DEBUG_FORMAT?__`: Section 5.5
- decimal: Section 3.4.1
- declaring structures: Section 5.9.1
- `%defalias`: Section 4.1.10
- `DEFAULT`: Section 7.2
- `default`: Section 8.9.5
- default macro parameters: Section 4.3.5
- default name: Chapter 8
- default-`WRT` mechanism: Section 8.4.7
- `%define`: Section 2.1.20, Section 4.1.1
- defining sections: Section 7.3
- `%defstr`: Section 4.1.8
- `%deftok`: Section 4.1.9
- `%depend`: Section 4.6.3
- design goals: Section 2.2.2
- DevPac: Section 3.9
- disabling listing expansion: Section 4.3.11
- division: Section 3.5.11
- division, signed: Section 3.5.11
- division, unsigned: Section 3.5.11
- DJGPP: Section 8.7, Chapter 10
- `djlink`: Section 9.1.1
- DLL symbols, exporting: Section 8.4.5
- DLL symbols, importing: Section 8.4.4
- `DO`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- DOS: Section 2.1.16, Section 2.1.17
- `DQ`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- `.drectve`: Section 8.5.1
- `DT`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- `DUP`: Section 3.2.1, Section 3.2.2, Section 3.2.5
- `DW`: Section 3.2, Section 3.2.1, Section 3.4.4, Section 3.4.6
- `DWORD`: Section 3.1
- `DY`: Section 3.2, Section 3.2.1, Section 3.4.4
- `DZ`: Section 3.2, Section 3.2.1
- `-E` option: Section 2.1.22
- `-e` option: Section 2.1.22, Section A.2.4
- effective addresses: Section 3.1, Section 3.3
- element size, in common variables: Section 8.4.8
- ELF: Section 8.9
- ELF, shared libraries: Section 8.9.5
- ELF, 16-bit code: Section 8.9.8
- ELF, debug formats: Section 8.9.9
- `elf32`: Section 8.9
- `elf64`: Section 8.9
- `elfx32`: Section 8.9
- `%elif`: Section 4.4, Section 4.4.4
- `%elifctx`: Section 4.4.3
- `%elifdef`: Section 4.4.1
- `%elifempty`: Section 4.4.8
- `%elifenv`: Section 4.4.9
- `%elifid`: Section 4.4.6
- `%elifidn`: Section 4.4.5
- `%elifidni`: Section 4.4.5
- `%elifmacro`: Section 4.4.2
- `%elifn`: Section 4.4, Section 4.4.4
- `%elifnctx`: Section 4.4.3
- `%elifndef`: Section 4.4.1
- `%elifnempty`: Section 4.4.8
- `%elifnenv`: Section 4.4.9
- `%elifnid`: Section 4.4.6
- `%elifnidn`: Section 4.4.5
- `%elifnidni`: Section 4.4.5
- `%elifnmacro`: Section 4.4.2
- `%elifnnum`: Section 4.4.6
- `%elifnstr`: Section 4.4.6
- `%elifntoken`: Section 4.4.7
- `%elifnum`: Section 4.4.6
- `%elifstr`: Section 4.4.6
- `%eliftoken`: Section 4.4.7
- `%else`: Section 4.4
- `endproc`: Section 9.4.5, Section 10.1.4
- `%endrep`: Section 4.5
- `ENDSTRUC`: Section 5.9.1, Section 7.4
- `environment`: Section 2.1.26, Section 2.1.34
- `EQU`: Section 3.2, Section 3.2.4
- `%error`: Section 4.9
- error messages: Section 2.1.16, Section 2.1.17
- error reporting format: Section 2.1.15
- escape sequences: Section 3.4.2
- `EVEN`: Section 5.10.1
- exact matches: Section 4.3.12
- `.EXE`: Section 8.4, Section 9.1
- `EXE2BIN`: Section 9.2.2
- `EXE_begin`: Section 9.1.2
- `exebin.mac`: Section 9.1.2
- `exec`: Section 8.9.2
- Executable and Linkable Format: Section 8.9
- `EXE_end`: Section 9.1.2
- `EXE_stack`: Section 9.1.2
- `%exitrep`: Section 4.5
- `EXPORT`: Section 8.4.5
- `export`: Section 8.13.3
- exporting symbols: Section 7.7
- expressions: Section 2.1.22, Section 3.5
- extension: Section 2.1.1, Chapter 8
- `EXTERN`: Section 7.5
- `EXTERN`, `elf` extensions to: Section 8.9.6
- `EXTERN`, `obj` extensions to: Section 8.4.7
- `EXTERN`, `rdf` extensions to: Section 8.13.4
- extracting substrings: Section 4.2.3
- `-F` option: Section 2.1.13
- `-f` option: Section 2.1.2, Chapter 8
- far call: Section 2.2.5
- far common variables: Section 8.4.8
- far pointer: Section 3.6
- `FARCODE`: Section 9.4.5, Section 9.5.3
- `%fatal`: Section 4.9
- `__?FILE?__`: Section 5.2
- `fini_array`: Section 8.9.2
- `FLAT`: Section 8.4.1
- flat memory model: Chapter 10
- flat-form binary: Section 8.1
- `FLOAT`: Section 7.12
- `__?FLOAT?__`: Section 7.12
- `float`: Section 2.1.26
- `__?float128h?__`: Section 3.4.6
- `__?float128l?__`: Section 3.4.6
- `__?float16?__`: Section 3.4.6
- `__?float32?__`: Section 3.4.6
- `__?float64?__`: Section 3.4.6
- `__?float8?__`: Section 3.4.6
- `__?float80e?__`: Section 3.4.6
- `__?float80m?__`: Section 3.4.6
- `__?FLOAT_DAZ?__`: Section 7.12
- `float-denorm`: Section 2.1.26
- floating-point, constants: Section 3.4.6, Section 7.12
- floating-point, packed BCD constants: Section 3.4.7
- floating-point: Section 2.2.6, Section 3.1, Section 3.2.1, Section 3.4.6
- `float-overflow`: Section 2.1.26
- `__?FLOAT_ROUND?__`: Section 7.12
- `float-toolong`: Section 2.1.26
- `float-underflow`: Section 2.1.26
- `follows=`: Section 8.1.3
- format-specific directives: Chapter 7
- `fp`: Section 6.3
- frame pointer: Section 9.4.3, Section 9.5.1, Section 10.1.2
- FreeBSD: Section 8.11, Section 10.2
- FreeLink: Section 9.1.1
- `ftp.simtel.net`: Section 9.1.1
- `function`: Section 8.9.5, Section 8.13.3
- functions, C calling convention: Section 9.4.3, Section 10.1.2
- functions, `PASCAL` calling convention: Section 9.5.1
- `-g` option: Section 2.1.14
- `git`: Section D.2
- `GLOBAL`: Section 7.7
- `GLOBAL`, `aoutb` extensions to: Section 8.9.5
- `GLOBAL`, ELF extensions to: Section 8.9.5
- `GLOBAL`, `rdf` extensions to: Section 8.13.3
- global offset table: Section 10.2
- `_GLOBAL_OFFSET_TABLE_`: Section 8.9.3
- `(G|L)POSTFIX`: Section 7.10
- `--(g|l)postfix`: Section 2.1.28
- `(G|L)PREFIX`: Section 7.10
- `--(g|l)prefix`: Section 2.1.28
- `..got`: Section 8.9.3
- `GOT` relocations: Section 10.2.3
- GOT: Section 8.9.3, Section 10.2
- `..gotoff`: Section 8.9.3
- `GOTOFF` relocations: Section 10.2.2
- `..gotpc`: Section 8.9.3
- `GOTPC` relocations: Section 10.2.1
- `..gottpoff`: Section 8.9.4
- graphics: Section 3.2.3
- greedy macro parameters: Section 4.3.3
- `GROUP`: Section 8.4.2
- groups: Section 3.6
- `-h`: Section A.2
- hexadecimal: Section 3.4.1
- `hidden`: Section 8.9.5
- `hle`: Section 2.1.26
- hybrid syntaxes: Section 2.2.2
- `-I` option: Section 2.1.18
- `-i` option: Section 2.1.18, Section A.2.3
- `%iassign`: Section 4.1.7
- `%idefalias`: Section 4.1.10
- `%idefine`: Section 4.1.1
- `%idefstr`: Section 4.1.8
- `%ideftok`: Section 4.1.9
- `IEND`: Section 5.9.2
- `%if`: Section 4.4, Section 4.4.4
- `%ifctx`: Section 4.4.3, Section 4.7.6
- `%ifdef`: Section 4.4.1
- `%ifempty`: Section 4.4.8
- `%ifenv`: Section 4.4.9
- `%ifid`: Section 4.4.6
- `%ifidn`: Section 4.4.5
- `%ifidni`: Section 4.4.5
- `%ifmacro`: Section 4.4.2
- `%ifn`: Section 4.4, Section 4.4.4
- `%ifnctx`: Section 4.4.3
- `%ifndef`: Section 4.4.1
- `%ifnempty`: Section 4.4.8
- `%ifnenv`: Section 4.4.9
- `%ifnid`: Section 4.4.6
- `%ifnidn`: Section 4.4.5
- `%ifnidni`: Section 4.4.5
- `%ifnmacro`: Section 4.4.2
- `%ifnnum`: Section 4.4.6
- `%ifnstr`: Section 4.4.6
- `%ifntoken`: Section 4.4.7
- `%ifnum`: Section 4.4.6
- `%ifstr`: Section 4.4.6
- `%iftoken`: Section 4.4.7
- `ifunc`: Section 6.4
- `ilog2()`: Section 6.4.1
- `ilog2c()`: Section 6.4.1
- `ilog2cw()`: Section 6.4.1
- `ilog2e()`: Section 6.4.1
- `ilog2f()`: Section 6.4.1
- `ilog2fw()`: Section 6.4.1
- `ilog2w()`: Section 6.4.1
- `%imacro`: Section 4.3
- `IMPORT`: Section 8.4.4
- import library: Section 8.4.4
- importing symbols: Section 7.5
- importing symbols, unconditionally: Section 7.6
- `INCBIN`: Section 3.2, Section 3.2.3, Section 3.4.4
- `%include`: Section 2.1.18, Section 2.1.19, Section 4.6.1
- include search path: Section 2.1.18
- including other files: Section 4.6.1
- inefficient code: Section 13.1.1
- infinite loop: Section 3.5
- `__?Infinity?__`: Section 3.4.6
- infinity: Section 3.4.6
- informational section: Section 8.5.1
- `init_array`: Section 8.9.2
- instances of structures: Section 5.9.2
- instruction list: Appendix B
- integer functions: Section 6.4
- integer logarithms: Section 6.4.1
- intel hex: Section 8.2
- Intel number formats: Section 3.4.6
- `internal`: Section 8.9.5
- `ISTRUC`: Section 5.9.2
- iterating over macro parameters: Section 4.3.8
- `ith`: Section 8.2
- `%ixdefine`: Section 4.1.2
- `Jcc NEAR`: Section 13.1.2
- `JMP DWORD`: Section 11.1
- jumps, mixed-size: Section 11.1
- `-k`: Section A.2.4
- `--keep-all`: Section 2.1.32
- `-L` option: Section 2.1.4
- `-l` option: Section 2.1.3
- `label`: Section 2.1.26
- label preceeding macro: Section 4.3.7
- label prefix: Section 3.9
- `label-orphan`: Section 2.1.26, Section 3.1
- `label-redef`: Section 2.1.26
- `label-redef-late`: Section 2.1.26
- last: Section 4.3.4
- `.lbss`: Section 8.9.2
- `ld86`: Section 8.12
- `.ldata`: Section 8.9.2
- `LIBRARY`: Section 8.13.1
- license: Section 1.1.1
- `--limit-X`: Section 2.1.31
- `%line`: Section 2.1.33, Section 4.11.1
- `__?LINE?__`: Section 5.2
- linker, free: Section 9.1.1
- Linux, `a.out`: Section 8.10
- Linux, `as86`: Section 8.12
- Linux, ELF: Section 8.9
- listing file: Section 2.1.3
- little-endian: Section 3.4.3
- `%local`: Section 4.8.3
- local labels: Section 3.9
- `lock`: Section 2.1.26
- `.lrodata`: Section 8.9.2
- `-M` option: Section 2.1.5
- Mach, object file format: Section 8.8
- Mach-O, object file format: Section 8.8
- `macho32`: Section 8.8
- `macho64`: Section 8.8
- MacOS X: Section 8.8
- `%macro`: Section 4.3
- `macro`: Section 2.1.26
- macro indirection: Section 4.1.3
- macro library: Section 2.1.18
- macro parameters range: Section 4.3.4
- macro processor: Chapter 4
- `macro-defaults`: Section 2.1.26
- macro-local labels: Section 4.3.2
- `macro-params`: Section 2.1.26
- `macro-params-legacy`: Section 2.1.26
- `macro-params-multi`: Section 2.1.26
- `macro-params-single`: Section 2.1.26
- macros: Section 3.2.5
- makefile dependencies: Section 2.1.5, Section 2.1.6
- map files: Section 8.1.4
- MASM: Section 2.2, Section 3.2.1, Section 3.2.5, Section 6.5, Section 8.4
- masm compatibility: Section 6.5
- MASM, `DB` syntax: Section 3.2.1, Section 3.2.2
- `-MD` option: Section 2.1.8
- memory models: Section 2.2.5, Section 9.4.2
- memory operand: Section 3.1
- memory references: Section 2.2.2, Section 3.3
- `merge`: Section 8.9.2
- `-MF` option: Section 2.1.7
- `-MG` option: Section 2.1.6
- Microsoft OMF: Section 8.4
- minifloat: Section 3.4.6
- Minix: Section 8.12
- `misc` subdirectory: Section 9.1.2, Section 9.4.5, Section 10.1.4
- mixed-language program: Section 9.4
- mixed-size addressing: Section 11.2
- mixed-size instruction: Section 11.1
- `MODULE`: Section 8.13.2
- modulo: Section 3.5.11
- modulo, signed: Section 3.5.11
- modulo, unsigned: Section 3.5.11
- motorola s-records: Section 8.3
- `-MP` option: Section 2.1.11
- `-MQ` option: Section 2.1.10
- MS-DOS: Section 8.1
- MS-DOS device drivers: Section 9.3
- `-MT` option: Section 2.1.9
- multi-line macros: Section 2.1.26, Section 4.3
- multipass optimization: Section 2.1.24
- multiple section names: Section 8.1
- multiplication: Section 3.5.11
- multiplier: Section 8.9.2
- `multipush` macro: Section 4.3.8
- multisection: Section 8.1.3
- `-MW` option: Section 2.1.12
- `__?NaN?__`: Section 3.4.6
- NaN: Section 3.4.6
- NASM version:
- NASM version, history: Appendix C
- NASM version, ID macro: Section 5.1.1
- NASM version, macros: Section 5.1
- NASM version, string macro: Section 5.1.2
- `__NASMDEFSEG`: Section 8.4
- `nasm-devel`: Section E.1.2
- `NASMENV`: Section 2.1.34
- `nasm -h`: Section 2.1.2
- `__?NASM_MAJOR?__`: Section 5.1
- `__?NASM_MINOR?__`: Section 5.1
- `nasm.out`: Section 2.1.1
- `__?NASM_PATCHLEVEL?__`: Section 5.1
- `__?NASM_SNAPSHOT?__`: Section 5.1
- `__?NASM_SUBMINOR?__`: Section 5.1
- `__?NASM_VER?__`: Section 5.1.2
- `__?NASM_VERSION_ID?__`: Section 5.1.1
- ndisasm: Appendix A
- near call: Section 2.2.5
- near common variables: Section 8.4.8
- negation, arithmetic: Section 3.5.12
- negation, bitwise: Section 3.5.12
- negation, boolean: Section 3.5.12
- negation, bitwise: Section 3.5.12
- negation, boolean: Section 3.5.12
- `negative-rep`: Section 2.1.26
- NetBSD: Section 8.11, Section 10.2
- new releases: Section E.1
- `noalloc`: Section 8.9.2
- `nobits`: Section 8.1.3, Section 8.9.2
- `NOBND`: Section 7.2.2
- `no_dead_strip`: Section 8.8.4
- `noexec`: Section 8.9.2
- `--no-line`: Section 2.1.33, Section 4.11.1
- `.nolist`: Section 4.3.11
- `note`: Section 8.9.2
- `not-my-pragma`: Section 2.1.26
- `nowait': Section 2.2.6
- `nowrite`: Section 8.9.2
- NSIS: Section D.1
- Nullsoft Scriptable Installer: Section D.1
- `number-overflow`: Section 2.1.26
- numeric constants: Section 3.2.1, Section 3.4.1
- `-O` option: Section 2.1.24
- `-o` option: Section 2.1.1, Section A.2.1
- `O16`: Section 3.1, Section 11.3
- `O32`: Section 3.1, Section 11.3
- `O64`: Section 3.1
- `.obj`: Section 9.1
- `obj`: Section 8.4
- `object`: Section 8.9.5, Section 8.13.3
- `obsolete`: Section 2.1.26
- `obsolete-nop`: Section 2.1.26
- `obsolete-removed`: Section 2.1.26
- `obsolete-valid`: Section 2.1.26
- octal: Section 3.4.1
- `OF_DEFAULT`: Section 2.1.2
- `OFFSET`: Section 2.2.2
- OMF: Section 8.4
- omitted parameters: Section 4.3.5
- OpenBSD: Section 8.11, Section 10.2
- operands: Section 3.1
- operand-size prefixes: Section 3.1
- operating system: Section 8.1
- operating system, writing: Section 11.1
- operators: Section 3.5
- operators, unary: Section 3.5.12
- `ORG`: Section 8.1.1, Section 9.2.1, Section 9.2.2, Section 13.1.3
- `orphan-labels`: Section 2.1.26
- OS/2: Section 8.4, Section 8.4.1
- `osabi`: Section 8.9.1
- `other`: Section 2.1.26
- other preprocessor directives: Section 4.11
- out of range, jumps: Section 13.1.2
- output file format: Section 2.1.2
- output formats: Chapter 8
- `__?OUTPUT_FORMAT?__`: Section 5.4
- overlapping segments: Section 3.6
- `OVERLAY`: Section 8.4.1
- overloading, multi-line macros: Section 4.3.1
- overloading, single-line macros: Section 4.1.1
- `-P` option: Section 2.1.19
- `-p` option: Section 2.1.19, Section 4.6.1
- paradox: Section 3.8
- `PASCAL`: Section 9.5.3
- Pascal calling convention: Section 9.5.1
- `__?PASS?__`: Section 5.8
- `%pathsearch`: Section 2.1.18, Section 4.6.2
- period: Section 3.9
- PharLap: Section 8.4.1
- `phase`: Section 2.1.26
- PIC: Section 8.9.3, Section 8.11, Section 10.2
- `..plt`: Section 8.9.3
- `PLT` relocations: Section 8.9.3, Section 10.2.4, Section 10.2.5
- plt relocations: Section 10.2.5
- pointer, elf attribute: Section 8.9.2
- `%pop`: Section 4.7, Section 4.7.1
- position-independent code: Section 8.9.3, Section 8.11, Section 10.2
- `%pragma`: Section 4.10
- `--pragma`: Section 2.1.29
- `pragma`: Section 2.1.26
- `pragma-bad`: Section 2.1.26
- `pragma-empty`: Section 2.1.26
- `pragma-na`: Section 2.1.26
- `pragma-unknown`: Section 2.1.26
- precedence: Section 3.5
- pre-defining macros: Section 2.1.20, Section 4.1.1
- preferred: Section 3.6
- pre-including files: Section 2.1.19
- `preinit_array`: Section 8.9.2
- preprocess-only mode: Section 2.1.22
- preprocessor: Section 2.1.22, Section 2.1.23, Section 3.2.4, Section 3.5.11, Chapter 4
- preprocessor expressions: Section 2.1.22
- preprocessor loops: Section 4.5
- preprocessor variables: Section 4.1.7
- primitive directives: Chapter 7
- `PRIVATE`: Section 8.4.1
- `private_extern`: Section 8.8.5
- `proc`: Section 8.13.3, Section 9.4.5, Section 10.1.4
- procedure linkage table: Section 8.9.3, Section 10.2.4, Section 10.2.5
- processor mode: Section 7.1
- `progbits`: Section 8.1.3, Section 8.9.2
- program entry point: Section 8.4.6, Section 9.1.1
- program origin: Section 8.1.1
- `protected`: Section 8.9.5
- pseudo-instructions: Section 3.2
- `ptr`: Section 2.1.26
- `PUBLIC`: Section 7.7, Section 8.4.1
- pure binary: Section 8.1
- `%push`: Section 4.7, Section 4.7.1
- `__?QNaN?__`: Section 3.4.6
- quick start: Section 2.2
- `QWORD`: Section 3.1
- `-r`: Section A.2
- `rdf`: Section 8.13
- `rdoff` subdirectory: Section 8.13
- redirecting errors: Section 2.1.16
- `regsize`: Section 2.1.26
- `REL`: Section 3.3, Section 7.2.1
- release candidates: Section E.1
- Relocatable Dynamic Object File Format: Section 8.13
- relocations, PIC-specific: Section 8.9.3
- removing contexts: Section 4.7.1
- renaming contexts: Section 4.7.5
- `%rep`: Section 3.2.5, Section 4.5
- repeating: Section 3.2.5, Section 4.5
- `%repl`: Section 4.7.5
- reporting bugs: Section E.2
- `REQUIRED`: Section 7.6
- `RESB`: Section 3.2, Section 3.2.2
- `RESD`: Section 3.2, Section 3.2.2
- `RESO`: Section 3.2, Section 3.2.2
- `RESQ`: Section 3.2, Section 3.2.2
- `REST`: Section 3.2, Section 3.2.2
- `RESW`: Section 3.2, Section 3.2.2
- `RESY`: Section 3.2, Section 3.2.2
- `RESZ`: Section 3.2, Section 3.2.2
- `.rodata`: Section 8.9.2
- `%rotate`: Section 4.3.8
- rotating macro parameters: Section 4.3.8
- `-s` option: Section 2.1.17, Section A.2.2
- searching for include files: Section 4.6.1
- `__?SECT?__`: Section 7.3.1, Section 7.4
- `SECTALIGN`: Section 5.10.2
- `SECTION`: Section 7.3
- `SECTION`, ELF extensions to: Section 8.9.2
- `SECTION`, `macho` extensions to: Section 8.8.1
- `SECTION`, Windows extensions to: Section 8.5.1
- section alignment, in `bin`: Section 8.1.2
- section alignment, in ELF: Section 8.9.2
- section alignment, in `obj`: Section 8.4.1
- section alignment, in `win32`: Section 8.5.1
- `SEG`: Section 3.6, Section 8.4
- `SEGMENT`: Section 7.3
- `SEGMENT`, `obj` extensions to: Section 8.4.1
- segment address: Section 3.5.12, Section 3.6
- segment alignment, in `bin`: Section 8.1.2
- segment alignment, in `obj`: Section 8.4.1
- segment names, Borland Pascal: Section 9.5.2
- segment override: Section 2.2.4, Section 3.1
- segments: Section 3.6
- segments, groups of: Section 8.4.2
- separator character: Section 2.1.34
- shared libraries: Section 8.11, Section 10.2
- `shift` command: Section 4.3.8
- signed, bit shift: Section 3.5.9
- signed, division: Section 3.5.11
- signed, modulo: Section 3.5.11
- single-line macros: Section 2.1.26, Section 4.1
- size, of symbols: Section 8.9.5
- `smartalign`: Section 6.2
- `__?SNaN?__`: Section 3.4.6
- snapshots, daily development: Section E.1
- Solaris x86: Section 8.9
- `-soname`: Section 10.2.6
- sound: Section 3.2.3
- source-listing file: Section 2.1.3
- square brackets: Section 2.2.2, Section 3.3
- `srec`: Section 8.3
- `STACK`: Section 8.4.1
- stack relative preprocessor directives: Section 4.8
- `%stacksize`: Section 4.8.2
- standard macro packages: Chapter 6
- standard macros: Chapter 5
- standardized section names: Section 7.3, Section 8.5.1, Section 8.9.2, Section 8.10, Section 8.11, Section 8.12, Section 8.13
- `..start`: Section 8.4.6, Section 9.1.1
- `start=`: Section 8.1.3
- `STATIC`: Section 7.9
- `stderr`: Section 2.1.16
- `stdout`: Section 2.1.17
- `%strcat`: Section 4.2.1
- `STRICT`: Section 3.7
- string: Section 3.4.2
- string, constants: Section 3.2.1, Section 3.4.2, Section 3.4.4
- string, length: Section 4.2.2
- string, manipulation in macros: Section 4.2
- strings, elf attribute: Section 8.9.2
- `%strlen`: Section 4.2.2
- `strong`: Section 8.9.5
- `STRUC`: Section 5.9.1, Section 7.4, Section 9.4.4, Section 10.1.3
- structure data types: Section 5.9
- stub preprocessor: Section 2.1.23
- `subsections_via_symbols`: Section 8.8.3
- `%substr`: Section 4.2.3
- subtraction: Section 3.5.10
- suppressing preprocessing: Section 2.1.23
- switching between sections: Section 7.3
- `..sym`: Section 8.9.3
- symbols, exporting from DLLs: Section 8.4.5
- symbols, importing from DLLs: Section 8.4.4
- symbols, specifying sizes: Section 8.9.5
- symbols, specifying types: Section 8.9.5
- synchronization: Section A.2.2
- `.SYS`: Section 8.1, Section 9.3
- `-t`: Section 2.1.25
- `TASM`: Section 2.1.25
- tasm: Section 2.2, Section 8.4
- `.tbss`: Section 8.9.2
- `TBYTE`: Section 2.2.7
- `.tdata`: Section 8.9.2
- `test` subdirectory: Section 9.1.1
- testing, arbitrary numeric expressions: Section 4.4.4
- testing, context stack: Section 4.4.3
- testing, exact text identity: Section 4.4.5
- testing, multi-line macro existence: Section 4.4.2
- testing, single-line macro existence: Section 4.4.1
- testing, token types: Section 4.4.6
- `.text`: Section 8.9.2, Section 8.10, Section 8.11, Section 8.12, Section 8.13
- `_TEXT`: Section 9.4.2
- thread local storage, in ELF: Section 8.9.4
- thread local storage, in `macho`: Section 8.8.2
- `__?TIME?__`: Section 5.6
- `__?TIME_NUM?__`: Section 5.6
- `TIMES`: Section 3.2, Section 3.2.5, Section 3.8, Section 13.1.3, Section 13.1.4
- `TLINK`: Section 9.2.2
- tls: Section 8.8.2, Section 8.9.2, Section 8.9.4
- `..tlsie`: Section 8.9.4
- trailing colon: Section 3.1
- `TWORD`: Section 2.2.7, Section 3.1
- type, of symbols: Section 8.9.5
- `-U` option: Section 2.1.21
- `-u` option: Section 2.1.21, Section A.2
- unary operators: Section 3.5.12
- `%undef`: Section 2.1.21, Section 4.1.6
- undefining macros: Section 2.1.21
- underscore, in C symbols: Section 9.4.1
- Unicode: Section 3.4.2, Section 3.4.5
- uninitialized storage: Section 2.2.7, Section 3.2, Section 3.2.1
- uninitialized: Section 3.2, Section 3.2.2
- Unix:
- Unix, SCO: Section 8.9
- Unix, System V: Section 8.9
- UnixWare: Section 8.9
- `unknown-pragma`: Section 2.1.26
- `unknown-warning`: Section 2.1.26
- `%unmacro`: Section 4.3.12
- unrolled loops: Section 3.2.5
- unsigned, bit shift: Section 3.5.9
- unsigned, division: Section 3.5.11
- unsigned, modulo: Section 3.5.11
- `UPPERCASE`: Section 2.2.1, Section 8.4.3
- `%use`: Section 4.6.4, Chapter 6
- `__?USE_*?__`: Section 5.7
- `USE16`: Section 7.1.1, Section 8.4.1
- `USE32`: Section 7.1.1, Section 8.4.1
- `user`: Section 2.1.26
- user-defined errors: Section 4.9
- user-level directives: Chapter 5, Chapter 7
- `__?UTC_DATE?__`: Section 5.6
- `__?UTC_DATE_NUM?__`: Section 5.6
- `__?UTC_TIME?__`: Section 5.6
- `__?UTC_TIME_NUM?__`: Section 5.6
- UTF-16: Section 3.4.5
- UTF-32: Section 3.4.5
- UTF-8: Section 3.4.2
- `__?utf16?__`: Section 3.4.5
- `__?utf16be?__`: Section 3.4.5
- `__?utf16le?__`: Section 3.4.5
- `__?utf32?__`: Section 3.4.5
- `__?utf32be?__`: Section 3.4.5
- `__?utf32le?__`: Section 3.4.5
- `--v`: Section 2.1.27
- `-v` option: Section 2.1.27
- VAL: Section 9.1.1
- valid characters: Section 3.1
- variable types: Section 2.2.3
- version number of nasm: Section 5.1
- version: Section 2.1.27
- `vfollows=`: Section 8.1.3
- Visual C++: Section 8.5
- `vstart=`: Section 8.1.3
- `-W` option: Section 2.1.26
- `-w` option: Section 2.1.26
- `%warning`: Section 4.9
- `[WARNING]`: Section 2.1.26, Section 7.13
- warning classes: Section 2.1.26
- warnings: Section 2.1.26
- `warn-stack-empty`: Section 2.1.26
- `weak`: Section 8.9.5, Section 8.9.6
- website: Section E.1
- `-Werror` option: Section 2.1.26
- Win32: Section 8.4, Section 8.5, Chapter 10
- Win64: Section 8.6, Chapter 12
- Windows: Section 9.1
- Windows, debugging formats: Section 8.5.3
- `-Wno-error` option: Section 2.1.26
- `write`: Section 8.9.2
- writing operating systems: Section 11.1
- `WRT`: Section 3.6, Section 8.4, Section 8.8.2, Section 8.9.3, Section 8.9.4, Section 8.11
- `WRT ..got`: Section 10.2.3
- `WRT ..gotoff`: Section 10.2.2
- `WRT ..gotpc`: Section 10.2.1
- `WRT ..plt`: Section 10.2.5
- `WRT ..sym`: Section 10.2.4
- `www.delorie.com`: Section 9.1.1
- `www.pcorner.com`: Section 9.1.1
- `-X` option: Section 2.1.15
- `x2ftp.oulu.fi`: Section 9.1.1
- x32: Section 8.9
- `%xdefine`: Section 4.1.2
- `-Z` option: Section 2.1.16
- `zeroing`: Section 2.1.26
- `zext-reloc`: Section 2.1.26