4 de septiembre de 2015

Introducción al lenguaje Ensamblador | PORTAFOLIO UNIDAD 1

1.1 Importancia de la programación en lenguaje ensamblador
El lenguaje ensamblador es un tipo de lenguaje de bajo nivel utilizado para escribir programas informáticos , y constituye la representación mas directa del código maquina especifico para cada arquitectura del micro-procesador 

La importancia del lenguaje ensamblador es principalmente que se terabaja directamente con el microproceasador, 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.

1.2 El procesador y sus registros internos
Los registros del procesador se emplean para controlar instrucciones en ejecución y proporcionar capacidad aritmética. Los registros son direccionales por medio de un nombre. Los bits por convención se numeran de derecha a izquierda.
Los registros internos del procesador se pueden calificar en 6 tipos diferentes
Registros de segmento
Registros de propósito general
Registros de apuntadores
Registros de banderas
Registro de puntero de instrucciones
Registro de pila

1.3 La memoria principal RAM
RAM es el acrónimo ingles de random access memory (Memoria de acceso aleatorio).
La memoria principal esta formada por un conjunto de unidades llamadas palabras. Dentro de cada una de estas palabras se guarda la información que constituye una instrucción o parte de ella (puede darse el caso de que una sola instrucción necesite varias palabras) o un dato o parte de un dato (también un dato puede ocupar varias palabras) 
A la cantidad de palabras que forman la MP se le denomina capacidad de palabras.
Una palabra esta formada a su vez de unidades mas elementales llamadas bits, del mismo modo que en el lenguaje natural una palabra esta formada por letras.

1.4 El concepto de interrupciones
También conocida como IRQ. Recursos que utilizan un dispositivo cuando necesita detener el proceso que esta realizando la CPU para informarle de que él, por su parte esta haciendo algo.
Si dos dispositivos utilizan la misma interrupción, se produce un conflicto, el ordenador no sabe que elemento intenta avisarle y suelen aparecer problemas de funcionamiento. El programa interrumpido puede continuar ejecutándose luego. 
Existen 256 direcciones de interrupciones diferentes. Una interrupción se convierte en una interrupción de hardware cuando es solicitada por uno de los componentes de hardware del equipo.
Tipos de interrupciones:
Interrupción externa es provocada por un dispositivo externo al procesador, una interrupción interna ocurre como resultado de la ejecución de una instrucción INT o una operación de división que cause desbordamiento, ejecución en modo de un paso o una petición para interrupción externa, tal como E/S de disco.


1.5 Llamadas a servicios de sistemas

Llamada al servicio es el mecanismo usado por una aplicación para solicitar un servicio al sistema operativo.
Algunos sistemas permiten efectuar llamadas al sistema directamente desde un programa realizado en el lenguaje de mayor nivel, normalmente estas llamadas e asemejan a una función o sub-rutinas predefinidas.
El procesador sabe que el dispositivo requiere de atención de diferentes formas. La primera es que periodicamente sondea al dispositivo en cuestión. La segunda forma, una mas eficiente, es hacer que sea el dispositivo el que le avise al procesador cuando este listo o requiera atención interrumpiendo al procesador.


1.6 Modos de direccionamiento 
Los llamados modos de direccionamiento son las diferentes maneras de especificar dentro de una instrucción. Un modo de direccionamiento especifica la forma de calcular dirección de memoria efectiva de un operando mediante el uso de la información contenida en registros y/o constante, contenida dentro dela instrucción de la maquina o en otra parte.



Fuente:
http://es.slideshare.net/KILLERMSTR/prez-camacho-jess-asmeth