Examen de Fonaments d'Informàtica UAB 2018 · recuperació. (Febrer 2018)
Examen de Fonaments d'Informàtica de la UAB (Grado en Ingeniería Informática) 2018, recuperació. (Febrer 2018): 11 problemas con solución. Gratis.
Temas del examen: Representació de nombres: canvis de base, enters amb signe i aritmètica en C2 · Estructura del computador: registres, memòria i busos · Modes d'adreçament i execució a nivell de microoperacions · Programació en llenguatge màquina i traducció des de C · Traça d'execució, subrutines i gestió de la pila · Interrupcions, excepcions i registre d'estat · Entrada/sortida: E/S programada, per interrupcions i DMA · Sistema operatiu: modes d'execució, crides al sistema i processos
Ejercicio Teoria 1 · Estructura del computador: registres, memòria i busos
1 Teoria 1 (2 punts). Funcionalitat de registres i unitats
Expliqueu de manera sintètica quina funció desenvolupen cadascun dels següents elements i registres de la CPU:
a.
b.
c.
d.
Ejercicio Teoria 2 · Estructura del computador: registres, memòria i busos
2 Teoria 2 (1,5 punts). Nivells de la jerarquia de memòria
Analitzant les propietats de la jerarquia de memòria convencional (Registres, Memòria Cau, Memòria Principal i Emmagatzematge Secundari), indiqueu quin tipus d'elements (instruccions i dades) s'emmagatzemen en els tres primers nivells.
Nota guia: En els dispositius d'emmagatzematge secundari trobem de forma permanent el conjunt d'aplicacions instal·lades i els fitxers d'usuari.
1.
2.
3.
Ejercicio Teoria 3 · Modes d'adreçament i execució a nivell de microoperacions
3. Teoria 3 (2 punts). Transferència de registres model von Neumann
Descriviu pas a pas la seqüència temporal a nivell de transferència de registres (RTL) seguint l'arquitectura de von Neumann per a cadascuna de les operacions següents:
a.
add AX, 1000
(AX és un registre intern, 1000 representa adreçament directe a memòria, MAR i MBR són els registres d'enllaç amb el bus de memòria).
b.
call 2000
(Salt a subrutina; el punter SP conté el valor 400, apunta a la primera posició disponible de la pila i la pila creix cap a adreces decreixents).
Ejercicio Teoria 4 · Interrupcions, excepcions i registre d'estat
Teoria 4 (2,5 punts). Gestió d'interrupcions i registres
Suposeu que el processador executa la instrucció cmp R0, R1 d'un determinat programa P1 sota les condicions següents:
La instrucció se situa a l'adreça 1000 de memòria.
R0 i R1 són registres de 8 bits. En començar l'operació, i .
El punter de pila SP conté el valor 2000. La màquina treballa fent que SP apunti a la primera posició lliure i la pila creix cap a adreces creixents de memòria.
Mentre l'ALU realitza l'operació entre R0 i R1, s'activa una línia d'interrupció.
El registre d'estat (SR) té 8 bits; els 4 bits menys significatius contenen els flags C, Z, S i O (en aquest ordre exactament), mentre que els 4 bits més significatius són 0.
La rutina d'atenció a la interrupció (ISR) està ubicada a l'adreça 200 de memòria.
Assumint que la interrupció serà acceptada i servida pel processador, responeu:
a)
Acabarà el processador d'executar la instrucció cmp R0, R1 abans de gestionar la interrupció? Raoneu la resposta.
Sí
No
b)
Quan la CPU accepta la interrupció, cal identificar el dispositiu causant. Descriviu breument com es pot dur a terme aquest reconeixement (esmenteu els dos mecanismes principals estudiats):
c)
Quins valors concrets tindran emmagatzemats el comptador de programa (PC), el registre d'estat (SR) i el punter de pila (SP) immediatament abans de realitzar el salt a la rutina d'atenció?
d)
Quins valors tindran el PC i el SP immediatament després de fer el salt a la rutina d'atenció?
e)
Quins valors s'hauran apilat a la pila en produir-se el salt i a quines posicions de memòria específiques s'hauran guardat?
Ejercicio Teoria 5 · Entrada/sortida: E/S programada, per interrupcions i DMA
Teoria 5 (1 punt). Mecanismes d'Entrada/Sortida
Descriviu breument els tres mecanismes d'E/S principals treballats a l'assignatura: E/S programada amb llaços d'espera (busy waiting), E/S dirigida per interrupcions i Accés Directe a Memòria (DMA). Argumenteu quins motius justifiquen l'aparició i ús dels dos últims.
Ejercicio Teoria 6 · Sistema operatiu: modes d'execució, crides al sistema i processos
Teoria 6 (2 punts). Mode usuari, mode supervisor i crides al sistema
Al llarg del curs s'ha insistit que els programes desenvolupats per usuaris no tenen autorització per executar operacions d'E/S de manera directa.
a)
Per quin motiu físic i d'arquitectura no ho poden fer?
b)
Quines altres restriccions imposa el sistema a un programa que s'executa en mode usuari?
c)
Quin és l'únic programari autoritzat a gestionar la totalitat dels recursos del computador i quina conseqüència se'n deriva per al control del sistema?
d)
Quin mecanisme permet que un programa d'usuari sol·liciti l'execució d'una tasca d'E/S?
Problema 1 · Programació en llenguatge màquina i traducció des de C
Problema 1 (1,5 punts). Traducció d'assemblador a llenguatge C
Traduïu el següent fragment de codi en llenguatge màquina/assemblador al seu equivalent en llenguatge C. Si cal, definiu les variables necessàries indicant el tipus més escaient:
Instruccions
Comentaris
mov R0, 1000
; Adreçament de registre directe i directe
mov R1, 1001
cmp R0, R1
; Comparació
je <label1>
; Salta si és igual
shl R0
; Desplaçament a l'esquerra
mov 1000, R0
jmp <label2>
; Salt incondicional
label1: add R0, R1
; Suma
mov 1000, R0
label2: sub R1, R0
; Resta
mov 1001, R1
Problema 2 · Programació en llenguatge màquina i traducció des de C
Problema 2 (1,5 punts). Traducció de C a llenguatge màquina
Donat el següent fragment de codi en C, escriviu el codi equivalent en llenguatge assemblador. Assumiu les assignacions d'adreces indicades:
#define N 1000
int i, min, V[N];
...
min = V[0];
for (i = 1; i < N; i++) {
if (min > V[i]) min = V[i];
}
Adreces assignades:
i a l'adreça 998
min a l'adreça 999
El vector V comença a partir de l'adreça 1000
Problema 3 · Representació de nombres: canvis de base, enters amb signe i aritmètica en C2
Problema 3 [2 punts]. Conversió de bases a Complement a 2 (16 bits)
Determineu la representació binària en Complement a 2 a 16 bits dels següents valors expressats en les bases indicades. Detalleu clarament totes les operacions fetes per obtenir el resultat:
a.
b.
c.
d.
Problema 4 · Representació de nombres: canvis de base, enters amb signe i aritmètica en C2
Problema 4 (2 punts). Aritmètica en Complement a 2 de 8 bits
Considerant els següents dos nombres de 8 bits representats en Complement a 2:
 
