The term ‘architecture’ is overused these days almost to the point of being meaningless, but in technical terms, its definition is precise and very simple.
An instruction-set architecture is simply the list of instructions a processor knows and can perform, and the way in which these instructions are used. It’s no more an architecture than the directions on the side of a packet of rolled oats are an architecture for making porridge.
However, many people, and therefore marketing departments, like impressive-sounding words, so it ends up being referred to as the x86 architecture, rather than a more helpful name such as the x86 instruction format.
The individual instructions that make up an instruction set have
mnemonic names that describe their function. In the original 8086
specification, these were pretty self-explanatory; the ADD instruction,
for instance, adds two numbers together. There are now hundreds of x86
instructions, as the list has continued to grow, but they’re all at
least vaguely descriptive. ADD is a good example of a common feature of
most (but not all) practical instructions – they contain the
instruction itself and some data. In machine-language terms, the name
of the instruction is known as the opcode (sometimes the operator), and
the data is known as the operand. An instruction only ever has one
opcode, but can have more than one operand. The formal definition for
the x86 ADD instruction is as follows:
ADD src, dest
When
an x86 processor encounters an ADD opcode, it expects two operands: a
source value and destination value. It will then fetch the source value
from its location and add it to the destination value. These are called
source and destination because, at the machine-language level, data is
manipulated using one of the processor’s local registers, which are
small, dedicated areas of memory that contain just one number. The ADD
instruction fetches the value of one register, adds it to the value of
the second register, and then stores the result in the location of the
latter.
Fastest, cheapest 3G mobile broadband dongles from 3, Vodafone, T-Mobile and Orange
from just £10/month