Jump to content
Main menu
Main menu
move to sidebar
hide
Navigation
Main page
Recent changes
Random page
Help about MediaWiki
Special pages
Niidae Wiki
Search
Search
Appearance
Create account
Log in
Personal tools
Create account
Log in
Pages for logged out editors
learn more
Contributions
Talk
Editing
Microassembler
Page
Discussion
English
Read
Edit
View history
Tools
Tools
move to sidebar
hide
Actions
Read
Edit
View history
General
What links here
Related changes
Page information
Appearance
move to sidebar
hide
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{More citations needed|date=October 2014}} A '''microassembler''' is a [[computer program]] that helps prepare a [[microcode|microprogram]], called ''firmware'', to control the low level operation of a computer in much the same way an [[Assembly language#Assembler|assembler]] helps prepare higher level code for a [[central processing unit|processor]]. The difference is that the microprogram is usually only developed by the processor manufacturer and works intimately with the [[computer hardware]]. On a microprogrammed computer the microprogram implements the operations of the [[instruction set]] in which any normal program (including both [[application software|application programs]] and [[operating system]]s) is written. 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 set]]s. After it is assembled, the microprogram is then loaded to a [[control store]] to become part of the logic of a [[Central processing unit|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 [[Control store|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 emulation tools before distribution. Nowadays, microcoding has experienced a revival, since it is possible to correct and optimize the firmware of processing units already manufactured or sold, in order to adapt to specific [[operating system]]s or to fix hardware bugs. However, a commonly usable microassembler for today's CPUs is not available to manipulate the microcode. Knowledge of a processor's microcode is usually considered proprietary information so it is difficult to obtain information about how to modify it. ==External links== *{{cite web|url=http://www.mikrocodesimulator.de/index_eng.php |title=Mikrocodesimulator MikroSim 2010|publisher=0/1-SimWare |access-date=2010-10-03}} *{{cite web|url=http://www.cs.clemson.edu/~mark/uprog.html |title=A Brief History of Microprogramming|publisher=M. Smotherman |year=2010 |access-date=2010-10-03}} *{{cite web|url=http://research.microsoft.com/en-us/um/people/gbell/Computer_Structures_Principles_and_Examples/csp0167.htm |title=Computer Structures: Principles and Examples, Part 2, REGIONS OF COMPUTER SPACE, Section 1, MICROPROGRAM-BASED PROCESSORS, Seite 151 ff. |publisher=McGraw-Hill Computer Science Series |access-date=2010-10-03}} *{{cite web|url=http://www.intel.com/Assets/PDF/manual/253668.pdf |title=Intel(R) 64 and IA-32 Architectures Software Developer’s Manual, Volume 3A: System Programming Guide, Part 1, Chapter 8.11: "Microcode update facilities"|publisher=Intel Corporation |date=December 2009 |access-date=2010-10-03}} {{-}} {{CPU technologies}} [[Category:Assemblers]]
Summary:
Please note that all contributions to Niidae Wiki may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see
Encyclopedia:Copyrights
for details).
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)
Templates used on this page:
Template:-
(
edit
)
Template:CPU technologies
(
edit
)
Template:Cite web
(
edit
)
Template:More citations needed
(
edit
)
Search
Search
Editing
Microassembler
Add topic