SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Ramón Iván Romo Reyes
Lenguaje ensamblador: es un tipo de lenguaje
de bajo nivel utilizado para escribir programas
informáticos, y constituye la representación más
directa del código máquina específico para cada
arquitectura de computadoras legible por un
programador.
Por ejemplo cuando: Es requerido un ejecutable binario
independiente (stand-alone), es decir uno que deba ejecutarse
sin recursos a componentes de tiempo de ejecución o a
bibliotecas asociadas con un lenguaje de alto nivel. programas
empotrados que solo almacenan una pequeña cantidad de
memoria y el dispositivo está dirigido para hacer tareas para un
simple propósito.
Es cuando se Interactúan directamente con el hardware,
por ejemplo en drivers de dispositivo.
Tiempo real: Industria y manufactura, control de robots.
Entretenimiento: Graficacion, Multimedia, Videojuegos
Se tratan de lenguajes independientes de la arquitectura del
ordenador. Por lo que, en principio, un programa escrito en un
lenguaje de alto nivel, lo puedes migrar de una máquina a otra sin
ningún tipo de problema.
Son lenguajes totalmente dependientes de la máquina, es decir que
el programa que se realiza con este tipo de lenguajes no se pueden
migrar o utilizar en otras máquinas.
Al estar prácticamente diseñados a medida del hardware,
aprovechan al máximo las características del mismo.
Dentro de este grupo se encuentran:
El lenguaje maquina
El lenguaje ensamblador
Este lenguaje ordena a la máquina las operaciones fundamentales
para su funcionamiento. Consiste en la combinación de 0's y 1's
para formar las ordenes entendibles por el hardware de la
máquina.
Este lenguaje es mucho más rápido que los lenguajes de alto
nivel.
La desventaja es que son bastantes difíciles de manejar y usar,
además de tener códigos fuente enormes donde encontrar un
fallo es casi imposible.
Es un derivado del lenguaje máquina y está formado por
abreviaturas de letras y números llamadas mnemotécnicos.
Con la aparición de este lenguaje se crearon los programas
traductores para poder pasar los programas escritos en
lenguaje ensamblador a lenguaje máquina. Como ventaja
con respecto al código máquina es que los códigos fuentes
eran más cortos y los programas creados ocupaban menos
memoria.
Un programa con el que podemos programar en lenguaje
ensamblador es:
El lenguaje ensamblador es de suma importancia ya
que éste es directamente traducible al lenguaje
máquina y viceversa, es una abstracción que facilita
su uso para el ser humano.
Nos permite además tener un control absoluto sobre
la computadora, los programas en ensamblador son
además rápidos y ultra ligeros, además ocupan casi
nada de espacio en memoria ya que no requieren la
carga de librerías complejas adicionales.
CPU (del inglés: Central Processing Unit) Unidad Central de
Procesamiento también conocido como microprocesador o
simplemente procesador.
Que es el procesador?
Es el circuito integrado central y más complejo de un sistema
informático conformado por millones de componentes electrónicos.
Es el encargado de ejecutar los programas, desde el sistema operativo
hasta las aplicaciones de usuario; sólo ejecuta instrucciones
programadas en lenguaje de bajo nivel, realizando operaciones
aritméticas y lógicas simples, tales como sumar, restar, multiplicar,
dividir, las lógicas binarias y accesos a memoria.
El microprocesador 8086 y el 8088 tienen internamente dos componentes,
la Unidad de Interfaz del Bus y la Unidad de ejecución (Bus Interface Unit
(BIU) y Execution Unit (EU)). La unidad de ejecución es la encargada de
realizar todas las operaciones mientras que la unidad de interfaz del bus
es la encargada de acceder a datos e instrucciones del mundo exterior.
En la siguiente diapositiva se mostrara una imagen de como esta
estructurado como dividido en bloques.
Registro AX: El registro AX es el registro acumulador, es utilizado para
operaciones que implican entrada/salida, y multiplicación y división (estas dos
últimas en conjunto con el registro DX).
Registro BX: El registro BX es el registro base, y es el único registro de propósito
general que puede ser un índice para direccionamiento indexado.
Registro CX: El registro CX es conocido como el registro contador. Puede contener
un valor para controlar el número de veces que un ciclo se repite o un valor para
corrimiento de bits.
Registro DX: El registro DX es el registro de datos. En algunas operaciones se
indica mediante este registro el número de puerto de entrada/salida, y en las
operaciones de multiplicación y división de 16 bits se utiliza junto con el
acumulador AX.
Para operaciones con cadenas
Registro SI: El registro índice fuente de 16 bits es requerido por
algunas operaciones con cadenas de caracteres. El SI está asociado
con el segmento DS.
Registro DI: El registro índice destino también es requerido por
algunas operaciones con cadenas de caracteres. El DI está
asociado con el segmento ES.
SP: El apuntador de pila de 16 bits está asociado con el
segmento SS y proporciona un valor de desplazamiento que se
refiere a la palabra actual que está siendo procesada en la pila
BP: El apuntador base de 16 bits facilita la referencia de
parámetros dentro de la pila.
Unidad aritmético lógica, también conocida como ALU
(siglas en inglés de arithmetic logic unit), es un circuito
digital que calcula operaciones aritméticas (como suma,
resta, multiplicación, etc.) y operaciones lógicas (si, y, o,
no), entre dos números.
* OF (Over flow flag, desbordamiento): Indica desbordamiento del bit de mayor orden después de
una operación aritmética de números con signo (1=existe overflow; 0=no existe overflow).
* DF (Direction flag, Direccion): Controla la selección de incremento o decremento de los
registros SI y DI en las operaciones con cadenas de caracteres (1=decremento automático;
0=incremento).
* IF (Interruption flag, Interrupcion): Controla el disparo de las interrupciones (1=habilita las
interrupciones; 0=deshabilita las interrupciones) Indica que una interrupción externa, como la
entrada desde el teclado sea procesada o ignorada.
* TF (Trap flag, Trampa): Permite la operación del procesador en modo de depuración (paso a
paso)
* SF (Sign flag, Signo): Contiene el signo resultante de una operación aritmética (0=positivo;
1=negativo).
* ZF (Zero flag, Zero): Indica el resultado de una operación aritmética o de comparación
(0=resultado diferente de cero; 1=resultado igual a cero).
* AF (Auxiliary carry flag, Acarreo auxiliar): Contiene el acarreo del bit 3. Esta bandera se
prueba con las instrucciones DAA y DAS para ajustar el valor de AL después de una suma o resta
BCD.
* PF (Parity flag, Paridad): Indica si el número de bits 1, del byte menos significativos de una
operación, es par (0=número de bits 1 es impar; 1=número de bits 1 es par).
* CF (Carry flag, Acarreo): Contiene el acarreo del bit de mayor orden después de una operación
aritmética; también almacena el contenido del último bit en una operación de desplazamiento o
de rotación.
CS: Registro de segmento de código: El DOS almacena la dirección
inicial del segmento de código de un programa en el registro CS.
DS: Registro de segmento de datos:
La dirección inicial de un segmento de datos de programa es
almacenada en el registro DS.
ES: Registro de segmento extra:
Algunas operaciones con cadenas de caracteres (datos de
caracteres) utilizan el registro esta de segmento para manejar el
direccionamiento de memoria.
SS: Registro de segmento de pila: El registro SS permite la
colocación en memoria de una pila, para almacenamiento
temporal de direcciones y datos.
http://es.wikipedia.org/wiki/Microprocesador
http://www.alpertron.com.ar/8088.HTM
http://es.wikipedia.org/wiki/Unidad_aritm%C3%
A9tico_l%C3%B3gica
http://www.monografias.com/trabajos7/regi/re
gi.shtml
http://es.wikipedia.org/wiki/8086
Lenguaje ensamblador y Estructura del CPU

