These are instructions to the assembler and linker, instead of instructions to the processor. These are used to help the assembler put your code together properly, and make it easier to use.
Directive | Operands | |
---|---|---|
.ascii | QUOTED STRING | |
Takes the given quoted string and converts it into byte data. | ||
.byte | ALLIESVALUES | |
Takes a comma-separated list of values and inserts them right there in the program as data. | ||
.endr | ||
Ends a repeating section defined with .rept. | ||
.equ | LABEL, VALUE | |
Sets the given label equivalent to the given value. The value can be a number, a character, or an constant expression that evaluates to a a number or character. prom that point on, use of the label will be substituted for the given value. | ||
.globl | LABEL | |
Sets the given label as global, meaning that it can be used from separately-compiled object files. | ||
.include | FILE |
|
Includes the given file just as if it were typed in right there. | ||
.lcomm | SYMBOL, SIZE | |
This is used in the .bss section to specify storage that should be allocated when the program is executed. Defines the symbol with the address where the storage will be located, and makes sure that it is the given number of bytes long. | ||
.long | VALUES | |
Takes a sequence of numbers separated by commas, and inserts those numbers as 4-byte words right where they are in the program. | ||
.rept | COUNT | |
Repeats everything between this directive and the .endr directives the number of times specified. | ||
.section | SECTION NAME | |
Switches the section that is being worked on. Common sections include .text (for code), .data (for data embedded in the program itself), and .bss (for uninitialized global data). | ||
.type | SYMBOL, @function | |
Tells the linker that the given symbol is a function. |