The microinstruction (also micro- op, op - μ, μ ) operation is a basic instruction for controlling a processor.

  • In a processor with CISC architecture microinstructions are processor - internal control codes in the microprogram control unit; they control and interconnect the various work units (eg, the arithmetic logic unit ) in microprocessors and microcontrollers and interconnect them with other processor components, such as the registers. Several microinstructions are combined into a microcode instruction set, which is colloquially referred to as the microcode of a microprogram control plant.
  • In a processor with RISC architecture no micro program control unit exists - the machine instructions are directly ( or by using a minimal combinational circuit ) is used for the internal wiring of the processor components. Here, then, fall μ - Op and machine code together.

In another article is only dealt with the microcode of the microprogram control the work of a CISC processor.


Through an inherently coded addressing provision in a part of the micro instruction is made to the next to be processed within a microinstruction addressable micro- instruction set, so that structured processes can be programmed in repetitive sequences of microinstructions. In this way it is possible for the complex instruction set of a CISC processor ( CISC, Complex Instruction Set Computer) present as a micro- instruction sequence. The micro- instruction set can thus be understood as the firmware microprogram control plant. The microcode of an integrated arithmetic logic unit is located in a separate memory area with short access time. The microcode functions as a lowest control program written in the language of the microinstructions for translating machine instructions in a number of switching operation instructions.

The micro-instruction is composed of a sequence of bits, which cause the microcode control in the program control and arithmetic unit for execution within a microcode instruction cycle. In this case, each bit to be understood as discrete switching instruction ( Pikobefehl ) which initiates a switching activity depending on bit value or prevents. Alternatively, multiple non-independent bits in bit field may be grouped to be construed as a coded binary number (nano code). Their combination of bits can sometimes multiplexer circuits instruct to associated control or arithmetic circuits (nano program ) to activate.

A microinstruction ( - santeil ) is called " horizontal microinstruction encoded ", when the execution of the command component with independent single-bit control capability within a processing clock occurs. In this case, the state transition of the processing machine is independent of the execution order of the switching instructions within a microinstruction.

A microinstruction ( - santeil ) is called " microinstruction coded vertical" as when the execution of the command due to a proportion -dependent single- control option in between cycles is done (nano program). In this way a time sequence of interleaved single-bit controls utilized or an evaluation of a bitgruppierierungsabhängigen control can be made ​​possible. In this case, the state transition of the processing machine depending on the order of execution of the shift instructions within a microinstruction.

If a microinstruction from horizontally and vertically coded shares, one refers to this as " microinstruction encoding diagonal".

A microinstruction cycle can be divided into several phases in which horizontal and vertical microinstruction coded control instructions are simultaneously active. If the micro -code memory variable, then a microcode program (also micro- program) was subsequently changed and loaded to hardware functionalities correct to optimize adapt, or.

One of micro instructions (English Micro Instruction) compiled into binary code microprogram is referred to as microcode ( engl.Microcode ). The procedure for programming in accordance with the composition of the micro- commands to a micro-program will be referred to as a micro- programming that direct execution of a control program in binary code is as microcode (English micro code ). If necessary programming tools are used, as microassembler (English Micro Assembler) are referred to. With these tools it is possible to manage in an orderly manner microinstruction sequences and to translate them into binary code. The importance of the micro instructions for controlling a virtual computing unit is mediated by the microcode simulator Micro didactic manner.