Temas: Modelo de Bus de Sistema. Computadora ARC. La Arquitectura de Programación. Los Lenguajes y La Máquina
Temas: Modelo de Bus de Sistema. Computadora ARC. La Arquitectura de Programación. Los Lenguajes y La Máquina
Temas: Modelo de Bus de Sistema. Computadora ARC. La Arquitectura de Programación. Los Lenguajes y La Máquina
Temas:
OBJETIVOS:
BIBLIOGRAFÍA:
Página 1 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
2- CICLO DE INSTRUCCIÓN
4- LA ARQUITECTURA ARC.
Página 2 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
Página 3 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
Página 4 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
Página 5 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
PROBLEMAS PROPUESTOS
13. ¿Qué es PSR? ¿Dónde se encuentra? ¿Qué instrucciones se relacionan con él?
¿Quiénes pueden modificarlo? Explique las funciones de los códigos de condición.
¿Cómo indicaría que el resultado es positivo?
16. Dados los siguientes enunciados, escriba las instrucciones en assembler y luego
conviértalas a código máquina. Ejemplifíquelas dibujando mapa de memoria y
registros de CPU involucrados, usted decide los valores no indicados.
A. Leer el contenido de la dirección 2048 de memoria, use el registro 24 como
destino.
B. Escribir en la dirección 4096 de memoria el contenido del registro 24.
C. Leer el contenido de la dirección 10000 de memoria, use el registro 22 como
destino.
D. Suma aritmética usando dos registros fuentes, y el registro 5 como destino.
E. Suma aritmética usando un registro fuente y una constante, y el registro 10
como destino.
Página 6 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
F. Suma lógica usando dos registros fuentes y el registro 25 como destino. Los
valores de los registros fuentes son 00000000 (16) y FFFFFFFF(16). Indique que
valor queda almacenado en el registro destino.
G. Salto a subrutina, usando un valor, no etiqueta, para la cantidad de palabras a
saltar.
H. Salto incondicional, ba 12, almacenada en la dirección 4000 de memoria.
¿Cuál sería la dirección hacia dónde salta?
I. Salto condicional. Indique bajo que condición saltaría.
J. Instrucción jmpl %r15 +4, %r0, almacenada en la dirección 4000. Si tomando
como referencia que la última instrucción call esta almacenada en la dirección
2000, ¿cuál sería la nueva dirección del PC?.
22. Crear una tabla de símbolos para el segmento de programa ARC que se muestra a
continuación.
! Programa principal ! Biblioteca de subrutina
.begin .begin
.org 2048 ONE .equ 1
.extern sub .org 3000
main: ld [x], %r2 .global sub
ld [y], %r3 sub: orncc %r3, %r0, %r3
call sub addcc %r3, ONE, %r3
jmpl %r15 + 4, %r0 jmpl %r15 + 4, %r0
x: 105 .end
y: 92
.end
23. Escribir una subrutina para ARC que realice una operación de intercambio entre
los operandos de bits x = 25 e y = 50, los que se encuentran almacenados en
memoria. Usar la menor cantidad de registros.
24. Desarrolle un programa en assembler que realice el cálculo: z = x + y. Pruebe el
mismo en el Simulador ARC, que se encuentra en el aula virtual, copie y pegue las
pantallas que surgen.
25. A continuación se muestra una sección de código simbólico de ARC, responda:
A. ¿Qué función cumple el programa? ¿Cómo lo hace? Realice una prueba de
escritorio.
B. Indique cuales son las etiquetas, las directivas, las instrucciones y los
comentarios.
C. Realice la tabla de símbolos.
D. Páselo a lenguaje máquina.
Página 7 de 8
Universidad Tecnológica Nacional AÑO 2020
Facultad Regional Tucumán
Página 8 de 8