Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Nombre y Apellido:
PROBLEMAS PROPUESTOS
Al principio de cada ciclo, la CPU busca una instrucción en memoria. En la CPU hay un registro, llamado
contador de programa (PC), que tiene la dirección de la próxima instrucción a buscar. La CPU, después
de buscar cada instrucción, incrementa el valor contenido en PC; así podrá buscar la siguiente
instrucción en secuencia.
La instrucción buscada se carga dentro de un registro de la CPU, llamado registro de instrucción (IR). La
instrucción está en la forma de un código binario que especifica las acciones que tomará la CPU. La CPU
interpreta cada instrucción y lleva a cabo las acciones requeridas.
•Procesamiento de datos: El CPU efectúa operaciones aritméticas ó lógicas en datos. •Control: Alterar la
secuencia de ejecución de instrucciones.
La memoria RAM o “memoria de acceso aleatorio” es la memoria principal del dispositivo, en la que se
almacenan programas y datos. Sus siglas significan Random Access Memory y es el lugar en el que se
cargan todas las instrucciones que ejecuta la unidad central de procesamiento y otras unidades del PC.
La RAM es una memoria de acceso aleatorio, es decir, que un byte o una palabra se puede
encontrar de una forma clara y directa, sin necesidad de tener en cuenta los bytes almacenados
antes o después de esa palabra. Permite el acceso para escritura y lectura de información.
Este es un dispositivo electrónico que es capaz de almacenar instrucciones y datos, de forma
temporal, pero pierde los datos cuando el equipo se apaga. La gran ventaja de la memoria RAM es
que tiene una alta velocidad en el momento de hacer transmisión de la información.
Un direccionamiento de memoria es un identificador único una ubicación la memoria, con
las cuales el CPU u otros dispositivos pueden almacenar, modificar o recuperar datos de la
misma, por lo general, las direcciones de memoria se expresan en hexadecimal.
En las computadoras, cada direccionamiento de memoria apunta hacia un Byte de
almacenamiento (el byte es la memoria mínima a la que se pueda acceder).
Los modos de direccionamiento de un procesador son las diferentes formas de transformación del
campo de operando de la instrucción en la dirección del operando y este se coincidiera desde dos
puntos de vista:
Físico: Se refiere a los medios electrónicos en el ordenador para acceder a las diversas posiciones
de memoria.
Lógico: Se refieren a la forma en que se expresan y guardan las direcciones.
Una palabra es una cadena finita de bits que son manejados como un conjunto por la
máquina. El tamaño o longitud de una palabra hace referencia al número de bits
contenidos en ella, y es un aspecto muy importante al momento de diseñar
una arquitectura de ordenadores.
El tamaño de una palabra se refleja en muchos aspectos de la estructura y las operaciones de las
computadoras. La mayoría de los registros en un ordenador normalmente tienen el tamaño de la
palabra.
La cantidad de datos transferidos entre la CPU del ordenador y el sistema de memoria a menudo
es más de una palabra. Una dirección utilizada para designar una localización de memoria a
menudo ocupa una palabra.
Dependiendo de cómo se organiza un ordenador, las unidades de tamaño de palabra se pueden utilizar
para:
Números en coma flotante: Los contenedores para valores numéricos en coma flotante son
típicamente una palabra o un múltiplo de una palabra.
Registros: Los registros son diseñados con un tamaño apropiado para el tipo de dato que
almacenan. Muchas arquitecturas de computadores utilizan registros de "propósito general" que
pueden albergar varios tipos de datos, estos registros se dimensionan para permitir los más
grandes de estos tipos y el tamaño típico es el tamaño de palabra de la arquitectura.
5. Explique la diferencia entre el lenguaje máquina y el lenguaje simbólico. ¿De qué otra
forma se denominan estos lenguajes? ¿Varían según las arquitecturas?
El lenguaje de máquina o código máquina es el sistema de códigos directamente interpretable
por un circuito microprogramable, como el microprocesador de una computadora o
el microcontrolador de un autómata. Este lenguaje está compuesto por un conjunto de
instrucciones que determinan acciones a ser tomadas por la máquina. El lenguaje de máquina
es específico de la arquitectura de la máquina, aunque el conjunto de instrucciones disponibles
pueda ser similar entre arquitecturas distintas.
Los circuitos microprogramables son digitales, lo que significa que trabajan con dos únicos niveles
de tensión. Dichos niveles, por abstracción, se simbolizan con los números 0 y 1, por eso el
lenguaje de máquina sólo utiliza dichos signos.
El lenguaje simbólico o ensamblador (en inglés assembly language), es un lenguaje de
programación de alto nivel. Consiste en un conjunto de mnemónicos que representan
instrucciones básicas 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 una arquitectura de
procesador y constituye la representación más directa del código máquina, específico para cada
arquitectura legible por un programador.
Cada arquitectura de procesador tiene su propio lenguaje ensamblador que usualmente es
definida por el fabricante de hardware, y está basada en los mnemónicos, los registros del
procesador, las posiciones de memoria y otras características del lenguaje.
9. Explique los componentes del Modelo de Von Neumann. Nombre sus principales
registros y buses.
EL MODELO DE VON NEUMANN
10. ¿Cuál es el concepto más importante que se introduce con el Modelo de Von
Neumann?
El programa almacenado en memoria es el concepto más importante introducido por parte del
modelo Von Neumann.
12. Explique cómo se realizarían los ciclos de búsqueda y ejecución en el modelo de Von
Neuman.
Fase de Búsqueda:
13. Indique las partes en que está compuesta la estructura del computador IAS y las
subdivisiones de la CPU. Describa en forma sintética la función que cumple cada una
de ellas y sus registros.
Las partes en la que está compuesta la estructura del computador IAS son:
• Una memoria principal que almacena tanto datos como instrucciones (hace referencia a
instrucciones de máquina, NO instrucciones de lenguaje de alto nivel).
• Una unidad aritmético-lógica (ALU) capaz de hacer operaciones con datos binarios.
• Una unidad de control que interpreta las instrucciones en memoria y provoca su ejecución.
• Un equipo de entrada salida (E/S) dirigido por la unidad de control.
14. A partir del Modelo de Von Neumann, indique que otros registros se incorporan al IAS
y que uso tienen.
Algunos de los registros que se agregan al computador IAS en comparación al
modelo de Von Neumann son:
Acumulador (AC) y multiplicador cociente (MQ, Multiplier Quotient): se
emplean para almacenar operandos y resultados de operaciones de la
ALU temporalmente. Por ejemplo, el resultado de multiplicar dos números
de 40 bits es un número de 80 bits; los 40 bits más significativos se
almacenan en el AC y los menos significativos en el MQ.
Registro temporal de instrucción (IBR, Instruction y Buffer Register):
empleado para almacenar temporalmente la instrucción contenida en la
parte derecha de una palabra en memoria
Registro temporal de memoria (MBR, Memory Buffer Register): contiene
una palabra que debe ser almacenada en la memoria, o es usada para
recibir una palabra procedente de la memoria.
Registro de dirección de memoria (MAR, Memory Address Register):
específica la dirección en memoria de la palabra que va a ser escrita o
leída en MBR.
Contador de programa (PC, Program Counter): contiene la dirección de la
próxima pareja de instrucciones que va a ser captada de la memoria
Registro de instrucción (IR, Instruction Register): contiene los 8 bits del código
de operación de la instrucción que se va a ejecutar.
15. ¿Cuántas palabras tiene la memoria del IAS?, ¿qué longitud tienen?, ¿qué tipos de
palabras usa?
16. ¿Cuántos bits tiene una instrucción en IAS?, ¿cómo está formada?
Una palabra puede contener también dos instrucciones de 20 bits, donde cada
instrucción consiste en un código de operación de 8 bits (codop) específica la
operación que se va a realizar, y una dirección de 12 bits, que indica una de las
palabras de la memoria (numeradas de 0 a 999).
17. Explique cómo se ejecutarían los ciclos de búsqueda y ejecución en el computador IAS.
El IAS, opera ejecutando repetidamente un ciclo instrucción. Cada ciclo
constará de dos subciclos. Durante el ciclo de captación, el codop de la
siguiente instrucción es cargado en el IR, y la parte que contiene la dirección se
almacena en el MAR. Esta instrucción puede ser captada desde el IBR, o
puede de ser obtenida de la memoria cargando una palabra en el MBR, y luego
en IBR, IR y MAR.
Una vez que el codop está en el IR, se lleva a cabo el ciclo de ejecución. Los
circuitos de control interpretan el codop y ejecutan las instrucciones, enviando las
señales de control adecuadas para provocar que los datos se transfieran o que la
ALU realice una operación.
18. ¿Cómo se clasifica el conjunto de instrucciones del IAS?. De un ejemplo de cada una.
El computador IAS tiene un total de 21 instrucciones. Las instrucciones típicas
que incluye cualquier CPU, que se pueden dividir en los siguientes grupos son:
Transferencia de datos: se emplea para mover información entre los
diferentes espacios (registros, memoria, registros de controladores de
entrada/salida). Aunque algunas CPU restringen los movimientos (8086 y
los procesadores RISC no permiten movimientos de memoria a memoria),
otros permiten cualquier combinación (ortogonalidad). También se
incluyen operaciones específicas de entrada/salida o de acceso a los
espacios de pila.
Aritméticas: instrucciones que realizan operaciones aritméticas,
negaciones de signo, sumas, restas, multiplicaciones, divisiones de
operándose enteros (con y sin signo), en coma flotante, etc. También
aparecen a veces instrucciones de comparación, que se suele utilizar con
las de salto condicional.
Lógicas y de desplazamientos: estas instrucciones implementan
operaciones lógicas bit a bit entre los operandos, incluyéndose
operaciones como AND, OR, XOR, NOT, desplazamientos izquierda o
derecha y rotaciones a izquierda o derecha. Manejo de bits: estas son
instrucciones que permite modificar o consultar bits de un operando de
forma individual. Control del programa: estas son instrucciones que
permite modificar el flujo de ejecución de un programa. Entré ellas se
incluyen los saltos condicionales o incondicionales, las llamadas y
retornos de subrutina, las comprobaciones de errores y los desvíos al
sistema operativo.
Control del procesador: así se incluyen instrucciones específicas del
procesador, como instrucciones que dejan parado el procesador, lo dejan
bloqueado hasta que aparezca una interrupción; instrucciones que no
hacen nada, o instrucciones que consultan o modifican registro de
propósito específico dentro del procesador (por ejemplo, palabras de
estado).
Miscelánea: aparecen también instrucciones que facilitan el manejo de
cadenas de caracteres o instrucciones que facilitan la compartición de
memoria entre varios procesadores.
19. Dado los siguientes enunciados: escriba las instrucciones en lenguaje assembler,
coloque sus comentarios y luego páselas a código máquina.