Calculeu les següents operacions sense utilitzar directament la resta (és a dir, sumant el complementat corresponent quan calgui). Indiqueu en cada cas si es produeix o no error de desbordament (overflow):
a)
No
Sí
b)
No
Sí
c)
No
Sí
Problema 5 · Traça d'execució, subrutines i gestió de la pila
Problema 5 (2 punts). Traça d'execució i gestió de la pila
Donat el següent fragment de programa en assemblador:
1.- mov X, #0
2.- mov R0, 200[X]
3.- mov (301), R0
4.- call 50
5.- cmp X, #2
6.- jnz 2
50.- push R0
51.- inc R0
52.- inc X
53.- pop R0
54.- ret
Modes d'adreçament utilitzats:
n: Directe
#n: Immediat
n[X]: Indexat
(n): Indirecte
Condicions de la pila: L'SP apunta a la primera posició lliure de la pila i aquesta creix cap a posicions majors de memòria.
Ompliu la taula següent que reflecteix l'evolució dels registres, la memòria i la pila al llarg de l'execució. Escriviu la instrucció executada a cada pas i el valor corresponent que s'ha modificat:
INSTRUCCIÓ
PC
SP
R0
X
100
101
102
200
201
202
300
301
302
400
401
Estat inicial
1
400
200
201
202
10
11
12
100
101
102
mov X, #0
2
0
mov R0, 200[X]
3
10
mov (301), R0
4
call 50
50
401
push R0
51
402
inc R0
52
inc X
53
1
pop R0
54
401
10
ret
5
400
cmp X, #2
6
jnz 2
mov R0, 200[X]
3
mov (301), R0
4
call 50
50
401
push R0
51
402
inc R0
52
inc X
53
2
pop R0
54
401
11
ret
5
400
cmp X, #2
6
jnz 2
También puedes estudiar por temas
Practica un tema con ejercicios de los exámenes de todos los años, mezclados.
- Representació de nombres: canvis de base, enters amb signe i aritmètica en C2 · 13 problemas · 75 % de que salga
- Estructura del computador: registres, memòria i busos · 9 problemas · 75 % de que salga
- Modes d'adreçament i execució a nivell de microoperacions · 9 problemas · 75 % de que salga
- Sistema operatiu: modes d'execució, crides al sistema i processos · 8 problemas · 75 % de que salga
- Programació en llenguatge màquina i traducció des de C · 7 problemas · 75 % de que salga
- Traça d'execució, subrutines i gestió de la pila · 7 problemas · 75 % de que salga