SlideShare ist ein Scribd-Unternehmen logo
1 von 20
INTRODUCCIÓN A LA PROGRAMACIÓN I


                        CAPÍTULO 2
 ARQUITECTURA DE COMPUTADORAS




Profesor: Jorge Oribe
Arquitectura de Computadoras                                                                                                                     página 2

Índice de contenido
I ARQUITECTURA DE COMPUTADORAS.........................................................................................3
  ARQUITECTURA...................................................................................................................................3
  ARQUITECTURA DE COMPUTADORAS..........................................................................................3
    INTRODUCCIÓN.................................................................................................................................3
    SI O NO.................................................................................................................................................3
 ¿ CÓMO FUNCIONA TODO EL CONJUNTO ?...................................................................................7
     Unidad de Control (UC).......................................................................................................................8
     Unidad Aritmética y Lógica (UAL).....................................................................................................9
     Memoria Central (MC).......................................................................................................................10
 ESTRUCTURAS BÁSICAS DE LAS INSTRUCCIONES DE MÁQUINA........................................12
    Instrucciones de tres operandos...........................................................................................................13
    Instrucciones de dos operandos...........................................................................................................13
 3. Instrucciones de un Operando.............................................................................................................14
    3. Instrucciones de un Operando.........................................................................................................14
    Instrucciones de un Operando.............................................................................................................14
    Instrucciones sin operandos.................................................................................................................15
 Instrucciones sin operandos....................................................................................................................15
 FUNCIONAMIENTO DE LA CPU.......................................................................................................15
    Búsqueda y preparación de una instrucción........................................................................................16
    Ejecución de instrucción.....................................................................................................................17
Arquitectura de Computadoras                                                      página 3

I ARQUITECTURA DE COMPUTADORAS.
§
INTRODUCCIÓN
§
            Hemos visto en el desarrollo histórico que son tres las personalidades que
han establecido los principios en los que se basa el actual diseño de las computadoras.
Estos hombres fueron Babbage, Boole y Von Neumann.

       Así tenemos que la arquitectura básica pensada por Babbage compuesta de:
entrada de datos, programas, unidad central de procesos, memoria y periféricos de
salida; se le suma la tecnología electrónica basada en la lógica booleana, con la cual
arma sus circuitos; y se combinan con las ideas de Von Neumann sobre la posibilidad de
mantener en memoria tanto pasos de programa como datos, lo cual le da una enorme
flexibilidad a todo equipo de computación.

      Desarrollemos esto por partes: Veremos primero como se combinan la lógica
booleana con los circuitos eléctricos, o mejor dicho como podemos hacer con circuitos
acciones que respondan a las tablas de verdad de Boole. Luego veremos como se
agrupan estos circuitos formando las distintas partes operativas del computador. Por
último veremos como interactúan estas partes para realizar las distintas tareas.

       También veremos en este capítulo como son las instrucciones de máquina y como
las interpreta el procesador. Además veremos otros elementos de la arquitectura de los
equipos como los "buses", procesador de "IRQ", "puertos" series y paralelos.

SI O NO
§
       George Boole, no quiso complicarse la vida y por lo tanto elaboró una álgebra y
una lógica, aparejada con ella, soportada por un sistema numérico de base 2. Partía de la
premisa que todo lo que se desarrollaba podía descomponerse en una serie de pasos
lógicos en los cuales la respuesta fuera solo "sí"o "no" (prendido o apagado, "on"-
"off"). En definitiva admite solo dos tipos de respuestas y estas son mutuamente
excluyentes.

      Así generó una serie de tablas llamadas de verdad, que contienen, para distintas
condiciones lógicas, el resultado de las mismas.
Veamos por ejemplo: la condición lógica "no igual". Como el sistema tiene solo dos
elementos: 0 y 1 dado uno de ellos "no igual" tiene una única respuesta: el otro
elemento. Así para esta condición lógica podemos establecer una tabla con todas las
respuestas posibles según sea el valor de la variable de entrada.
Arquitectura de Computadoras                                                      página 4



                CONDICIÓN "NO IGUAL" O "NOT"
      VARIABLE DE ENTRADA          VALOR DE SALIDA
               1                           0
               0                           1


      De igual modo fue estableciendo las tablas para distintas operaciones lógicas, a
diferencia de la anterior en las demás operaciones lógicas intervienen dos valores que se
son datos de la operación lógica, y que da como resultado un tercer valor. Estas son:


                                                                 A Y B, también
                                                                 llamado AND. Esta
                                                                 condición dará
                                                                 verdadero solo en el
                                                                 caso que tanto A como
                                                                 B sean verdadero (o
                                                                 según las
                                                                 convenciones tenga
                                                                 valor 1).
                                                                 A O B, también
                                                                 llamado OR. En esta
                                                                 dará verdadero cuando
                                                                 A o B o ambos sean
                                                                 verdaderos.

                                                                 A XOR B, también
                                                                 llamado O exclusivo.
                                                                 En este caso dará
                                                                 verdadero solamente
Ilustración 1: Operaciones Básicas del Algebra Booleana
                                                                 cuando A o B sean
verdadero.
A NOR B, que es la negación del OR. Es decir su inversa. Se ve que dará verdadero
sólo si A y B son falsos.
A NAND B, que corresponde a la negación del AND. Es decir que la solución será
verdadera si tanto A o B o ambos son falsos.

En la Ilustración 1 Puertas Lógicas se observan las distintas tablas de verdad
correspondientes a lo dicho y la simbología que se usa en electrónica para representar
los circuitos eléctricos que responden a dichas tablas de verdad.
Arquitectura de Computadoras                                                                página 5

     Con estas condiciones se elaboraron circuitos eléctricos que respondieran a ellas.
Es decir, en la condición NOT (por ejemplo), el circuito tendría que encender una
lámpara si lo desenchufara. El esquema lógico es el siguiente:

      CONDICIÓN "NO IGUAL" O "NOT"
        VARIABLE DE ENTRADA                                  VALOR DE SALIDA
             (está enchufado?)                                (está encendido ?)
                     Si                                               No
                     No                                               Si

       Si nos fijamos en nuestras casas, concretamente en los
palieres de los departamentos, veremos que hay circuitos que
responden a está lógica y que son muy útiles. Me refiero a las
llaves que activan la luz de esos pasillos, cuando las luces del
pasillo se apagan el botón que las acciona se prende, y
cuando las prendemos, el botón se apaga.                         1. Dibujo: llaves combinación
En el dibujo 1 vemos un circuito de combinación

                                                           Los circuitos así diseñados se llaman
                                                          puertas lógicas, y tienen su simbología
                                                          como puede verse en la Ilustración 1.

                                                            Luego con combinaciones de estas
                                                          puertas se puede lograr hacer cosas más
                                                          complejas, tal como lo sugería Boole.
                                                          Así se pueden hacer circuitos que
                                                          sumen, comparen, almacenen datos
                                                          (siempre binarios) en memorias, etc.

                                                            Veamos por ejemplo como podríamos
                                                          hacer un circuito que sumara. Primero
                                                          hagamos la tabla de resultados de una
                                                          suma de dos números binarios A y B1
                                                          según la Ilustración 2.
                                                            Aquí vemos en la tabla las distintas
                                                          combinaciones de valores posibles que
                                                          pueden tomar A y B. En la columna S
                                                          se anotan los valores correspondientes
                                                          a la suma de los A y B de esa fila. En
      Ilustración 2: Circuito y Tabla de Verdad de suma   la columna AC se refleja el resto, o lo
                                                          que "se lleva". AC significa
1
    Estos solo pueden tener dos valores 0 o 1
Arquitectura de Computadoras                                                     página 6

acumulador.
      Se observa que este circuito está compuesto de dos puertas conectadas en
paralelo, en una me dará el contenido de S y la otra el contenido del acumulador.

      Si observamos las columnas A,B y S veremos que la tabla corresponde a la
condición lógica de XOR, o sea un o exclusivo. Mientras que si analizamos las
columnas A, B y AC veremos que corresponden a la condición lógica de Y (AND).

      Vemos que el circuito está construido con una puerta XOR y una AND
conectadas en paralelo.

      Si estudiamos más a fondo el problema veremos que necesitaríamos algo más
