68000 Motherboard User’s Manual
Rev. A
Page 11 of 54
These basic functions are the microprocessor instructions. Microprocessor instructions
are the most fundamental building blocks of any program. Any program is composed of
these individual steps that are carried out directly in the computer hardware. The specific
vocabulary of these primitive program operations is defined by the particular
microprocessor in use. This vocabulary is referred to as the instruction set of the
processor. Although largely comparable in the suite of available functions, each
processor architecture’s instruction set is unique. Frequently encountered instructions
include arithmetic operations, like ADD, SUB or Boolean logic operations like AND, OR
and NOT. Program flow is controlled with conditional branch instructions that choose
the program’s next step based on data comparisons, such as ‘Branch if EQual,’ BEQ,
which only redirects program execution to the specified branch location if data compared
in a previous instruction has signaled a match. Data may be transferred between the
processor, memory and peripheral devices with the wide range of MOVE instructions.
Each processor has its own flavor of these basic functions.
Other aspects of the processor’s design are unique to its architecture. Another example
of this is the processor’s registers. Registers function as the short-term memory of the
processor, operating very fast and being directly accessible by the majority of processor
instructions. While the computer’s expansive RAM memory may be used for storing
large amounts of data being operated on, the registers keep immediate track of the
algorithm being executed. A register may be thought of as memory for a single, general-
purpose variable held within the processor. In practice, many microprocessor
instructions that make up a typical program involve performing arithmetic and
comparison operations on register data, as well as moving data between those registers
and devices of the Data Bus, such as system memory or peripheral devices.
The program snippet in Table 4 below provides an assembly language example of
microprocessor instruction coding. Assembly language is a convenient means of writing
the program’s processor instructions in an easily readable form, since the actual program
instructions exist as numerical codes. Assembly language coding is made up of the
individual instructions of the program. Each instruction defines the basic operation at
that step in the program to perform. The type of basic operation is indicated by the
instruction mnemonic, such as whether the step is to transfer data, perform an arithmetic
operation or redirect the sequence of program execution. The instruction may also
include operands to indicate on what to operate. Operands may include registers or
memory locations to be used in the operation, or numeric data to be incorporated into the
operation. The actual numerical codes interpreted by the microprocessor are referred to
as Op Codes. This snippet demonstrates some initialization functions typical at the start
of a program.
Note that labels are used in place of numerical data in some places in the assembly code
listing, such as references to ONBD_BANK0 for the starting address of on-board RAM
or ONBD_BANK0_SZ for the size of that on-board RAM. These labels allow a
symbolic representation of a number for improved readability.
Summary of Contents for MB68k-100
Page 1: ...Rev A Grant K c 2011 ...