Ensamblador
El uso del lenguaje ensamblador le permite al programador indicarle al computador exactamente cómo llevar a cabo una tarea específica usando la menor cantidad de instrucciones. Aún cuando el código generado por los compiladores con opción de optimización es eficiente, la optimización manual puede resultar en una mejora sustancial en términosde rendimiento y consumo de memoria. El lenguaje ensamblador es usualmente utilizado en las siguientes circunstancias:
• Mejorar la eficiencia de una rutina específica que se ha transformado en un cuello de botellaObtener acceso a funciones de bajo nivel del procesador para realizar tareas que no son soportadas por los lenguajes de alto nivel
• Escribir manejadores de dispositivos paracomunicarse directamente con hardware especial tales como tarjetas de red
• Trabajar en ambientes con recursos limitados puede requerir el uso del lenguaje ensamblador pues el código ejecutable puede ser menor que el generado por el compilador
Los lenguajes ensamblador tienen sus aplicaciones muy reducidas, se centran básicamente en aplicaciones de tiempo real, control de procesos y dedispositivos electrónicos.
1.1.2.- Escalabilidad de los Microprocesadores.
El concepto de escalabilidad es la propiedad deseable de un sistema, una red o un proceso, que indica su habilidad para extender el margen de operaciones sin perder calidad.
El Microprocesador es un circuito integrado que contiene algunos o todos los elementos hardware, y el de CPU. Una CPU puede estar soportada por unoo varios microprocesadores, y un microprocesador puede soportar una o varias CPU. Un núcleo suele referirse a una porción del procesador que realiza todas las actividades de una CPU real.
Un microprocesador escalar solamente puede manejar una instrucción que a su vez maneja solo un objeto de datos ala vez.
Un microprocesador superescalar puede procesar también solo un objeto de datos porinstrucción, pero puede paralelizar este proceso por su diseño, ejecutando varias instrucciones a la vez.
1.1.3.- Tipos de Lenguajes Ensambladores.
Así podemos clasificarlos en:
Ensambladores Cruzados (Cross-Assembler).
Se denominan así los ensambladores que se utilizan en una computadora que posee un procesador diferente al que tendrán las computadoras donde va a ejecutarse el programa objetoproducido.
El empleo de este tipo de traductores permite aprovechar el soporte de medios físicos (discos, impresoras, pantallas, etc.), y de programación que ofrecen las máquinas potentes para desarrollar programas que luego los van a ejecutar sistemas muy especializados en determinados tipos de tareas.
Ensambladores Residentes.
Son aquellos que permanecen en la memoria principal de lacomputadora y cargan, para su ejecución, al programa objeto producido. Este tipo de ensamblador tiene la ventaja de que se puede comprobar inmediatamente el programa sin necesidad de transportarlo de un lugar a otro, como se hacía en cross-assembler, y sin necesidad de programas simuladores.
Macroensambladores.
Son ensambladores que permiten el uso de macroinstrucciones (macros). Debido a su potencia,normalmente son programas robustos que no permanecen en memoria una vez generado el programa objeto.
Microensambladores.
El programa que indica al intérprete de instrucciones de la UCP cómo debe actuar se denomina microprograma. El programa que ayuda a realizar este microprograma se llama microensamblador. Existen procesadores que permiten la modificación de sus microprogramas, para lo cual seutilizan microensambladores.
Ensambladores de una fase.
Estos ensambladores leen una línea del programa fuente y la traducen directamente para producir una instrucción en lenguaje máquina o la ejecuta si se trata de una pseudoinstrucción. También va construyendo la tabla de símbolos a medida que van apareciendo las definiciones de variables, etiquetas, etc.
Ensambladores de dos fases.
Los...
Regístrate para leer el documento completo.