pues esto sirve para sumar exclusivamente dos bits, o sea dos cifras binarias. Por tanto
si quisiera hacer un circuito que me permitiera sumar dos números de varias cifras
binarias, tendría que repetir este circuito por cada una de las cifras que componen mi
número.

     Supongamos que queremos sumar números de 8 dígitos (por ejemplo: 10100110 +
01100111). Parecería que con poner 8 circuitos, como los de arriba en paralelo, o sea
                                                                 que la primera cifra
                                                                 del primer número y
                                                                 la    primera     del
                                                                 segundo alimenten
                                                                 al primer circuito, y
                                                                 así sucesivamente.

                                                                    Prestando atención
                                                                   veremos que un
                                                                   circuito así pensado
                                                                   fallaría. Fijémonos
                                                                   que pasa cuando
                                                                   sumamos           las
                                                                   segundas cifras de
                                                                   los sumandos:
                                                                    1 + 1 da S = 0 y
                                                                   C=1

                                                                        El contenido
                                                                   del AC tendría que
                                                                   sumarse (como un
Ilustración 3: Circuito Sumador y Tabla de Verdad                  tercer sumando) a
                                                                   las dos siguientes
cifras de los números en cuestión.
Arquitectura de Computadoras                                                                              página 7

     Por esta razón el circuito descrito más arriba se llama semisumador pues no tiene
en cuenta el arrastre del acumulador del sumador de las cifras anteriores.

    Así el circuito de la Ilustración 2 es válido para sumar las primeras cifras de un
número pero los 7 circuitos siguientes tendrían que ser como se ven en la Ilustración 3


     Obsérvese que el sumador no es solo la combinación de dos semisumadores sin que
además tiene una compuerta OR pues maneja los resultados correspondientes a los
acumuladores de los dos semisumadores. Hay que tener en cuenta que a esta puerta, de
todas las combinaciones posibles, solo le llegan tres:

        AC1 = AC2 = 0
        AC1 = 1 AC2 = 0
        AC1 = 0 AC2 = 1

véase que la cuarta opción posible no se da nunca y por lo tanto no importa que la
respuesta del circuito no sea la correcta para este caso.

      Un procesador de 32 bits tiene los circuitos sumadores armados con 1
semisumador y 31 sumadores, además de tener un registro de memoria para tener en
cuenta si el número resultante es de más de 32 cifras. Esta situación se llama desborde u
overflow.

¿ CÓMO FUNCIONA TODO EL CONJUNTO ?
§

       Lo que vimos en el apartado anterior corresponde a las piezas elementales del
rompecabezas de la computadora. Ahora consideraremos la arquitectura de las
máquinas desde una perspectiva más funcional, entendiendo que cada uno de estos
conjuntos están realizados con muchísimos circuitos elementales como el que hemos
descrito anteriormente, aunque diferentes pues realizan distintas micro tareas.

       Según el esquema de arquitectura propuesto por Babbage y los principios de
funcionamiento de Von Neumann diremos que un equipo consta para su funcionamiento
de tres partes principales:

        Unidad de Control (UC)
        Unidad Aritmética y Lógica (UAL)
        Unidad de Memoria Central u Operativa (RAM2)

2
  Se puede entender genéricamente esta memoria como la RAM, pero involucra otra serie de memorias operativas como
la "memoria Caché", la rom de la bios, y las rom de distintas controladoras de periféricos.
Arquitectura de Computadoras                                                                                  página 8

      Normalmente las dos primeras se las agrupa bajo la denominación de Procesador.
De hecho cuando Intel logró poner todos los circuitos que componen la UC y la UAL en
un solo chip surge el primer microprocesador, dando así paso a la cuarta generación de
computadoras.

      Veremos una breve descripción de cada una de estas unidades y de las tareas que
desarrollan sus partes.

    Unidad de Control (UC)
§
      La unidad de control es el centro nervioso de la computadora; desde ella se