Weitere ähnliche Inhalte

Was ist angesagt?

Nucleo del sistema operativo
Nucleo del sistema operativoNucleo del sistema operativo
Nucleo del sistema operativo
Emily_Fdez
 
Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)
josecuartas
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPU
Ivan Porras
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
BigbossH
 
Métrica de punto de función y lineas de codigo
Métrica de punto de función y lineas de codigoMétrica de punto de función y lineas de codigo
Métrica de punto de función y lineas de codigo
Jesús E. CuRias
 

Was ist angesagt? (20)

ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
ANALIZADOR SINTACTICO: INTRODUCION, CONCEPTOS, CARACTERISTICAS
 
Nucleo del sistema operativo
Nucleo del sistema operativoNucleo del sistema operativo
Nucleo del sistema operativo
 
Estructura de un traductor Lenguajes y automatas.pptx
Estructura de un traductor Lenguajes y automatas.pptxEstructura de un traductor Lenguajes y automatas.pptx
Estructura de un traductor Lenguajes y automatas.pptx
 
ESPRESIONES REGULARES
ESPRESIONES REGULARESESPRESIONES REGULARES
ESPRESIONES REGULARES
 
Transaccion
TransaccionTransaccion
Transaccion
 
Unidad1 2 Lenguajes y automatas
Unidad1 2  Lenguajes y automatasUnidad1 2  Lenguajes y automatas
Unidad1 2 Lenguajes y automatas
 
