Instruction set architecture: Difference between revisions

From Citizendium
Jump to navigation Jump to search
imported>Howard Arvi Hughes
m (fixed cat)
imported>Pat Palmer
(revision of it all)
Line 1: Line 1:
The '''instruction set architecture''' ('''ISA'''), is a part of computer architecture related to programming, including the native data types, instructions, registers, addressing modes, memory architecture, interrupt and exception handling, and external I/O. An ISA includes a specification of the set of opcodes (machine language), the native commands used by a particular CPU design.
The '''instruction set architecture''' ('''ISA''') is the formal specification of how a particular kind of computer may be programmed.  An ISA completely defines the behavior expected of the machine, and its definition can be used to emulate a machine in software. The ISA describes everything that can be known about the [[machine language]] (the native commands used by a particular processor design).


Because the instruction set architecture of a CPU is fundamental to its interface and usage, it is often used as a classification of the "type" of CPU.  For example, a "[[PowerPC]] CPU" uses some variant of the PowerPC ISA.  Some CPUs, like the Intel [[Itanium]], can actually interpret instructions for more than one ISA; however this is often accomplished by software means rather than by designing the hardware to directly support both interfaces. (See [[emulator]])
An ISA usually includes the following items:
* a precise description of all the hardware data types (also called ''native'' data types)
* a list of machine instructions, also called ''opcodes'' (operation codes)
* descriptions of any registers
* allowed memory addressing modes
* memory management modes
* interrupts
* exception handling
* all about external I/O
 
Because the instruction set architecture of a [[CPU|processor]] is fundamental to its interface and usage, it is often used as a classification of the "type" of [[CPU|processor]], or CPU.  For example, a "[[PowerPC]]" processor uses some variant of the PowerPC ISA.  Some processors, like the Intel [[Itanium]], can actually interpret instructions for more than one ISA; however, this is often accomplished by software rather than by designing the hardware to directly support both interfaces. (See [[emulator]].)


[[Category:Computers Workgroup]]
[[Category:Computers Workgroup]]
[[Category:CZ Live]]
[[Category:CZ Live]]

Revision as of 22:11, 12 May 2007

The instruction set architecture (ISA) is the formal specification of how a particular kind of computer may be programmed. An ISA completely defines the behavior expected of the machine, and its definition can be used to emulate a machine in software. The ISA describes everything that can be known about the machine language (the native commands used by a particular processor design).

An ISA usually includes the following items:

  • a precise description of all the hardware data types (also called native data types)
  • a list of machine instructions, also called opcodes (operation codes)
  • descriptions of any registers
  • allowed memory addressing modes
  • memory management modes
  • interrupts
  • exception handling
  • all about external I/O

Because the instruction set architecture of a processor is fundamental to its interface and usage, it is often used as a classification of the "type" of processor, or CPU. For example, a "PowerPC" processor uses some variant of the PowerPC ISA. Some processors, like the Intel Itanium, can actually interpret instructions for more than one ISA; however, this is often accomplished by software rather than by designing the hardware to directly support both interfaces. (See emulator.)