controlan y gobiernan todas las operaciones. Para realizar su función, consta de los
siguientes elementos:

                                                                                       1. Registro de
                                                                       Control de
                                                                       Secuencia (RCS).
                                                                       También
                                                                       denominado
                                                                       contador de
                                                                       programa (CP),
                                                                       contiene
                                                                       permanentemente la
                                                                       dirección de
                                                                       memoria de la
                                                                       próxima instrucción
                                                                       a ejecutar. Por
  Ilustración 4: Partes de la Unidad de Control                        ejemplo cuando
                                                                       enciendo el equipo
    este registro (que es una memoria) tiene almacenada la dirección F000, que es la
    dirección de la primera instrucción de la bios, ubicada en un chip de memoria de
    tecnología ROM o EPROM3.
    Si la instrucción que se está ejecutando en un instante determinado es de salto o
    ruptura de secuencia ( como podría ser una instrucción de GO TO (IR A es una
    instrucción que saltea el orden lógico y hace que la próxima instrucción no sea la que
    sigue sino a la cual el go to lo designe) el RCS tomará la dirección de la instrucción
    que se tenga que ejecutar a continuación; esta dirección se extraerá de la propia
    instrucción en go to.
2. Registro de Instrucción (RI). Contiene la instrucción que se está ejecutando en cada
    momento. Esta instrucción llevará consigo el código de operación (CO), que es la
3
  Los chip ROM, son circuitos integrados de memoria de solo lectura, que en el caso de la Bios (Basic Imput Ouput
Sistem), tiene almacenado un programa en donde están los pasos para testear el equipo, rutinas para manejar el hardware
y los pasaos a seguir para cargar el Sistema Operativo. También estos chip -y en la actualidad todos vienen así- pueden
ser de tecnología EPROM que permiten escribir estos programas desde "afuera de la máquina" a por medio de un proceso
de grabado por luz infrarroja. Una vez grabado así el contenido del chip su comportamiento es igual a una ROM.
Arquitectura de Computadoras                                                                                   página 9

   acción que el computador tiene que realizar, y los operandos, en el caso que los
   necesite. Estos pueden ser direcciones de memoria en donde están los datos con los
   que debe trabajar o los datos en si mismo. Más adelante veremos las distintas formas
   que pueden tener estas instrucciones de máquina.
3. Decodificador (D). Esta parte se encarga de extraer de la instrucción (que está en el
   RI) el código de operación, lo analiza y da las señales necesarias a los demás
   elementos para lograr su ejecución.
4. Reloj (R). Proporciona el "ritmo" de la ejecución de los distintos pasos a realizar por
   todos los elementos. Emite señales a intervalos regulares de tiempo posibilitando así
   que todo funciones sincrónicamente. Cuando veíamos el ejemplo de una máquina del
   tipo de la de Hollerit y hacíamos la alimentación de tarjetas automáticamente,
   veíamos la necesidad de que todas las operaciones se realizaran en un determinado
   instante para evitar errores de lectura. En este caso el momento indicado era cuando la
   tarjeta estaba en su posición correcta.
   Cuando en una PC se habla de que funciona a 60 ,75, 100, 500 Mhz o 1 Ghz, por
   ejemplo, se está haciendo alusión al ritmo en que el equipo opera y está dado por este
   R.
5. Secuenciador (S). En este dispositivo se generan órdenes muy elementales (micro
   órdenes) que, sincronizadas por los impulsos del reloj, hacen que se vaya ejecutando
   poco a poco la instrucción que está cargada en el RI.

    Unidad Aritmética y Lógica (UAL)
§
Esta unidad es la encargada de realizar las operaciones elementales de tipo aritmético y
de tipo lógico (generalmente comparaciones). Recordemos lo visto en el capítulo de
introducción referido al tipo de operaciones que podía manejar el computador, y estas
eran las de los tipos referidos. En muchos equipos las operaciones aritméticas son
generalmente sumas y restas ( con circuitos como los que vimos en el apartado anterior)
pero en los procesadores más avanzados estas operaciones pueden ser también
multiplicación, división, potenciación, trigonométricas etc.4




4
  Por ejemplo los procesadores 80486, Pentium, 80686 de Intel o los Power Pc de Motorolla-IBM-MAC, está incluidos entre
los mencionados. En los procesadores anteriores al 80386, inclusive este, se encuentran dentro de la categoría más
elemental. A estos se les podía adicionar, en la placa madre, otro chip, llamado coprocesador matemático, 1 que contenía
los circuitos para realizar el resto de las operaciones aritméticas y al que la UAL derivaba los cálculos más complejos.
Arquitectura de Computadoras                                                        página 10




       Ilustración 5: Componentes Unidad Aritmética y Lógica


          Los componentes de esta unidad son los siguientes:

I.        Banco de Registros (BR). Está constituido por 8, 16, 32 o más registros de tipo
          general que sirven para situar datos antes de cada operación, para almacenar datos
          intermedios, o sea que van a ser usados inmediatamente en otros pasos de la
          ejecución de la operación de la instrucción que se está ejecutando y para datos
          internos de uso por el propio procesador. Estos registros son memorias muy
          rápidas de uso inmediato por parte de la UAL. Dentro de estos registros hay uno
          especial que es el acumulador. En este se guarda datos que va ha ser
          inmediatamente usados para cálculos que son iterativos.
II.       Registros de Operandos (ROP). Estos son los registros que contienen los datos a
          ser procesados inmediatamente por los circuitos operadores. (RO1 y RO2)
III.      Circuitos Operadores (CIROP). Es el conjunto de circuitos que realizan
          propiamente las operaciones aritméticas y lógicas.
IV.       Registro de Resultado (RR). Es un registro en donde se guarda el resultado de la
          operación inmediatamente hecha.
V.        Señalizadores de Estado (SE). Es un registro que contiene una serie de
          elementos biestables (bits), con los que se señalan distintas condiciones que ha
          dado la última operación realizada. Por ejemplo se marca si hubo overflow, o si el
          resultado fue positivo o negativo, o si ha dado 0, etc. Todas estas señales pueden
          ser usadas como datos por los programas para tomar determinadas decisiones.
VI.       Caché Interno (CI). En algunos procesadores modernos además del BR pueden
Arquitectura de Computadoras                                                    página 11

      tener otro banco de memoria en donde se almacenan datos o instrucciones de uso
      frecuente o mediato. Este banco de memoria se llama Caché y es interno cuando
      está dentro del mismo chip del procesador. Es parte de la memoria central, pero
      con la característica de que es muy rápida y está muy cerca, físicamente hablando
      de los circuitos del procesador. También y/o además puede tener un caché
      externo, o sea ubicado en un chip distinto del procesador pero hecho con una
      tecnología, igual que los internos, que le permiten trabajar a muy alta velocidad.
Estas memoria actúan entre el procesador y la RAM convencional.

Memoria Central (MC)
§
Esta es la memoria operacional del equipo, donde tienen que estar almacenados las
instrucciones de los programas que se están ejecutando y los datos que tienen que ser
procesados por dichos programas.




    Ilustración 6: Componentes de la Memoria Central


       La memoria central podemos imaginarla como una serie de casilleros o carpetas
Arquitectura de Computadoras                                                       página 12

en donde se almacena un byte (o sea 8 bits) o la cantidad de bits de la palabra que
maneja el procesador. Cada uno de estos casilleros tiene una dirección individual,
numerados del 0 al número de bytes que tenga instalado. Estas direcciones de todas las
posiciones de memoria forman una sucesión continua, aunque físicamente puedan estar
ubicadas en distintas partes del equipo. Pues algunas direccionarán datos de la bios, o
de los chip de bios de las tarjetas controladoras de periféricos, también están
direccionadas los lugares de memoria de los caché y de la RAM propiamente dicha. Si
bien cada byte tiene su dirección el procesador puede agruparlos en conjuntos de 1, 2, 4,
8 o más según sea la capacidad de manejo del mismo. Un 386 o 486 puede manipular
conjuntos de 4 bytes o sea 32 bits, una Pentium o una Power Pc puede trabajar con
conjuntos de 8 bytes (64 bits).

      Esto no quiere decir que no se puedan almacenar datos que ocupen más que estas
cantidades de bits, sino lo que quiere decir es que el procesador de un solo golpe de vista
puede ver esas cantidades.

       La mayoría de estas memorias (las de tipo RAM) son "volátiles", lo que quiere
decir que pueden retener información solo mientras la computadora está encendida. Hay
algunos tipos de Ram (como las construidas con tecnología CMOS) que permiten
mantener su contenido aunque el equipo se apague, normalmente se mantienen con
ayuda de una pila. De este tipo de memoria es la que almacena los datos de
configuración del equipo, llamado el "setup" de la máquina.
Pero la inmensa mayoría de la que se usa actualmente es de tipo volátil.

     Así cuando el equipo necesita ejecutar algo previamente lo tiene que tener
almacenado en la MC. Como ya hemos visto lo primero que carga en ella es el Sistema
Operativo. Este se mantiene cargado hasta que la máquina se apague.

      La capacidad de memoria de una máquina se mide en cantidad de bytes siendo sus
unidades de medida:
      Byte (8 bits)
      Kbyte o Kb (coresponde a 210 bytes = 1.024 bytes)
      Mega Byte o Mb (correspondiente a 1.024 Kb)
      Giga Byte o GB ( correspondiente a 1.024 Mb)
      Tera Byte o TB (correspondiente a 1024 Gb)

       Esquemáticamente podríamos describir las partes de la MC del siguiente modo:

1. Registro de Dirección de Memoria (RDM). Es un registro propio de la MC que
  contiene la dirección de memoria que es requerida por el procesador, ya sea para leer
  su contenido o para almacenar algún dato o instrucción.
2. Registro de Intercambio de Memoria (RIM). Este registro almacena la
  información que fue leída o que va ha ser escrita en la dirección de memoria que está
Arquitectura de Computadoras                                                    página 13

   en el RDM. O sea que, si la operación es de lectura, el contenido de la celda de
   memoria cuya dirección está en el RDM será transferido al RIM y de ahí se transferirá
   al procesador. Si la operación es de escritura el contenido a escribir llegará a este
   registro y de ahí se transferirá a la celda cuya dirección este en el RDM.
3. Selector de Memoria (SM). Es el dispositivo que, tras una orden de lectura o
   escritura, conecta la casillero de memoria cuya dirección está en el RDM con el RIM
   permitiendo que la información pueda fluir en ambas direcciones, según sea la
   operación que deba realizarse.

ESTRUCTURAS BÁSICAS DE LAS INSTRUCCIONES DE MÁQUINA
§
En este apartado veremos esquemáticamente y brevemente tipos de instrucciones de
máquina y sus partes.

       Entendemos por instrucciones de máquina aquellas que pueden ser ejecutadas
directamente por el hardware. Estas instrucciones pueden desempeñar distintas
funciones:

       Instrucciones de transferencia de datos
       Instrucciones de ruptura de secuencia
       Instrucciones aritméticas y lógicas
       Instrucciones declarativas
       Etc.

      En este apartado se clasifican las instrucciones por su contenido, teniendo en
cuenta que todas ellas tienen en primer lugar lo que se llama código de operación (CO),
que indica qué operación se debe realizar por el procesador, y aquellas en las que su
misión sea hacer alguna operación con determinados datos; llevarán además, implícita o
explícitamente, dichos datos, que denominaremos operandos.

Instrucciones de tres operandos
§
       También se denominan instrucciones de tres direcciones.

       En primer lugar constan de un código de operación al que siguen tres operandos,
de los cuales, los dos primeros son los operandos y el tercero es la dirección donde se
depositará el resultado. Este formato de instrucción es el más cómodo de trabajar, pero
es el que precisa mayor número de bits.

      Un ejemplo de este tipo de instrucción es la generada por una escrita en un
lenguaje de alto nivel como:
                                     A=B+C
Arquitectura de Computadoras                                                          página 14

       El esquema de una instrucción así sería:

INSTRUCCION DE
TRES OPERANDOS
codigo de operación            Operando 1      Operando 2           Operando 3
      + (sumar)                B               C                    A

       El código de operación es un número binario que el equipo interpreta como que
debe hacer la operación suma. Los operando serán, en este caso, las direcciones de
memoria (siempre en números binarios) donde están ubicados los datos (números a
sumar en este caso). El operando 3 da la dirección de memoria en donde debe dejarse el
resultado.

Instrucciones de dos operandos
§
       Constan de código de operación, seguido de dos operandos, de los cuales uno de
ellos actúa además como receptor del resultado. También se denominan operaciones de
dos direcciones.

       En este caso podría ser una instrucción de alto nivel de la siguiente forma:

                                            A=A+B
que quiere decir que a lo que está ubicado en la dirección A de memoria le sume lo que
está en B y guarde el resultado en la dirección de A.

INSTRUCCIONES DE DOS
OPERANDOS
Código de Operación                    Operando 1                 Operando 2
     + (Sumar)                         A                          B


      En todos los casos los operandos pueden tener las direcciones de memoria o
pueden tener datos concretos, por ejemplo números, salvo en aquellos que por su
naturaleza tengan que contener direcciones, como en el caso de A o de C en las de tres
direcciones. Pero en este caso tanto B como A o B anteriores podrían contener datos
específicos

      Por ejemplo A = A + 12. En este caso el compilador detectaría el 12 como un
número     (literal técnicamente hablando) y no como una dirección. Armando
consecuentemente la instrucción de máquina.
Arquitectura de Computadoras                                                     página 15

      Otro ejemplo lo tenemos en el tercer código de instrucción escrito en el cuadro 1
del capítulo dos:
1101 0001 1001 1100: Mover el valor que está en la dirección de memoria 12 al
                           acumulador A. Donde:
1101 0001 es la dirección del acumulador A
1001         es el código de la operación mover.
1100         es la dirección 12 (es el valor de 12 en binario)

      En este caso el operador está en la posición central. Esto depende de la
arquitectura de hardware específico.

Instrucciones de un Operando
§
       También denominadas instrucciones de una dirección. Son las que se realizan
generalmente en máquinas que usan la filosofía de acumulador. El acumulador es un
registro especial, en el que se encuentra uno de los operandos para este tipo de
instrucciones y donde, además, se guarda el resultado.

      Además hay instrucciones que no necesitan más que un operando, por ejemplo
una instrucción de GO TO, o de ruptura de secuencia, simplemente le indica al
procesador que continúe con la instrucción que está en la dirección del operando 1

       En el cuadro 1 del capítulo 2 se observa que las dos primeras instrucciones son de
este tipo:
Borrar el acumulador A : 0111 0110 1101 0001
       0111 0110 estos valores del primer byte indican la función borrar acumulador.
       1101 0001 indica la dirección del acumulador.
Borrar el acumulador B: 0111 0110 1101 0010
       1101 0010 es la dirección de acumulador B. Se ve que es el valor siguiente, es el
       número que da al sumarle 1 a la dirección anterior.

Instrucciones sin operandos
§
      Esta tipo de instrucciones se utilizan generalmente en computadoras cuya
arquitectura tiene filosofía de pila.

      Una pila está formada por datos en orden consecutivo en la memoria, existiendo
un registro especial denominado puntero de pila que nos indica la dirección del último
dato introducido en ella. Cuando el dato es sacado de ella, el puntero de pila decrece,
apuntando al dato que está a continuación en la pila hacia el fondo de la misma. Cuando
se introduce un dato, el puntero toma la dirección de memoria siguiente en orden
ascendente y se introduce el dato en dicha dirección.
Arquitectura de Computadoras                                                     página 16

       En definitiva funciona como una pila de platos en donde el primero que se
extraiga es el último que se puso.

FUNCIONAMIENTO DE LA CPU
§
Veremos ahora como interactúan las distintas partes que acabamos de ver para lograr el
funcionamiento del conjunto.

       Para esto tomaremos como ejemplo dos operaciones típicas. La primera será la
búsqueda de una instrucción y su carga para ejecutarla. La segunda será la realización de
una instrucción de suma, en la que buscará dos números en memoria y pondrá el
resultado en otro lugar de memoria.

       En el ejemplo supondremos que el procesador debe cargar la instrucción que está
en la dirección de memoria 1.

      Esta instrucción supondremos que es una de tres direcciones que pretende sumar
los datos que están en la dirección 25 y 1225 de memoria y colocar el resultado en la
dirección de memoria 1226.
Instrucción sumar
CO = SUMAR           Dir Op 1= 25         Dir Op 2=1225       Dir Result= 1226
Arquitectura de Computadoras                                                        página 17


         Para realizar esta operación se deben realizar dos pasos:
               Búsqueda de la instrucción
               Ejecución de la instrucción

Búsqueda y preparación de una instrucción
§
Los pasos seguirá el procesador en esta parte son los siguientes (Ilustración 7):




    Ilustración 7: Pasos de Búsqueda de Instrucción



1. La unidad de control (UC) envía una micoorden para que el contenido del registro de
   control de secuencia (RCS), que contiene, como se ha visto, la dirección de la
   siguiente instrucción (que en este caso tendrá la dirección de memoria 1), sea
   transferido al registri de dirección de memoria (RDM), de la memoria central.
2. La dirección de memoria que que está ahora en el RDM es utilizada por el selector
Arquitectura de Computadoras                                                      página 18

   para transferir su contenido (que en este caso será toda la instrucción) al registro de
   intercambio de memoria (RIM)
3. Luego se transfiere la instrucción desde el RIM al registro de instrucción (RI) de la
   unidad de control (UC).
4. A continuación el descodificador procede a interpretar la instrucción que acaba de
   llegar al RI; es decir, se entera de cuál es la operación que hay que realizar (en este
   caso SUMAR).
5. El RCS de la UC se autoincrementa (utilizando la unidad aritmética y lógica UAL)
   con un valor n, de tal forma que quede con la dirección de memoria de la próxima
   instrucción a ejecutar. Si posteriormente, en la ejecución del programa, apareciera
   una instrucción de salto de secuencia, esta instrucción cargaría RCS con la nueva
   dirección.


Ejecución de instrucción
§
Los pasos que se siguen están ilustrados en en la Ilustración 8
.
Arquitectura de Computadoras                                                      página 19




  Ilustración 8: Pasos de Ejecución de Instrucción Sumar


       1.       Se transfiere la dirección del primer operando (25) desde el RI al RDM
       2.       El selector extrae de la memoria dicho dato, depositándolo en el RIM
       3.       Se lleva el operando desde Rim al registro operando 1 (RO1) de la UAL

       4.       Se transfiere la dirección del segundo operando (1225) desde el RI al RDM
       5.       El selector extrae de la memoria disco dato, depositándolo en el RIM
       6.       Se lleva este operando desde el RIM al registro operando 2 (RO2) de la
                UAL
       7.       El secuenciador envía una micro-orden a la UAL para que se ejecute la
                operación de que se trate (en nuestro caso una SUMA). El resultado de la
                operación queda almacenado en el registro de resultado (RR)
Arquitectura de Computadoras                                                     página 20

       8.     El dato almacenado en el RR es llevado al RIM
       9.     Se transfiere desde el RI al RDM la dirección de memoria en donde debe
              quedar almacenada el resultado de la operación (1226).
       10.    Por último se transfiere la información de la RIM a la dirección de memoria
              que está almacenada en la RDM.
       11.    El próximo paso sería el 1.a de la fase anterior, para cargar una nueva
              instrucción en la UC

      En el caso en que la instrucción no necesitara operandos no se hubieran realizado
los pasos 1 al 6 ni los pasos 9, 10

Weitere ähnliche Inhalte

Ähnlich wie Arquitectura de Computadoras: Circuitos Lógicos y Puertas Booleanas

El álgebra booleana
El álgebra booleanaEl álgebra booleana
El álgebra booleanaSaulssg
 
El álgebra booleana
El álgebra booleanaEl álgebra booleana
El álgebra booleanaSaulssg
 
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Robert Osmar Aguilar Iribarren
 
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Robert Osmar Aguilar Iribarren
 
BOOLE + COMPUERTAS LOGICAS
BOOLE + COMPUERTAS LOGICASBOOLE + COMPUERTAS LOGICAS
BOOLE + COMPUERTAS LOGICASedy27ville
 
Explicación Electronica digital boole y puertas lógicas
Explicación Electronica digital   boole y puertas lógicasExplicación Electronica digital   boole y puertas lógicas
Explicación Electronica digital boole y puertas lógicasSabela Prieto
 
Electronica digital 4ºeso
Electronica digital 4ºeso Electronica digital 4ºeso
Electronica digital 4ºeso castilop
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnologíadamarl
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnologíadamarl
 
Las álgebras booleanas
Las álgebras booleanasLas álgebras booleanas
Las álgebras booleanaszacky8
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnologíaSimons22
 
Algebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasAlgebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasPPJJK
 
Algebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasAlgebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasjjkls
 
Algebra booleana.laura Alejandra Carrera
Algebra booleana.laura Alejandra CarreraAlgebra booleana.laura Alejandra Carrera
Algebra booleana.laura Alejandra Carreramibb204
 
Sistema binario i algebra de boole
Sistema binario i algebra de booleSistema binario i algebra de boole
Sistema binario i algebra de booleCarlos Cardelo
 

Ähnlich wie Arquitectura de Computadoras: Circuitos Lógicos y Puertas Booleanas (20)

El álgebra booleana
El álgebra booleanaEl álgebra booleana
El álgebra booleana
 
El álgebra booleana
El álgebra booleanaEl álgebra booleana
El álgebra booleana
 
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
 
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
Aplicación e importancia de los circuitos del algebra de boole y compuertas l...
 
BOOLE + COMPUERTAS LOGICAS
BOOLE + COMPUERTAS LOGICASBOOLE + COMPUERTAS LOGICAS
BOOLE + COMPUERTAS LOGICAS
 
Explicación Electronica digital boole y puertas lógicas
Explicación Electronica digital   boole y puertas lógicasExplicación Electronica digital   boole y puertas lógicas
Explicación Electronica digital boole y puertas lógicas
 
Electronica digital 4ºeso
Electronica digital 4ºeso Electronica digital 4ºeso
Electronica digital 4ºeso
 
inv algbool.
inv algbool.inv algbool.
inv algbool.
 
áLgebra oscar cordoba
áLgebra oscar cordobaáLgebra oscar cordoba
áLgebra oscar cordoba
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnología
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnología
 
Circuito logico
Circuito logicoCircuito logico
Circuito logico
 
Algebra de boole johnny anderson chavarria alonzo
Algebra de boole   johnny anderson chavarria alonzoAlgebra de boole   johnny anderson chavarria alonzo
Algebra de boole johnny anderson chavarria alonzo
 
Las álgebras booleanas
Las álgebras booleanasLas álgebras booleanas
Las álgebras booleanas
 
Algebra boole
Algebra booleAlgebra boole
Algebra boole
 
Instituto universitario de tecnología
Instituto universitario de tecnologíaInstituto universitario de tecnología
Instituto universitario de tecnología
 
Algebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasAlgebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicas
 
Algebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicasAlgebra boole y circuitos con puerta lógicas
Algebra boole y circuitos con puerta lógicas
 
Algebra booleana.laura Alejandra Carrera
Algebra booleana.laura Alejandra CarreraAlgebra booleana.laura Alejandra Carrera
Algebra booleana.laura Alejandra Carrera
 
Sistema binario i algebra de boole
Sistema binario i algebra de booleSistema binario i algebra de boole
Sistema binario i algebra de boole
 

Kürzlich hochgeladen

TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOweislaco
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024gharce
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariamarco carlos cuyo
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxMartín Ramírez
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptAlberto Rubio
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPELaura Chacón
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxdanalikcruz2000
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfromanmillans
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docxAgustinaNuez21
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfDaniel Ángel Corral de la Mata, Ph.D.
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteJuan Hernandez
 
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdf
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdfÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdf
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdfluisantoniocruzcorte1
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIAAbelardoVelaAlbrecht1
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxlclcarmen
 

Kürzlich hochgeladen (20)

TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJOTUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
TUTORIA II - CIRCULO DORADO UNIVERSIDAD CESAR VALLEJO
 
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
SISTEMA INMUNE FISIOLOGIA MEDICA UNSL 2024
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
La evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundariaLa evolucion de la especie humana-primero de secundaria
La evolucion de la especie humana-primero de secundaria
 
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptxc3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
c3.hu3.p1.p2.El ser humano y el sentido de su existencia.pptx
 
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).pptPINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
PINTURA ITALIANA DEL CINQUECENTO (SIGLO XVI).ppt
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Plan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPEPlan Año Escolar Año Escolar 2023-2024. MPPE
Plan Año Escolar Año Escolar 2023-2024. MPPE
 
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptxLINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
LINEAMIENTOS INICIO DEL AÑO LECTIVO 2024-2025.pptx
 
Estrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdfEstrategia de Enseñanza y Aprendizaje.pdf
Estrategia de Enseñanza y Aprendizaje.pdf
 
CIENCIAS NATURALES 4 TO ambientes .docx
CIENCIAS NATURALES 4 TO  ambientes .docxCIENCIAS NATURALES 4 TO  ambientes .docx
CIENCIAS NATURALES 4 TO ambientes .docx
 
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdfTema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
Tema 8.- Gestion de la imagen a traves de la comunicacion de crisis.pdf
 
Unidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parteUnidad II Doctrina de la Iglesia 1 parte
Unidad II Doctrina de la Iglesia 1 parte
 
Unidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDIUnidad 3 | Teorías de la Comunicación | MCDI
Unidad 3 | Teorías de la Comunicación | MCDI
 
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdf
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdfÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdf
ÉTICA, NATURALEZA Y SOCIEDADES_3RO_3ER TRIMESTRE.pdf
 
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIATRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
TRIPTICO-SISTEMA-MUSCULAR. PARA NIÑOS DE PRIMARIA
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Sesión La luz brilla en la oscuridad.pdf
Sesión  La luz brilla en la oscuridad.pdfSesión  La luz brilla en la oscuridad.pdf
Sesión La luz brilla en la oscuridad.pdf
 
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptxSINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
SINTAXIS DE LA ORACIÓN SIMPLE 2023-2024.pptx
 