Unidad 2 expresiones regulares
Unidad 2 expresiones regularesUnidad 2 expresiones regulares
Unidad 2 expresiones regulares
 
Estilos de programación y sus lenguajes
Estilos de programación y sus lenguajesEstilos de programación y sus lenguajes
Estilos de programación y sus lenguajes
 
Generador de codigo intermedio
Generador de codigo intermedioGenerador de codigo intermedio
Generador de codigo intermedio
 
Gramática Libre de Contexto
Gramática Libre de ContextoGramática Libre de Contexto
Gramática Libre de Contexto
 
TABLA DE SÍMBOLOS
TABLA DE SÍMBOLOSTABLA DE SÍMBOLOS
TABLA DE SÍMBOLOS
 
Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)Patrones de arquitectura Software(Capa de Datos)
Patrones de arquitectura Software(Capa de Datos)
 
Registros de control y estados de la CPU
Registros de control y estados de la CPURegistros de control y estados de la CPU
Registros de control y estados de la CPU
 
Crisis del software
Crisis del softwareCrisis del software
Crisis del software
 
automatas finitos
 automatas finitos automatas finitos
automatas finitos
 
DiseñO De Compilador
DiseñO De CompiladorDiseñO De Compilador
DiseñO De Compilador
 
Modelo cascada
Modelo cascadaModelo cascada
Modelo cascada
 
Estructuras de datos en Introducción a la Programación
Estructuras de datos en Introducción a la ProgramaciónEstructuras de datos en Introducción a la Programación
Estructuras de datos en Introducción a la Programación
 
Ciclo de instrucción
Ciclo de instrucciónCiclo de instrucción
Ciclo de instrucción
 
Métrica de punto de función y lineas de codigo
Métrica de punto de función y lineas de codigoMétrica de punto de función y lineas de codigo
Métrica de punto de función y lineas de codigo
 

Andere mochten auch

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
Gustavo Davila
 
Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assembler
ANDREA
 
Modos de direccionamiento!!
Modos de direccionamiento!!Modos de direccionamiento!!
Modos de direccionamiento!!
romo91
 
Registros del cpu!
Registros del cpu!Registros del cpu!
Registros del cpu!
romo91
 
Módulo 1 estructura de la cpu
Módulo 1   estructura de la cpuMódulo 1   estructura de la cpu
Módulo 1 estructura de la cpu
JOSE MENDOZA
 
Exposiciòn Grupo 6 Estructura de la Cpu
Exposiciòn Grupo 6 Estructura de la CpuExposiciòn Grupo 6 Estructura de la Cpu
Exposiciòn Grupo 6 Estructura de la Cpu
brylejo
 
Estructura Del Sistema InformáTico Detalle
Estructura Del Sistema InformáTico   DetalleEstructura Del Sistema InformáTico   Detalle
Estructura Del Sistema InformáTico Detalle
painni
 
