miércoles, 12 de octubre de 2016

LENG. DE INTERFAZ: Unidad 1.

1.1 Importancia de la programación en el lenguaje ensamblador


La importancia del lenguaje ensamblador radica principalmente que se trabaja directamente con el microprocesador; por lo cual se debe de conocer el funcionamiento interno de este, tiene la ventaja de que en el se puede realizar cualquier tipo de programas que en los lenguajes de alto nivel no lo pueden realizar. Otro punto sería que los programas en ensamblador ocupan menos espacio en memoria.

1.2 El procesador y sus registros internos


Los registros del procesador se emplean para controlar instrucciones en ejecución, manejar direccionamiento de memoria y proporcionar capacidad aritmética. Los registros son direccionablespor medio de un nombre. Los bits por convención, se numeran de derecha a izquierda, como en:
... 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Los registros internos del procesador se puede clasificar en 6 tipos diferentes
1. Registros de segmento
2. Registros de propósito general
3. Registros de apuntadores
4. Registros de banderas
5. Registros de Puntero de instrucción
6. Registros de Pila

1.3 La memoria principal (RAM)


Este tipo de memoria puede ser borrada y grabada las veces que deseemos. La única desventaja es que la información grabada en ella solo puede ser utilizada mientras tenga energía. En cuanto se corte la alimentación, los datos que se grabaron se borrarán instantáneamente. Se usan solo como almacenamiento temporal.

La RAM tiene dos modos de operación posibles:

RAM estática: flips-flops internos que almacenan información binaria. La información almacenada es válida mientras la unidad está encendida.

RAM dinámica: Conjunto de pequeños condensadores que pueden estar cargados o descargados. Debe refrescarse cada pocos milisegundos para impedir la pérdida de información. Tienen mayor capacidad que las estáticas.

1.4 Concepto de interrupciones


Una interrupción es una situación especial que suspende la ejecución de un programa de modo que el sistema pueda realizar una acción para tratarla. Tal situación se da, por ejemplo, cuando un periférico requiere la atención del procesador para realizar una operación de E/S.

Las interrupciones constituyen quizá el mecanismo más importante para la conexión del microcontrolador con el mundo exterior, sincronizando la ejecución de programas con acontecimientos externos.

1.5 Llamadas a servicios del sistema


Una llamada al sistema es un método o función que puede invocar un proceso para solicitar un cierto servicio al sistema operativo. Dado que el acceso a ciertos recursos del sistema requieren la ejecución de código en modo privilegiado, el sistema operativo ofrece un conjunto de métodos o funciones que el programa puede emplear para acceder a dichos recursos. En otras palabras, el sistema operativo actúa como intermediario, ofreciendo una interfaz de programación (API) que el programa puede usar en cualquier momento para solicitar recursos gestionados por el sistema operativo.
Algunos ejemplos de llamadas al sistema son las siguientes:

Time: que permite obtener la fecha y hora del sistema.

Write: que se emplea para escribir un dato en un cierto dispositivo de salida, tales como una pantalla o un disco magnético.

Read: que es usada para leer de un dispositivo de entrada, tales como un teclado o un disco magnético.

Open: que es usada para obtener un descriptor de un fichero del sistema, ese fichero suele pasarse a write.

1.6 Modos de direccionamiento


*Los llamados modos de direccionamiento son las diferentes maneras de especificar en informática un operando dentro de una instrucción en lenguaje ensamblador.

*Un modo de direccionamiento especifica la forma de calcular la dirección de memoria efectiva de un operando mediante el uso de la información contenida en registros y / o constantes, contenida dentro de una instrucción de la máquina o en otra parte.

1.7 Proceso de ensamblado y ligado


1.- El programa utiliza un editor de texto para crear un archivo de texto ASCII, conocido como archivo de código fuente.

2.- El ensamblador lee el archivo de código fuete y produce un archivo de código objeto, una traducción del programa a lenguaje máquina. De manera opcional, produce un archivo de listado. Si ocurre un error, el programador debe regresar al paso 1 y corregir el programa.

3.- El enlazador lee el archivo de código objeto y verifica si el programa contiene alguna llamada a los procedimientos en una biblioteca de enlace. El enlazador copia cualquier procedimiento requerido de la biblioteca de enlace, lo combina con el archivo de código objeto y produce el archivo ejecutable. De manera opcional, el enlazador puede producir un archivo de mapa.

4.- La herramienta cargador (loader) del sistema operativo lee el archivo ejecutable y lo carga en memoria, y bifurca la CPU hacia la dirección inicial del programa, para que éste empiece a ejecutarse.

1.8 Desplegado de mensaje en el monitor


Todos los gráficos y el texto que se muestran en el monitor se escriben en la RAM de visualización de video, para después enviarlos al monitor mediante el controlador de video. El controlador de video es en sí un microprocesador de propósito especial, que libera a la CPU principal del trabajo de controlar el hardware de video.

Un monitor de pantalla de cristal líquido (LCD) digital directo recibe un flujo de bits digitales directamente desde el controlador de video, y no requiere del barrido de trama.
















LENG. DE INTERFAZ: Ejemplo 6


LENG. DE INTERFAZ: Ejemplo 5


LENG. DE INTERFAZ: Ejemplo 4


LENG. DE INTERFAZ: Ejemplo 2