Arquitectura de Computadoras: Circuitos Lógicos y Puertas Booleanas

  • 1. INTRODUCCIÓN A LA PROGRAMACIÓN I CAPÍTULO 2 ARQUITECTURA DE COMPUTADORAS Profesor: Jorge Oribe
  • 2. Arquitectura de Computadoras página 2 Índice de contenido I ARQUITECTURA DE COMPUTADORAS.........................................................................................3 ARQUITECTURA...................................................................................................................................3 ARQUITECTURA DE COMPUTADORAS..........................................................................................3 INTRODUCCIÓN.................................................................................................................................3 SI O NO.................................................................................................................................................3 ¿ CÓMO FUNCIONA TODO EL CONJUNTO ?...................................................................................7 Unidad de Control (UC).......................................................................................................................8 Unidad Aritmética y Lógica (UAL).....................................................................................................9 Memoria Central (MC).......................................................................................................................10 ESTRUCTURAS BÁSICAS DE LAS INSTRUCCIONES DE MÁQUINA........................................12 Instrucciones de tres operandos...........................................................................................................13 Instrucciones de dos operandos...........................................................................................................13 3. Instrucciones de un Operando.............................................................................................................14 3. Instrucciones de un Operando.........................................................................................................14 Instrucciones de un Operando.............................................................................................................14 Instrucciones sin operandos.................................................................................................................15 Instrucciones sin operandos....................................................................................................................15 FUNCIONAMIENTO DE LA CPU.......................................................................................................15 Búsqueda y preparación de una instrucción........................................................................................16 Ejecución de instrucción.....................................................................................................................17
  • 3. Arquitectura de Computadoras página 3 I ARQUITECTURA DE COMPUTADORAS. § INTRODUCCIÓN § Hemos visto en el desarrollo histórico que son tres las personalidades que han establecido los principios en los que se basa el actual diseño de las computadoras. Estos hombres fueron Babbage, Boole y Von Neumann. Así tenemos que la arquitectura básica pensada por Babbage compuesta de: entrada de datos, programas, unidad central de procesos, memoria y periféricos de salida; se le suma la tecnología electrónica basada en la lógica booleana, con la cual arma sus circuitos; y se combinan con las ideas de Von Neumann sobre la posibilidad de mantener en memoria tanto pasos de programa como datos, lo cual le da una enorme flexibilidad a todo equipo de computación. Desarrollemos esto por partes: Veremos primero como se combinan la lógica booleana con los circuitos eléctricos, o mejor dicho como podemos hacer con circuitos acciones que respondan a las tablas de verdad de Boole. Luego veremos como se agrupan estos circuitos formando las distintas partes operativas del computador. Por último veremos como interactúan estas partes para realizar las distintas tareas. También veremos en este capítulo como son las instrucciones de máquina y como las interpreta el procesador. Además veremos otros elementos de la arquitectura de los equipos como los "buses", procesador de "IRQ", "puertos" series y paralelos. SI O NO § George Boole, no quiso complicarse la vida y por lo tanto elaboró una álgebra y una lógica, aparejada con ella, soportada por un sistema numérico de base 2. Partía de la premisa que todo lo que se desarrollaba podía descomponerse en una serie de pasos lógicos en los cuales la respuesta fuera solo "sí"o "no" (prendido o apagado, "on"- "off"). En definitiva admite solo dos tipos de respuestas y estas son mutuamente excluyentes. Así generó una serie de tablas llamadas de verdad, que contienen, para distintas condiciones lógicas, el resultado de las mismas. Veamos por ejemplo: la condición lógica "no igual". Como el sistema tiene solo dos elementos: 0 y 1 dado uno de ellos "no igual" tiene una única respuesta: el otro elemento. Así para esta condición lógica podemos establecer una tabla con todas las respuestas posibles según sea el valor de la variable de entrada.
  • 4. Arquitectura de Computadoras página 4 CONDICIÓN "NO IGUAL" O "NOT" VARIABLE DE ENTRADA VALOR DE SALIDA 1 0 0 1 De igual modo fue estableciendo las tablas para distintas operaciones lógicas, a diferencia de la anterior en las demás operaciones lógicas intervienen dos valores que se son datos de la operación lógica, y que da como resultado un tercer valor. Estas son: A Y B, también llamado AND. Esta condición dará verdadero solo en el caso que tanto A como B sean verdadero (o según las convenciones tenga valor 1). A O B, también llamado OR. En esta dará verdadero cuando A o B o ambos sean verdaderos. A XOR B, también llamado O exclusivo. En este caso dará verdadero solamente Ilustración 1: Operaciones Básicas del Algebra Booleana cuando A o B sean verdadero. A NOR B, que es la negación del OR. Es decir su inversa. Se ve que dará verdadero sólo si A y B son falsos. A NAND B, que corresponde a la negación del AND. Es decir que la solución será verdadera si tanto A o B o ambos son falsos. En la Ilustración 1 Puertas Lógicas se observan las distintas tablas de verdad correspondientes a lo dicho y la simbología que se usa en electrónica para representar los circuitos eléctricos que responden a dichas tablas de verdad.
  • 5. Arquitectura de Computadoras página 5 Con estas condiciones se elaboraron circuitos eléctricos que respondieran a ellas. Es decir, en la condición NOT (por ejemplo), el circuito tendría que encender una lámpara si lo desenchufara. El esquema lógico es el siguiente: CONDICIÓN "NO IGUAL" O "NOT" VARIABLE DE ENTRADA VALOR DE SALIDA (está enchufado?) (está encendido ?) Si No No Si Si nos fijamos en nuestras casas, concretamente en los palieres de los departamentos, veremos que hay circuitos que responden a está lógica y que son muy útiles. Me refiero a las llaves que activan la luz de esos pasillos, cuando las luces del pasillo se apagan el botón que las acciona se prende, y cuando las prendemos, el botón se apaga. 1. Dibujo: llaves combinación En el dibujo 1 vemos un circuito de combinación Los circuitos así diseñados se llaman puertas lógicas, y tienen su simbología como puede verse en la Ilustración 1. Luego con combinaciones de estas puertas se puede lograr hacer cosas más complejas, tal como lo sugería Boole. Así se pueden hacer circuitos que sumen, comparen, almacenen datos (siempre binarios) en memorias, etc. Veamos por ejemplo como podríamos hacer un circuito que sumara. Primero hagamos la tabla de resultados de una suma de dos números binarios A y B1 según la Ilustración 2. Aquí vemos en la tabla las distintas combinaciones de valores posibles que pueden tomar A y B. En la columna S se anotan los valores correspondientes a la suma de los A y B de esa fila. En Ilustración 2: Circuito y Tabla de Verdad de suma la columna AC se refleja el resto, o lo que "se lleva". AC significa 1 Estos solo pueden tener dos valores 0 o 1
  • 6. Arquitectura de Computadoras página 6 acumulador. Se observa que este circuito está compuesto de dos puertas conectadas en paralelo, en una me dará el contenido de S y la otra el contenido del acumulador. Si observamos las columnas A,B y S veremos que la tabla corresponde a la condición lógica de XOR, o sea un o exclusivo. Mientras que si analizamos las columnas A, B y AC veremos que corresponden a la condición lógica de Y (AND). Vemos que el circuito está construido con una puerta XOR y una AND conectadas en paralelo. Si estudiamos más a fondo el problema veremos que necesitaríamos algo más pues esto sirve para sumar exclusivamente dos bits, o sea dos cifras binarias. Por tanto si quisiera hacer un circuito que me permitiera sumar dos números de varias cifras binarias, tendría que repetir este circuito por cada una de las cifras que componen mi número. Supongamos que queremos sumar números de 8 dígitos (por ejemplo: 10100110 + 01100111). Parecería que con poner 8 circuitos, como los de arriba en paralelo, o sea que la primera cifra del primer número y la primera del segundo alimenten al primer circuito, y así sucesivamente. Prestando atención veremos que un circuito así pensado fallaría. Fijémonos que pasa cuando sumamos las segundas cifras de los sumandos: 1 + 1 da S = 0 y C=1 El contenido del AC tendría que sumarse (como un Ilustración 3: Circuito Sumador y Tabla de Verdad tercer sumando) a las dos siguientes cifras de los números en cuestión.
  • 7. Arquitectura de Computadoras página 7 Por esta razón el circuito descrito más arriba se llama semisumador pues no tiene en cuenta el arrastre del acumulador del sumador de las cifras anteriores. Así el circuito de la Ilustración 2 es válido para sumar las primeras cifras de un número pero los 7 circuitos siguientes tendrían que ser como se ven en la Ilustración 3 Obsérvese que el sumador no es solo la combinación de dos semisumadores sin que además tiene una compuerta OR pues maneja los resultados correspondientes a los acumuladores de los dos semisumadores. Hay que tener en cuenta que a esta puerta, de todas las combinaciones posibles, solo le llegan tres: AC1 = AC2 = 0 AC1 = 1 AC2 = 0 AC1 = 0 AC2 = 1 véase que la cuarta opción posible no se da nunca y por lo tanto no importa que la respuesta del circuito no sea la correcta para este caso. Un procesador de 32 bits tiene los circuitos sumadores armados con 1 semisumador y 31 sumadores, además de tener un registro de memoria para tener en cuenta si el número resultante es de más de 32 cifras. Esta situación se llama desborde u overflow. ¿ CÓMO FUNCIONA TODO EL CONJUNTO ? § Lo que vimos en el apartado anterior corresponde a las piezas elementales del rompecabezas de la computadora. Ahora consideraremos la arquitectura de las máquinas desde una perspectiva más funcional, entendiendo que cada uno de estos conjuntos están realizados con muchísimos circuitos elementales como el que hemos descrito anteriormente, aunque diferentes pues realizan distintas micro tareas. Según el esquema de arquitectura propuesto por Babbage y los principios de funcionamiento de Von Neumann diremos que un equipo consta para su funcionamiento de tres partes principales: Unidad de Control (UC) Unidad Aritmética y Lógica (UAL) Unidad de Memoria Central u Operativa (RAM2) 2 Se puede entender genéricamente esta memoria como la RAM, pero involucra otra serie de memorias operativas como la "memoria Caché", la rom de la bios, y las rom de distintas controladoras de periféricos.
  • 8. Arquitectura de Computadoras página 8 Normalmente las dos primeras se las agrupa bajo la denominación de Procesador. De hecho cuando Intel logró poner todos los circuitos que componen la UC y la UAL en un solo chip surge el primer microprocesador, dando así paso a la cuarta generación de computadoras. Veremos una breve descripción de cada una de estas unidades y de las tareas que desarrollan sus partes. Unidad de Control (UC) § La unidad de control es el centro nervioso de la computadora; desde ella se controlan y gobiernan todas las operaciones. Para realizar su función, consta de los siguientes elementos: 1. Registro de Control de Secuencia (RCS). También denominado contador de programa (CP), contiene permanentemente la dirección de memoria de la próxima instrucción a ejecutar. Por Ilustración 4: Partes de la Unidad de Control ejemplo cuando enciendo el equipo este registro (que es una memoria) tiene almacenada la dirección F000, que es la dirección de la primera instrucción de la bios, ubicada en un chip de memoria de tecnología ROM o EPROM3. Si la instrucción que se está ejecutando en un instante determinado es de salto o ruptura de secuencia ( como podría ser una instrucción de GO TO (IR A es una instrucción que saltea el orden lógico y hace que la próxima instrucción no sea la que sigue sino a la cual el go to lo designe) el RCS tomará la dirección de la instrucción que se tenga que ejecutar a continuación; esta dirección se extraerá de la propia instrucción en go to. 2. Registro de Instrucción (RI). Contiene la instrucción que se está ejecutando en cada momento. Esta instrucción llevará consigo el código de operación (CO), que es la 3 Los chip ROM, son circuitos integrados de memoria de solo lectura, que en el caso de la Bios (Basic Imput Ouput Sistem), tiene almacenado un programa en donde están los pasos para testear el equipo, rutinas para manejar el hardware y los pasaos a seguir para cargar el Sistema Operativo. También estos chip -y en la actualidad todos vienen así- pueden ser de tecnología EPROM que permiten escribir estos programas desde "afuera de la máquina" a por medio de un proceso de grabado por luz infrarroja. Una vez grabado así el contenido del chip su comportamiento es igual a una ROM.
  • 9. Arquitectura de Computadoras página 9 acción que el computador tiene que realizar, y los operandos, en el caso que los necesite. Estos pueden ser direcciones de memoria en donde están los datos con los que debe trabajar o los datos en si mismo. Más adelante veremos las distintas formas que pueden tener estas instrucciones de máquina. 3. Decodificador (D). Esta parte se encarga de extraer de la instrucción (que está en el RI) el código de operación, lo analiza y da las señales necesarias a los demás elementos para lograr su ejecución. 4. Reloj (R). Proporciona el "ritmo" de la ejecución de los distintos pasos a realizar por todos los elementos. Emite señales a intervalos regulares de tiempo posibilitando así que todo funciones sincrónicamente. Cuando veíamos el ejemplo de una máquina del tipo de la de Hollerit y hacíamos la alimentación de tarjetas automáticamente, veíamos la necesidad de que todas las operaciones se realizaran en un determinado instante para evitar errores de lectura. En este caso el momento indicado era cuando la tarjeta estaba en su posición correcta. Cuando en una PC se habla de que funciona a 60 ,75, 100, 500 Mhz o 1 Ghz, por ejemplo, se está haciendo alusión al ritmo en que el equipo opera y está dado por este R. 5. Secuenciador (S). En este dispositivo se generan órdenes muy elementales (micro órdenes) que, sincronizadas por los impulsos del reloj, hacen que se vaya ejecutando poco a poco la instrucción que está cargada en el RI. Unidad Aritmética y Lógica (UAL) § Esta unidad es la encargada de realizar las operaciones elementales de tipo aritmético y de tipo lógico (generalmente comparaciones). Recordemos lo visto en el capítulo de introducción referido al tipo de operaciones que podía manejar el computador, y estas eran las de los tipos referidos. En muchos equipos las operaciones aritméticas son generalmente sumas y restas ( con circuitos como los que vimos en el apartado anterior) pero en los procesadores más avanzados estas operaciones pueden ser también multiplicación, división, potenciación, trigonométricas etc.4 4 Por ejemplo los procesadores 80486, Pentium, 80686 de Intel o los Power Pc de Motorolla-IBM-MAC, está incluidos entre los mencionados. En los procesadores anteriores al 80386, inclusive este, se encuentran dentro de la categoría más elemental. A estos se les podía adicionar, en la placa madre, otro chip, llamado coprocesador matemático, 1 que contenía los circuitos para realizar el resto de las operaciones aritméticas y al que la UAL derivaba los cálculos más complejos.
  • 10. Arquitectura de Computadoras página 10 Ilustración 5: Componentes Unidad Aritmética y Lógica Los componentes de esta unidad son los siguientes: I. Banco de Registros (BR). Está constituido por 8, 16, 32 o más registros de tipo general que sirven para situar datos antes de cada operación, para almacenar datos intermedios, o sea que van a ser usados inmediatamente en otros pasos de la ejecución de la operación de la instrucción que se está ejecutando y para datos internos de uso por el propio procesador. Estos registros son memorias muy rápidas de uso inmediato por parte de la UAL. Dentro de estos registros hay uno especial que es el acumulador. En este se guarda datos que va ha ser inmediatamente usados para cálculos que son iterativos. II. Registros de Operandos (ROP). Estos son los registros que contienen los datos a ser procesados inmediatamente por los circuitos operadores. (RO1 y RO2) III. Circuitos Operadores (CIROP). Es el conjunto de circuitos que realizan propiamente las operaciones aritméticas y lógicas. IV. Registro de Resultado (RR). Es un registro en donde se guarda el resultado de la operación inmediatamente hecha. V. Señalizadores de Estado (SE). Es un registro que contiene una serie de elementos biestables (bits), con los que se señalan distintas condiciones que ha dado la última operación realizada. Por ejemplo se marca si hubo overflow, o si el resultado fue positivo o negativo, o si ha dado 0, etc. Todas estas señales pueden ser usadas como datos por los programas para tomar determinadas decisiones. VI. Caché Interno (CI). En algunos procesadores modernos además del BR pueden
  • 11. Arquitectura de Computadoras página 11 tener otro banco de memoria en donde se almacenan datos o instrucciones de uso frecuente o mediato. Este banco de memoria se llama Caché y es interno cuando está dentro del mismo chip del procesador. Es parte de la memoria central, pero con la característica de que es muy rápida y está muy cerca, físicamente hablando de los circuitos del procesador. También y/o además puede tener un caché externo, o sea ubicado en un chip distinto del procesador pero hecho con una tecnología, igual que los internos, que le permiten trabajar a muy alta velocidad. Estas memoria actúan entre el procesador y la RAM convencional. Memoria Central (MC) § Esta es la memoria operacional del equipo, donde tienen que estar almacenados las instrucciones de los programas que se están ejecutando y los datos que tienen que ser procesados por dichos programas. Ilustración 6: Componentes de la Memoria Central La memoria central podemos imaginarla como una serie de casilleros o carpetas
  • 12. Arquitectura de Computadoras página 12 en donde se almacena un byte (o sea 8 bits) o la cantidad de bits de la palabra que maneja el procesador. Cada uno de estos casilleros tiene una dirección individual, numerados del 0 al número de bytes que tenga instalado. Estas direcciones de todas las posiciones de memoria forman una sucesión continua, aunque físicamente puedan estar ubicadas en distintas partes del equipo. Pues algunas direccionarán datos de la bios, o de los chip de bios de las tarjetas controladoras de periféricos, también están direccionadas los lugares de memoria de los caché y de la RAM propiamente dicha. Si bien cada byte tiene su dirección el procesador puede agruparlos en conjuntos de 1, 2, 4, 8 o más según sea la capacidad de manejo del mismo. Un 386 o 486 puede manipular conjuntos de 4 bytes o sea 32 bits, una Pentium o una Power Pc puede trabajar con conjuntos de 8 bytes (64 bits). Esto no quiere decir que no se puedan almacenar datos que ocupen más que estas cantidades de bits, sino lo que quiere decir es que el procesador de un solo golpe de vista puede ver esas cantidades. La mayoría de estas memorias (las de tipo RAM) son "volátiles", lo que quiere decir que pueden retener información solo mientras la computadora está encendida. Hay algunos tipos de Ram (como las construidas con tecnología CMOS) que permiten mantener su contenido aunque el equipo se apague, normalmente se mantienen con ayuda de una pila. De este tipo de memoria es la que almacena los datos de configuración del equipo, llamado el "setup" de la máquina. Pero la inmensa mayoría de la que se usa actualmente es de tipo volátil. Así cuando el equipo necesita ejecutar algo previamente lo tiene que tener almacenado en la MC. Como ya hemos visto lo primero que carga en ella es el Sistema Operativo. Este se mantiene cargado hasta que la máquina se apague. La capacidad de memoria de una máquina se mide en cantidad de bytes siendo sus unidades de medida: Byte (8 bits) Kbyte o Kb (coresponde a 210 bytes = 1.024 bytes) Mega Byte o Mb (correspondiente a 1.024 Kb) Giga Byte o GB ( correspondiente a 1.024 Mb) Tera Byte o TB (correspondiente a 1024 Gb) Esquemáticamente podríamos describir las partes de la MC del siguiente modo: 1. Registro de Dirección de Memoria (RDM). Es un registro propio de la MC que contiene la dirección de memoria que es requerida por el procesador, ya sea para leer su contenido o para almacenar algún dato o instrucción. 2. Registro de Intercambio de Memoria (RIM). Este registro almacena la información que fue leída o que va ha ser escrita en la dirección de memoria que está
  • 13. Arquitectura de Computadoras página 13 en el RDM. O sea que, si la operación es de lectura, el contenido de la celda de memoria cuya dirección está en el RDM será transferido al RIM y de ahí se transferirá al procesador. Si la operación es de escritura el contenido a escribir llegará a este registro y de ahí se transferirá a la celda cuya dirección este en el RDM. 3. Selector de Memoria (SM). Es el dispositivo que, tras una orden de lectura o escritura, conecta la casillero de memoria cuya dirección está en el RDM con el RIM permitiendo que la información pueda fluir en ambas direcciones, según sea la operación que deba realizarse. ESTRUCTURAS BÁSICAS DE LAS INSTRUCCIONES DE MÁQUINA § En este apartado veremos esquemáticamente y brevemente tipos de instrucciones de máquina y sus partes. Entendemos por instrucciones de máquina aquellas que pueden ser ejecutadas directamente por el hardware. Estas instrucciones pueden desempeñar distintas funciones: Instrucciones de transferencia de datos Instrucciones de ruptura de secuencia Instrucciones aritméticas y lógicas Instrucciones declarativas Etc. En este apartado se clasifican las instrucciones por su contenido, teniendo en cuenta que todas ellas tienen en primer lugar lo que se llama código de operación (CO), que indica qué operación se debe realizar por el procesador, y aquellas en las que su misión sea hacer alguna operación con determinados datos; llevarán además, implícita o explícitamente, dichos datos, que denominaremos operandos. Instrucciones de tres operandos § También se denominan instrucciones de tres direcciones. En primer lugar constan de un código de operación al que siguen tres operandos, de los cuales, los dos primeros son los operandos y el tercero es la dirección donde se depositará el resultado. Este formato de instrucción es el más cómodo de trabajar, pero es el que precisa mayor número de bits. Un ejemplo de este tipo de instrucción es la generada por una escrita en un lenguaje de alto nivel como: A=B+C
  • 14. Arquitectura de Computadoras página 14 El esquema de una instrucción así sería: INSTRUCCION DE TRES OPERANDOS codigo de operación Operando 1 Operando 2 Operando 3 + (sumar) B C A El código de operación es un número binario que el equipo interpreta como que debe hacer la operación suma. Los operando serán, en este caso, las direcciones de memoria (siempre en números binarios) donde están ubicados los datos (números a sumar en este caso). El operando 3 da la dirección de memoria en donde debe dejarse el resultado. Instrucciones de dos operandos § Constan de código de operación, seguido de dos operandos, de los cuales uno de ellos actúa además como receptor del resultado. También se denominan operaciones de dos direcciones. En este caso podría ser una instrucción de alto nivel de la siguiente forma: A=A+B que quiere decir que a lo que está ubicado en la dirección A de memoria le sume lo que está en B y guarde el resultado en la dirección de A. INSTRUCCIONES DE DOS OPERANDOS Código de Operación Operando 1 Operando 2 + (Sumar) A B En todos los casos los operandos pueden tener las direcciones de memoria o pueden tener datos concretos, por ejemplo números, salvo en aquellos que por su naturaleza tengan que contener direcciones, como en el caso de A o de C en las de tres direcciones. Pero en este caso tanto B como A o B anteriores podrían contener datos específicos Por ejemplo A = A + 12. En este caso el compilador detectaría el 12 como un número (literal técnicamente hablando) y no como una dirección. Armando consecuentemente la instrucción de máquina.
  • 15. Arquitectura de Computadoras página 15 Otro ejemplo lo tenemos en el tercer código de instrucción escrito en el cuadro 1 del capítulo dos: 1101 0001 1001 1100: Mover el valor que está en la dirección de memoria 12 al acumulador A. Donde: 1101 0001 es la dirección del acumulador A 1001 es el código de la operación mover. 1100 es la dirección 12 (es el valor de 12 en binario) En este caso el operador está en la posición central. Esto depende de la arquitectura de hardware específico. Instrucciones de un Operando § También denominadas instrucciones de una dirección. Son las que se realizan generalmente en máquinas que usan la filosofía de acumulador. El acumulador es un registro especial, en el que se encuentra uno de los operandos para este tipo de instrucciones y donde, además, se guarda el resultado. Además hay instrucciones que no necesitan más que un operando, por ejemplo una instrucción de GO TO, o de ruptura de secuencia, simplemente le indica al procesador que continúe con la instrucción que está en la dirección del operando 1 En el cuadro 1 del capítulo 2 se observa que las dos primeras instrucciones son de este tipo: Borrar el acumulador A : 0111 0110 1101 0001 0111 0110 estos valores del primer byte indican la función borrar acumulador. 1101 0001 indica la dirección del acumulador. Borrar el acumulador B: 0111 0110 1101 0010 1101 0010 es la dirección de acumulador B. Se ve que es el valor siguiente, es el número que da al sumarle 1 a la dirección anterior. Instrucciones sin operandos § Esta tipo de instrucciones se utilizan generalmente en computadoras cuya arquitectura tiene filosofía de pila. Una pila está formada por datos en orden consecutivo en la memoria, existiendo un registro especial denominado puntero de pila que nos indica la dirección del último dato introducido en ella. Cuando el dato es sacado de ella, el puntero de pila decrece, apuntando al dato que está a continuación en la pila hacia el fondo de la misma. Cuando se introduce un dato, el puntero toma la dirección de memoria siguiente en orden ascendente y se introduce el dato en dicha dirección.
  • 16. Arquitectura de Computadoras página 16 En definitiva funciona como una pila de platos en donde el primero que se extraiga es el último que se puso. FUNCIONAMIENTO DE LA CPU § Veremos ahora como interactúan las distintas partes que acabamos de ver para lograr el funcionamiento del conjunto. Para esto tomaremos como ejemplo dos operaciones típicas. La primera será la búsqueda de una instrucción y su carga para ejecutarla. La segunda será la realización de una instrucción de suma, en la que buscará dos números en memoria y pondrá el resultado en otro lugar de memoria. En el ejemplo supondremos que el procesador debe cargar la instrucción que está en la dirección de memoria 1. Esta instrucción supondremos que es una de tres direcciones que pretende sumar los datos que están en la dirección 25 y 1225 de memoria y colocar el resultado en la dirección de memoria 1226. Instrucción sumar CO = SUMAR Dir Op 1= 25 Dir Op 2=1225 Dir Result= 1226
  • 17. Arquitectura de Computadoras página 17 Para realizar esta operación se deben realizar dos pasos: Búsqueda de la instrucción Ejecución de la instrucción Búsqueda y preparación de una instrucción § Los pasos seguirá el procesador en esta parte son los siguientes (Ilustración 7): Ilustración 7: Pasos de Búsqueda de Instrucción 1. La unidad de control (UC) envía una micoorden para que el contenido del registro de control de secuencia (RCS), que contiene, como se ha visto, la dirección de la siguiente instrucción (que en este caso tendrá la dirección de memoria 1), sea transferido al registri de dirección de memoria (RDM), de la memoria central. 2. La dirección de memoria que que está ahora en el RDM es utilizada por el selector
  • 18. Arquitectura de Computadoras página 18 para transferir su contenido (que en este caso será toda la instrucción) al registro de intercambio de memoria (RIM) 3. Luego se transfiere la instrucción desde el RIM al registro de instrucción (RI) de la unidad de control (UC). 4. A continuación el descodificador procede a interpretar la instrucción que acaba de llegar al RI; es decir, se entera de cuál es la operación que hay que realizar (en este caso SUMAR). 5. El RCS de la UC se autoincrementa (utilizando la unidad aritmética y lógica UAL) con un valor n, de tal forma que quede con la dirección de memoria de la próxima instrucción a ejecutar. Si posteriormente, en la ejecución del programa, apareciera una instrucción de salto de secuencia, esta instrucción cargaría RCS con la nueva dirección. Ejecución de instrucción § Los pasos que se siguen están ilustrados en en la Ilustración 8 .
  • 19. Arquitectura de Computadoras página 19 Ilustración 8: Pasos de Ejecución de Instrucción Sumar 1. Se transfiere la dirección del primer operando (25) desde el RI al RDM 2. El selector extrae de la memoria dicho dato, depositándolo en el RIM 3. Se lleva el operando desde Rim al registro operando 1 (RO1) de la UAL 4. Se transfiere la dirección del segundo operando (1225) desde el RI al RDM 5. El selector extrae de la memoria disco dato, depositándolo en el RIM 6. Se lleva este operando desde el RIM al registro operando 2 (RO2) de la UAL 7. El secuenciador envía una micro-orden a la UAL para que se ejecute la operación de que se trate (en nuestro caso una SUMA). El resultado de la operación queda almacenado en el registro de resultado (RR)
  • 20. Arquitectura de Computadoras página 20 8. El dato almacenado en el RR es llevado al RIM 9. Se transfiere desde el RI al RDM la dirección de memoria en donde debe quedar almacenada el resultado de la operación (1226). 10. Por último se transfiere la información de la RIM a la dirección de memoria que está almacenada en la RDM. 11. El próximo paso sería el 1.a de la fase anterior, para cargar una nueva instrucción en la UC En el caso en que la instrucción no necesitara operandos no se hubieran realizado los pasos 1 al 6 ni los pasos 9, 10