Estructura interna del cpu
Estructura interna del cpuEstructura interna del cpu
Estructura interna del cpu
alumnossanluis98
 

Andere mochten auch (20)

Lenguaje ensamblador basico
Lenguaje ensamblador basicoLenguaje ensamblador basico
Lenguaje ensamblador basico
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Lenguaje Ensamblador
Lenguaje EnsambladorLenguaje Ensamblador
Lenguaje Ensamblador
 
Instrucciones lenguaje assembler
Instrucciones lenguaje assemblerInstrucciones lenguaje assembler
Instrucciones lenguaje assembler
 
5154 Tema3 Jose Rojas
5154 Tema3 Jose Rojas5154 Tema3 Jose Rojas
5154 Tema3 Jose Rojas
 
Data segment
Data segmentData segment
Data segment
 
Unidadi. lenguajes de interfaz
Unidadi.   lenguajes de interfazUnidadi.   lenguajes de interfaz
Unidadi. lenguajes de interfaz
 
Ensamblador
EnsambladorEnsamblador
Ensamblador
 
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADORFUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
FUNDAMENTOS DEL LENGUAJE ENSAMBLADOR
 
Modos de direccionamiento!!
Modos de direccionamiento!!Modos de direccionamiento!!
Modos de direccionamiento!!
 
Registros del cpu!
Registros del cpu!Registros del cpu!
Registros del cpu!
 
Cpu
CpuCpu
Cpu
 
Módulo 1 estructura de la cpu
Módulo 1   estructura de la cpuMódulo 1   estructura de la cpu
Módulo 1 estructura de la cpu
 
Cpu
CpuCpu
Cpu
 
LA C.P.U
LA C.P.ULA C.P.U
LA C.P.U
 
Como funciona una computadora1
Como funciona una computadora1Como funciona una computadora1
Como funciona una computadora1
 
importancia de la C.P.U
importancia de la C.P.Uimportancia de la C.P.U
importancia de la C.P.U
 
Exposiciòn Grupo 6 Estructura de la Cpu
Exposiciòn Grupo 6 Estructura de la CpuExposiciòn Grupo 6 Estructura de la Cpu
Exposiciòn Grupo 6 Estructura de la Cpu
 
Estructura Del Sistema InformáTico Detalle
Estructura Del Sistema InformáTico   DetalleEstructura Del Sistema InformáTico   Detalle
Estructura Del Sistema InformáTico Detalle
 
Estructura interna del cpu
Estructura interna del cpuEstructura interna del cpu
Estructura interna del cpu
 

Ähnlich wie Lenguaje ensamblador y Estructura del CPU

Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
jomapuga
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
Xavi Flores
 

Ähnlich wie Lenguaje ensamblador y Estructura del CPU (20)

Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
 
Tutorial ensamblador
Tutorial ensambladorTutorial ensamblador
Tutorial ensamblador
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Assambler
AssamblerAssambler
Assambler
 
Lenguaje Ensamblador
Lenguaje Ensamblador Lenguaje Ensamblador
Lenguaje Ensamblador
 
Emsamblador
EmsambladorEmsamblador
Emsamblador
 
Lenguajes de interfaz
Lenguajes de interfazLenguajes de interfaz
Lenguajes de interfaz
 
Arquitectura x86_ Registros
Arquitectura x86_ RegistrosArquitectura x86_ Registros
Arquitectura x86_ Registros
 
Microprocesadores
MicroprocesadoresMicroprocesadores
Microprocesadores
 
Unidad I.pdf
Unidad I.pdfUnidad I.pdf
Unidad I.pdf
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Mipag web
Mipag webMipag web
Mipag web
 
REGISTRO DE BANDERAS
REGISTRO DE BANDERASREGISTRO DE BANDERAS
REGISTRO DE BANDERAS
 
asm_mododir2.pdf
asm_mododir2.pdfasm_mododir2.pdf
asm_mododir2.pdf
 
Software
SoftwareSoftware
Software
 
Lenguaje ensamblador
Lenguaje ensambladorLenguaje ensamblador
Lenguaje ensamblador
 
