Skip to content

9618 · 4.2

Assembly Language flashcards

Revision flashcards for Cambridge 9618 Assembly Language (syllabus 4.2). Flip, recall, then mark a real past-paper question.

  • Card

    Mnemonic

    A short, memorable abbreviation for an assembly language instruction, representing a machine operation. For example, `LDR` for 'Load Register'.

  • Card

    Opcode (Operation Code)

    The portion of a machine code instruction that specifies the operation to be performed by the CPU. It's the binary equivalent of a mnemonic.

  • Card

    Operand

    The part of an instruction that specifies the data to be operated on or the address of that data. It follows the opcode.

  • Card

    Assembler

    A system software program that translates assembly language source code into machine code (object code). It maintains a one-to-one correspondence between assembly instructions and machine instructions.

  • Card

    Accumulator (ACC)

    A special-purpose register within the CPU where intermediate results of arithmetic and logic operations are temporarily stored.

  • Card

    Index Register (IX)

    A CPU register used for modifying operand addresses during the run of a program, typically for accessing elements in an array or data structure. It's key for indexed addressing.

  • Card

    Program Counter (PC)

    A register that holds the memory address of the next instruction to be fetched. It automatically increments after an instruction is fetched, ensuring sequential execution unless a jump instruction alters it.

  • Card

    Immediate Addressing

    An addressing mode where the operand is the actual value to be used in the operation. In the Cambridge syllabus, this is denoted by a '#' symbol, e.g., `ADD #5` adds the value 5 to the Accumulator.

  • Card

    Direct Addressing

    An addressing mode where the operand is the memory address of the data to be used. E.g., `LDR 250` loads the value *from* memory location 250 into the Accumulator.

  • Card

    Indexed Addressing

    An addressing mode where the effective memory address is calculated by adding the contents of the Index Register (IX) to a base address specified in the instruction. E.g., `LDR 200,X` loads from address `200 + [contents of IX]`.

  • Card

    Symbolic Addressing

    Using a label (a symbol like `LOOP` or `DATA_START`) to represent a memory address. The assembler resolves these labels into actual numeric addresses during the assembly process.

  • Card

    Common Exam Trap: Immediate vs Direct

    Do not confuse `LDM #100` (load the number 100 into the ACC) with `LDR 100` (load the contents of memory address 100 into the ACC). The '#' makes all the difference.