5.1.1.1 Plain Program

A plain assembler program can consist of:

Example:

L1:     stt
pa1     jprob   0.5, L2         ; jump with probability 0.5
        foo     4               ; user instruction
        jmp     L1

L2:     bar     r3, 5           ; user instruction
        jmp     L1

Splitting Assembler Instructions into Multiple Lines

An assembler instruction can occupy multiple lines if split just after ‘,’ in its text outside of comments and string literals.

Example:

        point   1000, 2000, 3000,
                0.5, black, "star",
                path "a, b, c"

Location Labels

A location label always ends with ‘:’. The first character of a location label must be an English letter or the character ‘_’; every subsequent character except for the last character ‘:’ must be an English letter, digit, or ‘_’.

A location label can be on the same line as an assembler instruction.

Example:

finish: ret

A location label can precede a line with an assembler instruction.

Example:

error_exit:
        ret

An assembler instruction can have multiple location labels.

Examples:

skip_current_item:
move_to_next_item:
        skip

error_exit:

finish: ret

Data Labels

A data label always starts at column 1 and does not end with ‘:’. The first character of a data label must be an English letter or the character ‘_’; every subsequent character must be an English letter, digit, or ‘_’. An assembler instruction always follows a data label on the same line.

Example:

p_a1    jprob   0.5, L1