absolute address |
A virtual (not physical) address within the process’ address space that is computed as an absolute number. |
alias |
One identifier becomes equivalent to another identifier. |
application registers |
Special purpose registers for various functions. Some of the more commonly used registers have assembler aliases. For example, ar66 is used as the Epilogue Counter and is also called ar.ec. See alias. |
assembler |
A program that translates Assembly language into machine language. |
Assembly language |
A low level symbolic language closely resembling machine-code language. |
big-endian |
A method of storing a number so that the most significant byte is stored in the first byte addressed. |
binding |
The process of resolving a symbolic reference in one module by finding the definition of the symbol in another module, and substituting the address of the definition in place of the symbolic reference. The linker binds relocatable object modules together, and the DLL loader binds executable load modules. When searching for a definition, the linker and DLL loader search each module in a certain order, so that a definition of a symbol in one module has precedence over a definition of the same symbol in a later module. This order is called the binding order. |
bundle |
128 bits that include three instructions and a template field. |
COFF |
Common Object File Format; an object-module format. |
data elements |
Data elements can be bytes, words, doublewords, or quadwords. The MMX‘ technology packs data elements into newly defined packed data types: groups of 8 bytes, 4 words, or 2 doublewords, packed into 64-bit quantities. |
directive |
An assembly language statement that does not produce executable code. |
GB |
Gigabytes. |
global symbol |
Symbol visible outside the compilation unit in which it is defined. |
IA-32 |
Intel Architecture-32; the name for Intel’s 32-bit Instruction Set Architecture (ISA). |
IA-32 system environment |
The system environment as defined by the Pentium® and Pentium Pro processors. |
index register |
Any of these general registers: eax, ebc, ecx, edx, ebp, esp, esi, and edi. |
instruction |
An operation code (opcode) that performs a specific machine operation. |
instruction group |
Itanium® architecture instructions are organized in instruction groups. Each instruction group contains one or more statically contiguous instructions that execute in parallel. An instruction group must contain at least one instruction; there is no upper limit on the number of instructions in an instruction group. An instruction group is terminated statically by a stop, and dynamically by taken branches. Stops are represented by a double semi-colon (;;). You can explicitly define stops. Stops immediately follow an instruction, or appear on a separate line. They can be inserted between two instructions on the same line, as a semi-colon (;) is used to separate two instructions. |
Instruction Pointer (IP) |
A 64-bit instruction that holds the address of the bundle which contains the currently executing instruction. The IP is incremented as instructions are executed and can be set to a new value with a branch. |
Instruction Set Architecture |
The architecture that defines application level resources, including user-level instructions and user-visible register files. |
IP |
See instruction pointer. |
IP-relative addressing |
Code that uses its own address (commonly called the program counter, or "PC"; in Itanium architecture this is also called the instruction pointer, or IP) as a base register for addressing other code and data. |
ISA |
See Instruction Set Architecture. |
KB |
Kilobytes. |
little-endian |
A method of storing a number so that the least significant byte is stored at the lowest addressed byte. |
load module |
An executable unit produced by the linker, either a main program or a DLL. A program consists of at least a main program, and may also require one or more DLLs to satisfy its dependencies. |
MB |
Megabytes. |
nop |
A "no operation" instruction is a real instruction for the processor, where the processor takes no action. |
OMF |
Object Module Format. Object module's internal structure and content. COFF is an example of an OMF. |
predicate registers |
64 1-bit predicate registers that control the execution of instructions. The first register, P0, is always treated as 1. |
predication |
The conditional execution of an instruction used to remove branches from code. |
privileged instruction section |
Portions of object file, such as code or data, bound into one unit. |
shared symbol |
Symbols that can be exported by or imported to all object files combined by the dynamic linker. |
statement |
An Assembly-language program consists of a series of statements. There are five primary types of Assembly-language statements: instruction statements |
stop |
Indicates the end of an instruction group. |
symbol declaration |
The symbol address is resolved, not necessarily based on the current module. Declare symbols using a .global or .weak directive. |
token |
A minimal lexical element of Assembly language. A token consists of a sequence of one or more adjacent characters. |