Вы находитесь на странице: 1из 6

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

PRACTICAS 2 ARQUITECTURA
COMPUTADORES
Valencia Gonzalo, Martnez Yenny.
Gonzalo.valencia89@gmail.com
ycmartinezpe@unadvirtual.edu.co
Tutor, Manuel Sierra Rodrguez

ResumenDesarrollo de la prctica 2 de laboratorio


propuesta en el aula virtual por el director del curso,
realizando ilustraciones de cada uno de los pasos realizados.

ndice de TrminosCPU, Secuenciador,


Memoria, decodificador, bus de datos, msx88.
I.INTRODUCCIN
La elaboracin de esta prctica tiene como objetivo
conocer e indagar acerca del funcionamiento de la
cpu, mediante la utilizacin de un simulador
llamado MSX88 que nos mostrar de manera
grfica como se adelantan los procesos internos de
la cpu y la cantidad de pasos que se realizan para
obtener el resultado de una operacin solicitada a la
mquina a fin de lograr una mayor comprensin de
las funciones y componentes que intervienen en los
procesos de la cpu.

DOS Box y luego creamos un archivo desde el bloc de notas


con las siguientes instrucciones:
ORG 2000H
MOV AX,20H
MOV DX,30H
ADD AX,DX
END
END
Con el archivo ya listo lo guardamos con la extensin .ASM
en la carpeta msx88 alojada en C.
Damos inicio a las instrucciones solicitadas en la prctica
ejecutando el DOS Box, digitamos el comando mount c:
c:\msx88, con este comando lo que hacemos es montar el
disco local c en el simulador y adems la carpeta msx88 que
contiene el simulador, posteriormente ingresamos a c: para
crear los ficheros necesarios para la ejecucin del programa
de esta manera digitamos el siguiente comando:
ASM88 prog1.ASM
En este caso nos habilita la opcin de crear el fichero objeto
(.O) y el fichero Fuente (.LST) que deben llevar el nombre
del archivo (prog1).

Esta prctica se elaborar mediante la utilizacin


del software MSX88 y DOS Box que nos sirven
para simular el comportamiento interno de la Cpu.
II.

EJERCICIO

1.

Escribir un programa que realice la suma de los datos


inmediatos (el 20h y el 30h) que se encuentran en los
registros AX y DX del procesador, el resultado lo almacena
en AX.
Para realizar esta prctica lo primero que debemos hacer es
descargar e instalar los programas requeridos para la misma,
MSX88 y DOS Box, luego de tenerlos descargados en la
carpeta raz del equipo en este caso C: guardamos la carpeta
de descarga de MSX88 dando le un nombre para nuestro caso
la nombramos igual (msx88), Ejecutamos el instalador de

Imagen 1 Creacin de ficheros .o y .lst

Posteriormente se debe digitar el comando:


LINK88
Esta instruccin nos crea un nuevo fichero (.EJE) que en este
caso es el ejecutable del programa.

Arquitectura de computadores

CEAD JAG

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

Luego el programa nos muestra la ventana principal del


simulador msx88 que contiene las siguientes partes:
- Bloques de memoria principal
- CPU
- ALU
- Decodificador
- Secuenciador
- Buses de direccin y de datos
- Perifricos
- Entrada de comandos
Para cargar nuestro programa digitamos la instruccin L (load)
y el nombre del programa que queremos ejecutar en nuestro
caso prog1 + la tecla F6
Imagen 2 Creacin de ficheros .eje

Dentro de la carpeta msx88 llamamos el primer programa a


ejecutar para este caso prog1 que fue el nombre que se le dio a
nuestro archivo inicial, estas instrucciones llaman al ejecutable
de msx88.

Imagen 4Pantalla Load del programa

Para realizar las operaciones de suma en este simulador se


requieren 8 pasos en 6 ejecuciones de instruccin descritos a
continuacin.
Paso 1: Inicia en el IP quien solicita informacin al bloque de
memoria, el secuenciador enva la orden al bloque de memoria
para que retorne por el bus de datos al registro de instruccin,
de aqu pasa al decodificador quien identifica la orden como
MOV y de este pasa al secuenciador, luego el ip aumenta en
uno, enva por el bus de datos a la memoria guardando el
nmero 20 en el registro AX.
Paso 2: Realiza los mismos movimientos que el paso 1, pero
en este caso guarda 00 en la posicin AX.
Paso 3: Esta instruccin enva BA al decodificador quien lo
representa con el comando MOV y le indica que se mueva el
argumento al registro DX.

Imagen 3Llamada al programa

Paso 4: Esta instruccin realiza los mismos movimientos que


el paso n 1, enviando el numero 30 al registro DX.
Paso 5: Realiza los mismos movimientos que el paso anterior
enviando esta vez el numero 00 al registro DX.

