The term assembler (assembler English) refers to a type of software that is responsible for translating a source file written in assembly language, an object file containing machine code, executable by the machine that has been generated. The purpose for which created this kind of application is to facilitate the writing of programs, and to write directly in binary code, which is the only code understandable by the computer, it is virtually impossible. The evolution of programming languages from assembly language also caused the evolution of the assembler program to what is known as a program compiler. & Nb sp;; & nbsp; & nb sp; All processor, large or small, from a calculator to a supercomputer, either general or specific purpose, has a unique language that is able to recognize and execute. For reasons that are obvious, this language has been called machine language and rather than being specific to a computer microprocesador.El belongs to machine language consists of a set of instructions, which are the only ones that can be recognized and enforced by the microprocessor.
This language is a set of numbers representing the operations performed by the microprocessor through its internal circuitry. These instructions, so to speak, are recorded or “wire” in the hardware and can not be changed. The lowest level to which we aspire to reach in the control of a microprocessor is precisely the machine language. The translators were divided into two groups depending on the relationship between source language and target language. Where a statement in a source language we generate a single numerical statement saying that the machine’s assembler source language.
The transformation of assembly language into machine code is performed by an assembler program, and the reverse translation can make a disassembler. Unlike high-level languages, here is usually a 1-1 correspondence between simple instructions of assembler and machine language. However, in some cases, an assembler may provide “pseudo instructions” that are expanded in a larger machine code in order to provide the necessary functionality. For instance, for a conditional machine code like “if X or greater than”, an assembler can use a group pseudoinstruction “do if less than”, and “if = 0” on the outcome of the previous condition. Assemblers also provide a more complete rich macro language that is used to generate more complex code and data streams.