Instruction Summary

This is a summary of 4004 instructions.

Abbreviations used are as follows:

Abbreviation

Description

A

Accumulator.

A n

Bit n in the accumulator, where n may have any value from 0 to 3.

ADDR

A read-only memory or program random-access memory address.

carry

The carry bit.

PC

The 12-bit Program Counter.

PCH

The high-order 4 bits of the Program Counter.

PCL

The low-order 4 bits of the Program Counter.

PCM

The middle 4 bits of the Program Counter.

RAM

Random Access Memory.

REG

Any index register from 0 to 15.

R0

Index Register 0.

R1

Index Register 1.

ROM

Read Only Memory.

RP

Any index register pair from 0P to 7P.

STK

The address stack

../../_images/complement-value.png

The number obtained by complementing each bit of “value”.

X:Y

The value obtained by concatenating the values X and Y.

[ ]

An optional field enclosed by brackets.

( )

Contents of register or memory enclosed by parentheses.

../../_images/left-arrow.png

Replace value on left hand side of arrow with value on right hand side.

Instruction Summary

Group

Definition

Index Register Instructions

Instructions which involve index registers or
register pairs.

Index Register to Accumulator Instructions

Instructions which involve an operation between
an index register and the accumulator.
Instructions in this class occupy one byte.

Accumulator Instructions

Instructions which operate only on the contents
of the accumulator and/or the carry bit.
Instructions in this class occupy one byte.

Immediate Instructions

Instructions which use data that is part of the
instruction itself.

Transfer Of Control Instructions

Instructions which alter the normal execution
sequence of instructions.

Subroutine Linkage Instructions

Instructions which call and cause return from
subroutines.
They cause a transfer of program control and
use the address stack.

No-Operation Instruction

This instruction occupies one byte.

Memory Selection Instructions

Instructions which specify DATA RAM data and
status characters, RAM output ports and ROM
input and output ports to be
operated on by I/O and RAM instructions

Input/Output and RAM Instructions

Instructions which access DATA RAM
characters or perform input or output
operations.
One instruction, WPM, allows the programmer
to read or write 8-bit program RAM locations.
These instructions use addresses selected by
the DCL and SRC instructions.