15 Nov
Fundamentos de la Arquitectura del Microprocesador
Registros de Control y Banderas (Flags)
¿Qué es el registro de control de banderas?
El registro de control de banderas (o registro de estado) es un componente crucial que:
- Controla la ejecución de un programa.
- Indica el estado interno de la CPU y de las operaciones realizadas.
- Permite realizar operaciones lógicas y saltos condicionales en un programa.
¿Para qué sirven las banderas de acarreo dentro del registro de control o de estado?
Las banderas de acarreo almacenan información sobre desbordamientos aritméticos:
- Bandera de Acarreo (C – Carry Flag): Almacena el acarreo (carry) resultante de una operación en el bit 15 o el bit más significativo de un dato tipo palabra.
- Bandera de Acarreo Auxiliar (A – Auxiliary Carry Flag): Almacena un acarreo o lleva el resultado de una operación aritmética con el bit 7 del dato tipo byte, útil para operaciones BCD (Decimal Codificado en Binario).
Defina qué es una bandera (Flag)
Una bandera es un bit dentro del registro de control o de banderas que indica el resultado o el estado de una operación previa. Por ejemplo, la Bandera de Cero (ZF), ubicada en el bit 6 del registro de control, indica si el resultado de una operación (como una resta) es cero. Es usada por instrucciones de salto condicional.
Ejemplo de uso de banderas:
JE(Jump if Equal): Salta si la bandera de cero está activa (resultado es cero).CMP(Compare): Compara dos operandos y ajusta las banderas para un posterior salto condicional.
¿Cuál es la importancia de los registros y el control de banderas?
Su importancia radica en que:
- Permiten que el procesador controle la ejecución de instrucciones.
- Indican el estado interno de la CPU y de las operaciones realizadas.
- Hacen posible implementar decisiones lógicas y saltos condicionales en los programas.
Registros Internos y Visibles del Microprocesador 8086
¿Cuáles son las funciones de los registros internos del Microprocesador?
Las funciones principales son:
- Almacenamiento temporal de datos.
- Direccionamiento de memoria.
- Control del flujo del programa.
- Almacenamiento de estados o banderas.
- Soporte a operaciones especiales.
¿Cuáles son los registros visibles para el usuario del Microprocesador 8086?
Son los registros que el programador puede usar directamente para almacenar datos, direcciones y controlar la ejecución de instrucciones. Incluyen:
Registros de Datos:
AX,BX,CX,DXRegistros de Segmento:
CS,DS,ES,SSRegistros Punteros e Índice:
SP,BP,SI,DI, eIP¿Para qué sirven los registros AX, BX, CX, DX?
- AX (Acumulador): Guarda el resultado de las operaciones aritméticas y lógicas.
- BX (Base): Apuntador de desplazamiento de datos.
- CX (Contador): Es el contador de un ciclo (usado en instrucciones de loop).
- DX (Datos): Guarda datos de entrada y salida.
Defina para qué sirven los registros IP, SP, BP
Estos registros son apuntadores de desplazamiento cuyo valor inicia al principio del segmento (dirección inicial
0000h). A medida que se incrementan, permiten moverse dentro de cada segmento. Cada uno está asociado con su registro de segmentación correspondiente:- IP (Instruction Pointer): Puntero de Instrucción.
- SP (Stack Pointer): Puntero de Pila.
- BP (Base Pointer): Puntero Base.
¿Cuál es la diferencia fundamental entre los registros visibles para el usuario y los registros de control y estado en el microprocesador 8086?
Los registros visibles para el usuario almacenan datos y direcciones que los programas pueden usar directamente para cálculos y manipulación de datos. Los registros de control y estado (como el registro Flags) indican el estado del procesador y controlan operaciones internas, pero no se usan directamente para cálculos dentro de los programas.
¿Por qué el registro Flags es considerado un componente crítico en la ejecución de programas dentro de la arquitectura del 8086?
El registro Flags es crítico porque refleja el resultado de operaciones (indicando si el resultado fue cero, si hubo acarreo, si el signo es negativo, etc.) y controla las decisiones del programa (saltos, interrupciones), asegurando que el microprocesador ejecute correctamente las instrucciones basadas en condiciones lógicas.
Instrucciones, Direccionamiento y Ciclo de Ejecución
Mencione cuáles son los tipos de instrucciones
Los tipos de instrucciones incluyen:
- Aritméticas
- De Comparación
- De Control / Salto
- De Entrada / Salida (I/O)
- Lógicas
- De Ciclo (Loop)
- De Transferencia de Datos
- De Control del Procesador
¿Qué son los modos de direccionamiento?
El direccionamiento es la técnica utilizada en informática y sistemas digitales para identificar y acceder a ubicaciones específicas de memoria o dispositivos, utilizando valores numéricos conocidos como direcciones.
¿Cuáles son las funciones de los modos de direccionamiento?
- Permiten que la CPU localice los datos de manera rápida y eficiente, facilitando el control del flujo y la optimización del hardware.
- Permiten las operaciones con registros, memoria o constantes.
¿Cuáles son los modos de direccionamiento?
Los modos de direccionamiento comunes son:
- Inmediato
- Directo
- Indirecto
- Por Registro
- Indirecto por Registro
- De Pila (Stack)
Defina qué es el modo de direccionamiento inmediato
Es la forma más simple de direccionamiento y se presenta cuando el operando (el dato) está presente en la propia instrucción.
Este modo puede ser usado para definir constantes o establecer los valores iniciales de las variables.
Ejemplo:
MOV CX, 0DAh: El dato0DAhse transfiere de forma inmediata al registroCX.Defina y dé un ejemplo del direccionamiento directo
En el direccionamiento directo, el operando se guarda en una dirección efectiva de la memoria RAM, y esta dirección es especificada directamente en la instrucción.
Ejemplo:
MOV [FFFFE], 0A: Mueve el valor0Aa la posición de memoriaFFFFE.¿Qué relación existe entre el conjunto de instrucciones y los modos de direccionamiento en un microprocesador?
El conjunto de instrucciones define las operaciones que el microprocesador puede realizar (cómo mover datos, sumar, comparar o saltar), mientras que los modos de direccionamiento determinan cómo y desde dónde se obtienen los datos que usan estas instrucciones. En conjunto, ambas permiten que la CPU ejecute tareas complejas de manera flexible y eficiente.
Ciclo de Instrucción y Control de la CPU
¿Cómo está formado el ciclo Fetch-Decode-Execute?
El ciclo de instrucción tiene tres etapas principales:
- Fetch o Captación: Obtención de la instrucción desde la memoria.
- Decode o Decodificación: Interpretación de la instrucción.
- Execute o Ejecución: Realización de la operación indicada.
¿Qué papel cumple la unidad de control en la CPU?
La unidad de control coordina y dirige la ejecución de instrucciones, enviando las señales de control necesarias a los demás componentes (ALU, registros, buses) para que realicen las operaciones requeridas.
¿Por qué la segmentación (pipelining) aumenta el rendimiento de una CPU?
La segmentación aumenta el rendimiento porque permite procesar múltiples instrucciones a la vez en distintas etapas del ciclo (fetch, decode, execute), en lugar de esperar a que una instrucción termine completamente antes de comenzar la siguiente.

Deja un comentario