Arquitectura de computadores

CEAD JAG

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

Hasta aqu podemos observar que se han guardado los


nmeros necesarios para la operacin en la cpu.

III.

EJERCICIO

2.
3.
4.
5.

Paso 6: Esta instruccin realiza lectura de memoria y enva el


valor 03 al decodificador para su interpretacin.
Paso 7: En este paso se realiza tambin la lectura de memoria
y enva el valor C2 al decodificador, este a su vez toma los
valores y los interpreta como la operacin a realizar que en
este caso es ADD (suma).
Paso 8: En este paso se toman los valores guardados en AX y
los enva al primer operando de la ALU, luego toma los
valores de DX y los enva al segundo operando, se realiza la
operacin que en este caso es suma y se enva el resultado a el
registro AX, al tiempo que se activa el flag P que significa
paridad de bits.

2.

Cambiar los datos que se suman por los datos (9876h y 2000h)
y repetir los pasos de la seccin 1 hasta finalizar la
simulacin.
Para el desarrollo de este ejercicio se realizan los mismos
pasos que en el primero como son:
1.

Imagen 5 Registro de nmeros en la CPU.

creacin del archivo .ASM en el bloc de notas, esta


vez se llamar prog2
Montar el disco local c en el DOS Box para la
ejecucin del programa
Creacin de los ficheros .O .LST con el comando
ASM88
Creacin del fichero .EJE con el comando LINK88
Ejecucin del programa con la instruccin load (L)

Pasos que realiza el programa:


Paso 1: Solicitud de informacin al bloque de memoria, quien
enva la informacin BA al decodificador e interpreta la accin
a realizar como MOV y de este pasa al secuenciador, luego el
ip aumenta en uno, enva por el bus de datos a la memoria
guardando el nmero 76 en el registro AX.
Paso 2: Realiza los mismos movimientos que el paso 1,
guardando 98 en la posicin AX.
Paso 3: Esta instruccin enva BA al decodificador quien lo
representa con el comando MOV y le indica que se mueva el
argumento al registro DX.
Paso 4: Esta instruccin realiza los mismos movimientos que
el paso n 1, enviando el numero 00 al registro DX.
Paso 5: Realiza los mismos movimientos que el paso anterior
enviando esta vez el numero 20 al registro DX.
Al igual que el ejercicio anterior observamos cmo se
encuentra el simulador hasta esta parte de la ejecucin.

Imagen 6 Resultado de la operacin

Imagen 7 Registro de nmeros en la CPU

Paso 6: Esta instruccin realiza lectura de memoria y enva el


valor 03 al decodificador para su interpretacin.
Arquitectura de computadores

CEAD JAG

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

Paso 7: En este paso se realiza tambin la lectura de memoria


y enva el valor C2 al decodificador, este a su vez toma los
valores y los interpreta como la operacin a realizar que en
este caso es ADD (suma).
Paso 8: En este paso se toman los valores guardados en AX y
los enva al primer operando de la ALU, luego toma los
valores de DX y los enva al segundo operando, se realiza la
operacin que en este caso es suma y se enva el resultado a el
registro AX, al tiempo que se activa el flag S que muestra el
estado de signo.

ip aumenta en uno, enva por el bus de datos a la memoria


guardando el nmero 76 en el registro AX.
Paso 2: Realiza los mismos movimientos que el paso 1,
guardando 98 en la posicin AX.
Paso 3: Esta instruccin enva BA al decodificador quien lo
representa con el comando MOV y le indica que se mueva el
argumento al registro DX.
Paso 4: Esta instruccin realiza los mismos movimientos que
el paso n 1, enviando el numero 00 al registro DX.
Paso 5: Realiza los mismos movimientos que el paso anterior
enviando esta vez el numero 20 al registro DX.
Paso 6: Esta instruccin realiza lectura de memoria y enva el
valor 2B al decodificador para su interpretacin.
Paso 7: En este paso se realiza tambin la lectura de memoria
y enva el valor C2 al decodificador, este a su vez toma los
valores y los interpreta como la operacin a realizar que en
este caso es SUB (resta).

Imagen8 Resultado de la operacin

IV.

EJERCICIO

3.

Cambiar la operacin aritmtica, en vez de sumar se desea


restar para ello cambiar la instruccin ADD AX,DX por SUB
AX, DX en el cdigo.
1.

Para realizar este ejercicio procedemos a digitar un


nuevo archivo .MSA que llamaremos prog3 con las
siguientes instrucciones:

ORG 2000H
MOV AX,9876H
MOV DX,2000H
SUB AX,DX
END
END
2.
3.
4.
5.

Montamos el disco local c en el DOS Box para la