Asm mododir2
Asm mododir2Asm mododir2
Asm mododir2
 
Esamblador8086
Esamblador8086Esamblador8086
Esamblador8086
 
Arquirectura y programacion de un microprocesador x86
Arquirectura y programacion de un microprocesador x86Arquirectura y programacion de un microprocesador x86
Arquirectura y programacion de un microprocesador x86
 

Kürzlich hochgeladen

Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
AnnimoUno1
 

Kürzlich hochgeladen (11)

How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
Modulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdfModulo-Mini Cargador.................pdf
Modulo-Mini Cargador.................pdf
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdfRefrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
Refrigerador_Inverter_Samsung_Curso_y_Manual_de_Servicio_Español.pdf
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 

Lenguaje ensamblador y Estructura del CPU

  • 2. Lenguaje ensamblador: es un tipo de lenguaje de bajo nivel utilizado para escribir programas informáticos, y constituye la representación más directa del código máquina específico para cada arquitectura de computadoras legible por un programador.
  • 3. Por ejemplo cuando: Es requerido un ejecutable binario independiente (stand-alone), es decir uno que deba ejecutarse sin recursos a componentes de tiempo de ejecución o a bibliotecas asociadas con un lenguaje de alto nivel. programas empotrados que solo almacenan una pequeña cantidad de memoria y el dispositivo está dirigido para hacer tareas para un simple propósito.
  • 4. Es cuando se Interactúan directamente con el hardware, por ejemplo en drivers de dispositivo. Tiempo real: Industria y manufactura, control de robots. Entretenimiento: Graficacion, Multimedia, Videojuegos
  • 5. Se tratan de lenguajes independientes de la arquitectura del ordenador. Por lo que, en principio, un programa escrito en un lenguaje de alto nivel, lo puedes migrar de una máquina a otra sin ningún tipo de problema.
  • 6. Son lenguajes totalmente dependientes de la máquina, es decir que el programa que se realiza con este tipo de lenguajes no se pueden migrar o utilizar en otras máquinas. Al estar prácticamente diseñados a medida del hardware, aprovechan al máximo las características del mismo. Dentro de este grupo se encuentran: El lenguaje maquina El lenguaje ensamblador
  • 7. Este lenguaje ordena a la máquina las operaciones fundamentales para su funcionamiento. Consiste en la combinación de 0's y 1's para formar las ordenes entendibles por el hardware de la máquina. Este lenguaje es mucho más rápido que los lenguajes de alto nivel. La desventaja es que son bastantes difíciles de manejar y usar, además de tener códigos fuente enormes donde encontrar un fallo es casi imposible.
  • 8. Es un derivado del lenguaje máquina y está formado por abreviaturas de letras y números llamadas mnemotécnicos. Con la aparición de este lenguaje se crearon los programas traductores para poder pasar los programas escritos en lenguaje ensamblador a lenguaje máquina. Como ventaja con respecto al código máquina es que los códigos fuentes eran más cortos y los programas creados ocupaban menos memoria. Un programa con el que podemos programar en lenguaje ensamblador es:
  • 9. El lenguaje ensamblador es de suma importancia ya que éste es directamente traducible al lenguaje máquina y viceversa, es una abstracción que facilita su uso para el ser humano. Nos permite además tener un control absoluto sobre la computadora, los programas en ensamblador son además rápidos y ultra ligeros, además ocupan casi nada de espacio en memoria ya que no requieren la carga de librerías complejas adicionales.
  • 10. CPU (del inglés: Central Processing Unit) Unidad Central de Procesamiento también conocido como microprocesador o simplemente procesador. Que es el procesador? Es el circuito integrado central y más complejo de un sistema informático conformado por millones de componentes electrónicos. Es el encargado de ejecutar los programas, desde el sistema operativo hasta las aplicaciones de usuario; sólo ejecuta instrucciones programadas en lenguaje de bajo nivel, realizando operaciones aritméticas y lógicas simples, tales como sumar, restar, multiplicar, dividir, las lógicas binarias y accesos a memoria.
  • 11. El microprocesador 8086 y el 8088 tienen internamente dos componentes, la Unidad de Interfaz del Bus y la Unidad de ejecución (Bus Interface Unit (BIU) y Execution Unit (EU)). La unidad de ejecución es la encargada de realizar todas las operaciones mientras que la unidad de interfaz del bus es la encargada de acceder a datos e instrucciones del mundo exterior. En la siguiente diapositiva se mostrara una imagen de como esta estructurado como dividido en bloques.
  • 12.
  • 13. Registro AX: El registro AX es el registro acumulador, es utilizado para operaciones que implican entrada/salida, y multiplicación y división (estas dos últimas en conjunto con el registro DX). Registro BX: El registro BX es el registro base, y es el único registro de propósito general que puede ser un índice para direccionamiento indexado. Registro CX: El registro CX es conocido como el registro contador. Puede contener un valor para controlar el número de veces que un ciclo se repite o un valor para corrimiento de bits. Registro DX: El registro DX es el registro de datos. En algunas operaciones se indica mediante este registro el número de puerto de entrada/salida, y en las operaciones de multiplicación y división de 16 bits se utiliza junto con el acumulador AX.
  • 14. Para operaciones con cadenas Registro SI: El registro índice fuente de 16 bits es requerido por algunas operaciones con cadenas de caracteres. El SI está asociado con el segmento DS. Registro DI: El registro índice destino también es requerido por algunas operaciones con cadenas de caracteres. El DI está asociado con el segmento ES.
  • 15. SP: El apuntador de pila de 16 bits está asociado con el segmento SS y proporciona un valor de desplazamiento que se refiere a la palabra actual que está siendo procesada en la pila BP: El apuntador base de 16 bits facilita la referencia de parámetros dentro de la pila.
  • 16. Unidad aritmético lógica, también conocida como ALU (siglas en inglés de arithmetic logic unit), es un circuito digital que calcula operaciones aritméticas (como suma, resta, multiplicación, etc.) y operaciones lógicas (si, y, o, no), entre dos números.
  • 17. * OF (Over flow flag, desbordamiento): Indica desbordamiento del bit de mayor orden después de una operación aritmética de números con signo (1=existe overflow; 0=no existe overflow). * DF (Direction flag, Direccion): Controla la selección de incremento o decremento de los registros SI y DI en las operaciones con cadenas de caracteres (1=decremento automático; 0=incremento). * IF (Interruption flag, Interrupcion): Controla el disparo de las interrupciones (1=habilita las interrupciones; 0=deshabilita las interrupciones) Indica que una interrupción externa, como la entrada desde el teclado sea procesada o ignorada. * TF (Trap flag, Trampa): Permite la operación del procesador en modo de depuración (paso a paso) * SF (Sign flag, Signo): Contiene el signo resultante de una operación aritmética (0=positivo; 1=negativo). * ZF (Zero flag, Zero): Indica el resultado de una operación aritmética o de comparación (0=resultado diferente de cero; 1=resultado igual a cero). * AF (Auxiliary carry flag, Acarreo auxiliar): Contiene el acarreo del bit 3. Esta bandera se prueba con las instrucciones DAA y DAS para ajustar el valor de AL después de una suma o resta BCD. * PF (Parity flag, Paridad): Indica si el número de bits 1, del byte menos significativos de una operación, es par (0=número de bits 1 es impar; 1=número de bits 1 es par). * CF (Carry flag, Acarreo): Contiene el acarreo del bit de mayor orden después de una operación aritmética; también almacena el contenido del último bit en una operación de desplazamiento o de rotación.
  • 18. CS: Registro de segmento de código: El DOS almacena la dirección inicial del segmento de código de un programa en el registro CS. DS: Registro de segmento de datos: La dirección inicial de un segmento de datos de programa es almacenada en el registro DS. ES: Registro de segmento extra: Algunas operaciones con cadenas de caracteres (datos de caracteres) utilizan el registro esta de segmento para manejar el direccionamiento de memoria. SS: Registro de segmento de pila: El registro SS permite la colocación en memoria de una pila, para almacenamiento temporal de direcciones y datos.