Microassembler

Microassembler

A microassembler (sometimes called a meta-assembler) is a computer program that helps prepare a microprogram to control the low level operation of a computer in much the same way an assembler helps prepare higher level code for a processor. The difference is that the microprogram is usually only developed by the processor manufacturer and works intimately with the hardware. The microprogram defines the instruction set any normal program (including both application programs and operating systems) is written in. The use of a microprogram allows the manufacturer to fix certain mistakes, including working around hardware design errors, without modifying the hardware. Another means of employing microassembler-generated microprograms is in allowing the same hardware to run different instruction sets. After it is assembled, the microprogram is then loaded to a control store to become part of the logic of a CPU's control unit.

Some microassemblers are more generalized and are not targeted at a single computer architecture. For example, through the use of macro-assembler-like capabilities, Digital Equipment Corporation used their MICRO2 microassembler for a very wide range of computer architectures and implementations.

If a given computer implementation supports a writeable control store, the microassembler is usually provided to customers as a means of writing customized microcode.

In the process of microcode assembly it is helpful to verify the microprogram with emulating tools before distribution. Nowadays, microcoding experience a revival, since it is possible to correct and optimize the firmware (i.e. the microcode) of processing units sold, in order for adaptation to operating systems or for bug fixing means. However, a commonly usable microassembler for today's CPUs is not available to manipulate the microcode. Unfortunately, it is difficult to obtain open knowledge about changing the microcode because of intellectual property reasons.

How microcode can be assembled with a microassembler to control a CPU with own created machine codes on microprogramming basis, can be understood and simulated with e-learning tools like Mikrocodesimulator MikroSim on a didactial point of view.

External links


Wikimedia Foundation. 2010.

Игры ⚽ Поможем написать реферат

Look at other dictionaries:

  • Microcode — is a layer of hardware level instructions and/or data structures involved in the implementation of higher level machine code instructions in many computers and other processors; it resides in special high speed memory and translates machine… …   Wikipedia

  • Assembly language — See the terminology section below for information regarding inconsistent use of the terms assembly and assembler. Motorola MC6800 Assembly Language An assembly language is a low level programming language for computers, microprocessors,… …   Wikipedia

  • Netwide Assembler — Original author(s) Simon Tatham, Julian Hall Developer(s) H. Peter Anvin, et al. Stable release 2.09.09 / July 3, 2011; 4 months ago (2011 07 03) …   Wikipedia

  • Microsoft Macro Assembler — Developer(s) Microsoft Stable release 10.0.30319.1 / April 12, 2010; 18 months ago (2010 04 12) Operating system Microsoft Windows and MS DOS …   Wikipedia

  • Comparison of assemblers — This is a list of assemblers: computer programs that translate ( assemble ) assembly language source code into binary programs. Contents 1 x86 assemblers 2 Multiple target assemblers 3 Other assemblers …   Wikipedia

  • A86 (software) — A386 redirects here. For the A road in England, see A386 road (Great Britain). A86 Developer(s) Eric Isaacson Stable release 4.05 Operating system DOS, Windows Platform …   Wikipedia

  • Jasmin (Java assembler) — Infobox Software name = Jasmin caption = Screenshot of Jasmin developer = Jonathan Meyer, Troy Downing and Daniel Reynaud latest release version = 2.3 latest release date = August 10, 2006 operating system = All Platform supporting Java 1.1… …   Wikipedia

  • Mikroprogrammierung — Als Mikroprogrammierung wird die Methode und das Vorgehen verstanden Schalt , Rechen und Steuerabläufe in einem Rechenwerk, insbesondere einem integrierten Rechenwerk (Mikrocontroller, Mikroprozessor) unterhalb der Ausführungsebene von… …   Deutsch Wikipedia

  • x86 — This article is about Intel microprocessor architecture in general. For the 32 bit generation of this architecture which is also called x86 , see IA 32. x86 Designer Intel, AMD Bits 16 bit, 32 bit, and/or 64 bit Introduced 1978 Design …   Wikipedia

  • Open Watcom Assembler — Original author(s) Open Watcom Assembler Operating system Microsoft Windows, Unix like, OS/2, Mac OS, DOS Available in English …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”