System information

3.4.8 The DS Directive
The DS statement is used to reserve an area of uninitialized memory, and takes the form:
label DS expression
where the label is optional. The assembler begins subsequent code generation after the area
reserved by the DS. Thus, the DS statement given above has exactly the same effect as the
following statement:
label: EQU $ ;LABEL VALUE IS CURRENT CODE LOCATION
ORG $+expression ;MOVE PAST RESERVED AREA
3.5 Operation Codes
Assembly-language operation codes form the principal part of assembly-language programs and
form the operation field of the instruction. In general, ASM accepts all the standard mnemonics
for the Intel 8080 microcomputer, which are given in detail in the Intel 8080 Assembly Language
Programming Manual. Labels are optional on each input line. The individual operators are listed
briefly in the following sections for completeness, although the Intel manuals should be
referenced for exact operator details. In Tables 3-4 through 3-8, bit values have the following
meaning:
-e3 represents a 3-bit value in the range 0-7 that can be one of the predefined registers A, B,
C, D, E, H, L, M, SP, or PSW.
-e8 represents an 8-bit value in the range 0-255.
-e16 represents a 16-bit value in the range 0-65535.
These expressions can be formed from an arbitrary combination of operands and operators. In
some cases, the operands are restricted to particular values within the allowable range, such as
the PUSH instruction. These cases are noted as they are encountered.
In the sections that follow, each operation code is listed in its most general form, along with a
specific example, a short explanation, and special restrictions.
3.4 Assembler Directives CP/M Operating System Manual
3-16