QUE ES LENGUAJE ENSAMBLADOR
Un programa utilitario llamado ensamblador es usado para traducir sentencias del lenguaje ensamblador al código de máquina del computador objetivo. El ensamblador realiza una traducción más o menos isomorfa (un mapeo de uno a uno) desde las sentencias mnemónicas a las instrucciones y datos de máquina
es un lenguaje de programación de bajo nivel para los computadores, microprocesadores, microcontroladores y otros circuitos integrados programables. Implementa una representación simbólica de los códigos de máquina binarios y otras constantes necesarias para programar unaarquitectura dada de CPU y constituye la representación más directa del código máquina específico para cada arquitectura legible por un programador¿DONDE SE UTILIZA?
Fue usado principalmente en los inicios del desarrollo de software, cuando aún no se contaba con potentes lenguajes de alto nivel y los recursos eran limitados. Actualmente se utiliza con frecuencia en ambientes académicos y de investigación, especialmente cuando se requiere la manipulación directa de hardware, altos rendimientos, o un uso de recursos controlado y reducido.
Muchos dispositivos programables (como los microcontroladores) aún cuentan con el ensamblador como la única manera de ser manipulados
¿QUE ES UN LENGUAJE DE ALTO NIVEL?
Un lenguaje de alto nivel permite al programador escribir las instrucciones de un programa utilizando palabras o expresiones sintácticas muy similares al inglés. Por ejemplo, en C se pueden usar palabras tales como: case, if, for, while, etc. para construir con ellas instrucciones como:if( numero > 0 ) printf( "El número es positivo" )
que traducido al castellano viene a decir que: si numero es mayor que cero, entonces, escribir por pantalla el mensaje: "El número es positivo".
que traducido al castellano viene a decir que: si numero es mayor que cero, entonces, escribir por pantalla el mensaje: "El número es positivo".
¿QUE ES UN LENGUAJE DE BAJO NIVEL?
Los lenguajes de bajo nivel, también llamados lenguajes ensambladores, permiten al programador escribir instrucciones de un programa usando abreviaturas del inglés, también llamadas palabras nemotécnicas, tales como: ADD, DIV, SUB, etc. Un programa escrito en un lenguaje ensamblador tiene el inconveniente de que no es comprensible para la computadora, ya que, no está compuesto por ceros y unos. Para traducir las instrucciones de un programa escrito en un lenguaje ensamblador a instrucciones de un lenguaje máquina hay que utilizar un programa llamado ensamblador, como se muestra en la siguiente figura:
¿QUE ES EL LENGUAJE MAQUINA?
Fue el primer lenguaje utilizado en la programación para las primeras computadoras, pero dejó de utilizarse por su dificultad y complicación, siendo sustituido por otros lenguajes más fáciles de aprender y utilizar, y que además reducen la posibilidad de cometer errores.
El lenguaje máquina es el único que entiende directamente la computadora, utiliza el alfabeto binario que consta de los dos únicos símbolos 0 y 1, denominados bits; físicamente, se materializan con tensiones comprendidas entre 0 y 4.0 voltios y entre 4 y 5 voltios, respectivamente. Para representar datos que contengan una información se utilizan una serie de unos y ceros cuyo conjunto indica dicha información.
IMPORTANCIA DEL LENGUAJE ENSAMBLADOR
la importancia del lenguaje ensamblador radica principal mente que se trabaja directamente con el micro procesador; por lo cual se debe conocer el funcionamiento interno de este, tiene la ventaja de que en el se puede realizar cualquier tipo de rpogramas que en los lenguajes de alto nuvel no lo pueden realizar. Otro punto seria que los programas en ensamblador ocupan menos espacio en memoria. Permitira adentrarnos al estudio del hardware de una PC.
Es importante como se puede ver, el lenguaje ensamblador es directamente traducible al lenguaje maquina y viceversa; simplemente es una abstraccion ue facilita su uso para los sere humanos.
ESTRUCTURA Y ORGANIZACIÓN DE UN PROCESADOR
Funcionamiento
El procesador (denominado CPU, por Central Processing Unit) es un circuito electrónico que funciona a la velocidad de un reloj interno, gracias a un cristal de cuarzo que, sometido a una corriente eléctrica, envía pulsos, denominados "picos". La velocidad de reloj (también denominada ciclo), corresponde al número de pulsos por segundo, expresados en Hertz (Hz). De este modo, un ordenador de 200 MHz posee un reloj que envía 200.000.000 pulsos por segundo. Por lo general, la frecuencia de reloj es un múltiplo de la frecuencia del sistema (FSB, Front-Side Bus o Bus de la Parte Frontal), es decir, un múltiplo de la frecuencia de la placa madre.
Instrucciones
Una instrucción es una operación elemental que el procesador puede cumplir.. Las instrucciones se almacenan en la memoria principal, esperando ser tratadas por el procesador. Las instrucciones poseen dos campos:
- el código de operación, que representa la acción que el procesador debe ejecutar;
- el código operando, que define los parámetros de la acción. El código operando depende a su vez de la operación. Puede tratarse tanto de información como de una dirección de memoria.
Las instrucciones pueden agruparse en distintas categorías. A continuación presentamos algunas de las más importantes:
- Acceso a Memoria: acceso a la memoria o transferencia de información entre registros.
- Operaciones Aritméticas: operaciones tales como suma, resta, división o multiplicación.
- Operaciones Lógicas: operaciones tales como Y, O, NO, NO EXCLUSIVO, etc.
- Control: controles de secuencia, conexiones condicionales, etc
Registros
Cuando el procesador ejecuta instrucciones, la información almacena en forma temporal en pequeñas ubicaciones de memoria local de 8, 16, 32 o 64 bits, denominadas registros.
Los registros más importantes son:
- el registro acumulador (ACC), que almacena los resultados de las operaciones aritméticas y lógicas;
- el registro de estado (PSW, Processor Estado: Word o Palabra de Estado del Procesador), que contiene los indicadores de estado del sistema (lleva dígitos, desbordamientos, etc.);
- el registro de instrucción (RI), que contiene la instrucción que está siendo procesada actualmente;
- el contador ordinal (OC o PC por Program Counter, Contador de Programa), que contiene la dirección de la siguiente instrucción a procesar;
- el registro del búfer, que almacena información en forma temporal desde la memoria.
Unidades funcionales
El procesador se compone de un grupo de unidades interrelacionadas (o unidades de control). Aunque la arquitectura del microprocesador varía considerablemente de un diseño a otro, los elementos principales del microprocesador son los siguientes:
- Una unidad de control que vincula la información entrante para luego decodificarla y enviarla a la unidad de ejecución:La unidad de control se compone de los siguientes elementos:
- secuenciador (o unidad lógica y de supervisión ), que sincroniza la ejecución de la instrucción con la velocidad de reloj. También envía señales de control:
- contador ordinal, que contiene la dirección de la instrucción que se está ejecutando actualmente;
- registro de instrucción, que contiene la instrucción siguiente.
- Una unidad de ejecución (o unidad de procesamiento), que cumple las tareas que le asigna la unidad de instrucción. La unidad de ejecución se compone de los siguientes elementos:
- la unidad aritmética lógica (se escribe ALU); sirve para la ejecución de cálculos aritméticos básicos y funciones lógicas (Y, O, O EXCLUSIVO, etc.);
- la unidad de punto flotante (se escribe FPU), que ejecuta cálculos complejos parciales que la unidad aritmética lógica no puede realizar;
- el registro de estado;
- el registro acumulador.
- Una unidad de administración del bus (o unidad de entrada-salida) que administra el flujo de información entrante y saliente, y que se encuentra interconectado con el sistema RAM;
No hay comentarios.:
Publicar un comentario