FACTOID # 12: It's not the government they hate: Washington DC has the highest number of hate crimes per capita in the US.
 
 Home   Encyclopedia   Statistics   States A-Z   Flags   Maps   FAQ   About 
   
 
WHAT'S NEW
RELATED ARTICLES
People who viewed "Assembler" also viewed:
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Assembler
It has been suggested that this article or section be merged into Assembly language. (Discuss)
This article is about the category of computer programming tools. See Assembler (disambiguation) for other meanings.

An assembler is a computer program for translating assembly language — essentially, a mnemonic representation of machine language — into object code. A cross assembler (see cross compiler) produces code for one type of processor, but runs on another. The computational step where an assembler is run is known as assembly time. Wikipedia does not have an article with this exact name. ... It has been suggested that Assembler be merged into this article or section. ... The term may refer to the following. ... The terms computer program, software program, applications program, system software, or just program are used to refer to either an executable program by both lay people and computer programmers or the collection of source code from which an executable program is created (eg, compiled). ... It has been suggested that Assembler be merged into this article or section. ... A mnemonic (pronounced in American English, in British English) is a memory aid. ... A system of codes directly understandable by a computers CPU is termed this CPUs native or machine language. ... In computer science, object file or object code is an intermediate representation of code generated by a compiler after it processes a source code file. ... A cross compiler is a compiler capable of creating executable code for another platform than the one on which the cross compiler is run. ...


As well as translating assembly instruction mnemonics into opcodes, assemblers provide the ability to use symbolic names for memory locations (saving tedious calculations and manually updating addresses when a program is slightly modified), and macro facilities for performing textual substitution — typically used to encode common short sequences of instructions to run inline instead of in a subroutine. Microprocessors perform operations using binary bits (on/off/1or0). ... ... In computer science, a subroutine (function, method, procedure, or subprogram) is a portion of code within a larger program, which performs a specific task and is relatively independent of the remaining code. ...


Assemblers are far simpler to write than compilers for high-level languages, and have been available since the 1950s. Modern assemblers, especially for RISC based architectures, such as MIPS, Sun SPARC and HP PA-RISC, optimize instruction scheduling to exploit the CPU pipeline efficiently. A diagram of the operation of a typical multi-language compiler. ... A high-level programming language is a programming language that is more user-friendly, to some extent platform-independent, and abstract from low-level computer processor operations such as memory accesses. ... The 1950s were the decade that spanned the years 1950 through 1959, although some sources say from 1951 through 1960. ... Reduced Instruction Set Computer (RISC), is a microprocessor CPU design philosophy that favors a smaller and simpler set of instructions that all take about the same amount of time to execute. ... A MIPS R4400 microprocessor made by Toshiba MIPS, for Microprocessor without interlocked pipeline stages, is a RISC microprocessor architecture developed by MIPS Computer Systems Inc. ... Sun UltraSPARC II Microprocessor Sun UltraSPARC T1 (Niagara 8 Core) SPARC (Scalable Processor ARChitecture) is a pure big-endian RISC microprocessor architecture originally designed in 1985 by Sun Microsystems. ... PA-RISC is a microprocessor architecture developed by Hewlett-Packards Systems & VLSI Technology Operation. ... In computer science, instruction scheduling is a compiler optimization used to improve instruction-level parallelism, which improves performance on machines with instruction pipelines. ... A pipeline is a conduit made from pipes connected end-to-end, used mostly to transport fluids like water or petroleum over long distances. ...


High-level assemblers provide high-level-language abstractions such as advanced control structures, high-level procedure/function declarations and invocations, and high-level abstract data types including structures/records, unions, classes, and sets. High-level assemblers are assembly language translators that incorporate features found in modern high-level programming languages into an assembler. ...

Contents


Assemblers

For any given personal computer, mainframe, embedded system, and game console, both past and present, at least one--possibly dozens--of assemblers have been written. For some examples, see the list of assemblers. This is a list of assemblers. ...


