Although each Assembly Instruction Format has its own unique syntactical structure, such as requiring upper case or lower case, or requiring colons after label definitions we discuss the common features that assembler shares.
The assembly text is usually divided into fields, separated by spaces and tabs. A format for a typical line from assembly language program can be given as
Label : Mnemonic Operand1, Operand2 ; Comment
The first field, which is optional, is the label field, used to specify symbolic labels. A label is an identifier that is assigned to the address of the first byte of the instruction in which it appears. As mentioned earlier, the presence of a label is optional, but if present, the label provides a symbolic name that can be used in branch instructions to branch to the instruction.
The second field is mnemonic, which is compulsory. All instructions, must contain a mnemonic.
The third and following fields are operands. The presence of the operands depends on the instruction. Some instructions have no operands, some have one, and some have two. If there are two operands, they are separated by a comma.
The last field is a comment field. It begins with a delimiter such as the semicolon and continues to the end of the line. The comments are for our benefits, they tell us what the program is trying to accomplish. Fig. 8.2 shows a typical 8086 assembly language instruction.