ejecucin del programa
Creamos de los ficheros .O .LST con el comando
ASM88
Creamos del fichero .EJE con el comando LINK88
Ejecucin del programa con la instruccin load (L)

Imagen9 Registro de valores en AX y DX decodificacin de operacin

Paso 8: En este paso se toman los valores guardados en AX y


los enva al primer operando de la ALU, luego toma los
valores de DX y los enva al segundo operando, se realiza la
operacin que en este caso es resta y se enva el resultado a el
registro AX, al tiempo que se activa el flag O que significa
desbordamiento aritmtico.
Como se muestra en la siguiente imagen:

Pasos que realiza el programa:


Paso 1: Solicitud de informacin al bloque de memoria, quien
enva la informacin BA al decodificador e interpreta la accin
a realizar como MOV y de este pasa al secuenciador, luego el

Arquitectura de computadores

CEAD JAG

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

Paso 4: Esta instruccin realiza los mismos movimientos que


el paso n 1, enviando el numero 00 al registro DX.
Paso 5: Realiza los mismos movimientos que el paso anterior
enviando esta vez el numero 20 al registro DX.
Paso 6: Esta instruccin realiza lectura de memoria y enva el
valor al decodificador para su interpretacin.
Paso 7: En este paso se realiza tambin la lectura de memoria
y enva el valor al decodificador, este a su vez toma los
valores y los interpreta como la operacin a realizar que en
este caso es SUB (resta).

Imagen10 Resultado de la operacin

V.

EJERCICIO

4.

Cambiar el orden de los operandos en la prctica anterior,


escribir SUB DX, AX y observar que pasa con los flag de
estado del computador.
1.

Como se indica en el ejercicio procedemos a crear


nuestro archivo prog4.ASM con las siguientes
instrucciones:

ORG 2000H
MOV AX,9876H
MOV DX,2000H
SUB DX,AX
END
END
2.
3.
4.
5.

Montamos el disco local c en el DOS Box para la


ejecucin del programa
Creamos de los ficheros .O .LST con el comando
ASM88
Creamos del fichero .EJE con el comando LINK88
Ejecucin del programa con la instruccin load (L)

Imagen11 asignacin de valores a AX, DX y operacin sub

Paso 8: En este paso se toman los valores guardados en AX y


los enva al primer operando de la ALU, luego toma los
valores de DX y los enva al segundo operando, se realiza la
operacin que en este caso es resta y se enva el resultado a el
registro DX, al tiempo que se activan los flags S (Cambio de
signo) lo que indica que la operacin realizada dio con signo
negativo, O (Desbordamiento) seala desbordamiento
aritmtico, C (Acarreo) indica el arrastre del bit de mayor
orden , A (Acarreo auxiliar) indica el ajuste en operaciones
aritmticas con cantidades BCD.

Pasos que realiza el programa:


Paso 1: Solicitud de informacin al bloque de memoria, quien
enva la informacin BA al decodificador e interpreta la accin
a realizar como MOV y de este pasa al secuenciador, luego el
ip aumenta en uno, enva por el bus de datos a la memoria
guardando el nmero 76 en el registro AX.
Paso 2: Realiza los mismos movimientos que el paso 1,
guardando 98 en la posicin AX.
Paso 3: Esta instruccin enva BA al decodificador quien lo
representa con el comando MOV y le indica que se mueva el
argumento al registro DX.

Arquitectura de computadores

CEAD JAG

UNAD. Valencia Gonzalo, Martnez Yenny, Practicas 1 y 3 Arquitectura de Computadores .

CONCLUSIONES
Se identific el funcionamiento interno de la CPU
teniendo en cuenta cada uno de los pasos realizados
para obtener el resultado de una operacin
aritmtica mediante la utilizacin de este emulador
ingresando ciertos comandos que nos permitieron
ver paso a paso el recorrido que hace desde el
inicio, pasando por cada estacin donde ejecuta
parte de la instruccin recibida llegando as a
mostrar el resultado de la operacin en mencin.
VI.

Por otra parte se realiz el anlisis respectivo a cada


uno de los ejercicios propuestos teniendo en cuenta
el cambio de estado de los flags quienes son los que
dejan constancia de algunas condiciones que se
dieron en la ltima operacin realizada y que habrn
de ser tenidas en cuenta en operaciones posteriores.
Por ejemplo, en el caso de hacer una resta, tiene que
quedar constancia de si el resultado fue cero,
positivo o negativo.
REFERENCIAS

[1] http://sourceforge.net/projects/dosbox/?
source=typ_redirect
[2] http://www.youtube.com/watch?
v=NUYBKr6rfjQ

Arquitectura de computadores

CEAD JAG

Вам также может понравиться