On Unix systems, the assembler is traditionally called as, although it is not a single body of code, being typically written anew for each port. A number of Unix variants use GAS. Unix or UNIX is a computer operating system originally developed in the 1960s and 1970s by a group of AT&T Bell Labs employees including Ken Thompson, Dennis Ritchie, and Douglas McIlroy. ... Gas, commanded as as when typed from the shell, is the GNU assembler. ... Gas, commanded as as when typed from the shell, is the GNU assembler. ...


Within processor groups, each assembler has its own dialect. Sometimes, some assemblers can read another assembler's dialect, for example, TASM can read old MASM code, but not the reverse. FASM and NASM have similar syntax, but each support different macros that could make them difficult to translate to each other. The basics are all the same, but the advanced features will differ.


Also, assembly can sometimes be portable across different operating systems on the same type of CPU. Calling conventions between operating systems often differ slightly to none at all, and with care it is possible to gain some portability in assembly language, usually by linking with a C library that does not change between operating systems. However, it is not possible to link portably with C libraries that require the caller to use preprocessor macros that may change between operating systems. CPU can stand for: in computing: Central processing unit in journalism: Commonwealth Press Union in law enforcement: Crime prevention unit in software: Critical patch update, a type of software patch distributed by Oracle Corporation in Macleans College is often known as Ash Lim. ... The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language (often, just C) is a general-purpose, procedural, imperative computer programming language developed in the early 1970s by Dennis Ritchie for use...


For example, many things in libc depend on the preprocessor to do OS-specific, C-specific things to the program before compiling. In fact, some functions and symbols are not even guaranteed to exist outside of the preprocessor. Worse, the size and field order of structs, as well as the size of certain typedefs such as off_t, are entirely unavailable in assembly language, and differ even between versions of Linux, making it impossible to portably call functions in libc other than ones that only take simple integers and pointers as parameters. Libc is a software library for the C computer programming language. ... Linux (also known as GNU/Linux) is a computer operating system. ...


Some higher level computer languages, such as C, support Inline assembly where relatively brief sections of assembly code can be embedded into the high level language code. Borland Pascal also had an assembler compiler, which was initialized with a keyword "asm". It was mainly used to create mouse and COM-port drivers. The C Programming Language, Brian Kernighan and Dennis Ritchie, the original edition that served for many years as an informal specification of the language The C programming language (often, just C) is a general-purpose, procedural, imperative computer programming language developed in the early 1970s by Dennis Ritchie for use... Inline assembler is a feature of programming languages, that enables very low level code written in assembler to be embedded in a high level language like C. This allows programmers to optimise a very performance-sensitive algorithm by sending individual commands to the computers CPU. This example of inline... Turbo Pascal, also known as Borland Pascal, is a cheap and powerful IDE for the DOS environment. ... A diagram of the operation of a typical multi-language compiler. ... Feral mouse A mouse is a mammal that belongs to one of numerous species of small rodents in the genus Mus and various related genera of the family Muridæ (Old World Mice). ... Device driver vehicle driver (driving) JDBC driver - a software that allows applications to connect to a database a kind of sail on a sailboat (driver (sail)) The golf club usually used for the first shot on a par 4 or 5 hole. ...


Many people use an emulator to debug assembly-language programs. An emulator reproducing a console games playable atmosphere on a Windows computer. ...


See also

A diagram of the operation of a typical multi-language compiler. ... It has been suggested that this article or section be merged with Disassembly. ... This is a list of assemblers. ...

References

  • David Salomon, Assemblers and Loaders. 1993 [1]

External links


  Results from FactBites:
 
Design considerations for an assembler (4655 words)
As the pressure actuated ratchets are inside the assembler and the source of the pressure changes is outside, we must insure that pressure changes are transmitted with reasonable accuracy from the outside to the inside.
Because a new assembler is manufactured inside an existing assembler, reducing the volume occupied by the pressure equilibration subsystem in its compact state (i.e., the state in which it is manufactured) is advantageous.
While this process is clearly wasteful (retaining the parent assembler in a functional state would be desirable), it simplifies the design of the extrusion process as the hollow shell is called upon to perform only a single task, rather than also acting as the wall of the new assemblers.
  More results at FactBites »

 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m