Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 1. a) caracteristici non-RISC pentru ARM
- b)o problema cu mecanism de paginare. Se dadea FA=32 b, VA=32 b, dimensiunea paginii=1 MB. Trebuia calc dimensiunea tabelului de pagini, desenata diagrama si semantica.
- 2. a)XRL A,s sa scrii semantica, ce mod de adresare poate sa fie folosit pt s si unde se afla pt fiecare mod de adr.
- b)anatomia descriptorilor (caracteristici, unde se gasesc, ce contine fiecare tip)
- 3. a) subiectul 7 de pe nitro: Sa se descrie un sistem de paginare cu un singur nivel intermediar care are dimensiunea paginii de 16kB si VA de 32 biti. Se cerea:
- -sa se precizeze companenta adresei virtuale:
- R: adresa virtuala e compusa din 2 parti, OFFSET (prmii 14 biti ) si TABLE (urmatorii 18 biti)
- -ce dimensiune are tebela de pagini?
- R: 4*2^18=1MB
- -ce dimensiune au elementele din tabela de pagini
- R: 4B
- -sa se prezinte descrierea semantica (se poate copia din curs da trebuie adapta pentru numai un nivel de paginare si pentru un offset de 14 biti)
- -sa se deseneze
- b) Precizati descrierea formala pentru instructunile:
- MOV r11, #20
- MOV r10,#0
- loop
- mov r10,r0,r4,r10
- mov r10,r1,r5,r10
- mov r10,r2,r6,r10
- mov r10,r3,r7,r10
- subs r11,r11,#4
- BNE loop
- -mo intrebat extra, ce face instructiunea SUBS
- R (din ce am inteles de la prof): face scaderea a 2 registri si activeaza flagurile
- 4 . a) add [BX], DX. Mi se dadea Access byte al descriptorului segmentului vizat ca fiind F4 hexa. Trebuia sa spun daca apare o exceptie si daca apare sa zic daca e restartable sau nu.
- b) un set de instructiuni pentru arm si sa scriu descrierea semantica. Ceva de genul : ldr R13, [R4, #FFFFFFFF], TST R13, R3, ldreq R13, [R5, #4], ldrne R13, [R4, #5], strne R13, [R2], #6, subne pc, [R4], #5. Ideea era ca la cele cu conditii mai intai trebuia sa testez daca se verifica conditiile de la 7.5.1 si daca se respectau faceam instructiunea, daca nu, o saream. Nu conta ce am in registre si nici numele registrelor, eu pur si simplu am facut descrierea semantica, pe caz general.
- 5. a) sa fac un pipeline pt un set de instructiuni de la k-10 pana la k+10, stiind ca instructiunile k-1, k+2 si k+4 sunt individuale
- b) se dadea instructiunea INC s si se cerea
- -semantica
- -moduri de adresare
- - locatiile in memorie in functie de modurile de adresare
- 6. a) sa fac diagrama de multitasking intre 3 procese: A->B->C->. fiecare cu LDT-ul lui de la A la B treceam printr-un task gate din gdt, de la B la C printr-un task gate in LDT_B, si de la C la A inapoi prin selectarea directa a TSS-ului. sa zic fiecare descriptor ce rol are unde se gaseste. ce tabele folosesc si de ce.
- b) Sa spun daca se genereaza o exceptie la instructiunea ADDC Reg1, ]Reg2]
- daca mi se da ACCESS_BYTE=77H. si daca instructiunea e restartabila si in ce conditii
- 7. a)sa se identifice registrele folosite de microprocesorul Intel Pentium pentru:
- *identificarea unui segment in memoria virtuala
- * localizarea unui LDT
- * GDT
- * IDT
- b)pentru ADC [BX],DX si ACCESS_BYTE=71H trebuia sa spun daca se genereaza o exceptie si daca instructiunea este restartabila
- 8. a) Risc features of ARM
- b) un pipeline cu instructiunile k-1, k-2, k-4, k+2 individuale. trebuia sa desenez schema de cand intra k si k+1 pe teava pana cand ies. m-a mai intrebat de ce unele instructiuni nu pot fi combinate cu altele ( desi nu scria asta in cerinta )
- 9. a)Instructiunea SUB [BP+4], DH iar in Byte`ul ACCES numarul F1H. Trebuia sa spun daca se genereaza o exceptie si daca da, de ce fel. Eu am zis ca se genereaza "un fault" si ca instructiunea nu este restartabila ptr. ca trebuia sa scrii in Data segment dar bitul de Write era 0 si nu-ti dadea voie asta.
- b) In cazul ARM, semantica ptr. :
- MOV R4, #0x80000000
- LDR R0, [R4, #0]
- CMP R0, #1
- BLEQ proc_instr
- MOV R0, #0
- STR R0, [R4, #4]
- 10. a) ANL s, #data - sa spui semantica, unde se afla data (program memory) si unde se gaseste s(aveai in lower 128 si SPF) si mai ma intrebat buzo un exemplu practic de si eu am spus(anl A, #0x0F si unde se afla te uitai in tabelul cu SFR si A se alfa la E0
- b) nu prea mai stiu exact dar aveam de spus ACCESS Intel 32 mod virtualpt un seg de date, pentru un seg de program, pentru o poarta de apelare. Asta nu era cerinta principala da nu prea mai stiu cum suna, era ceva de genul daca am acces dintr-un seg in altul aici conta mai mult DPL ul
- 11. a) Descrierea semantica pentru Pop d , ce fel de adresare poate sa aiba operandul d si unde se afla, unde se afla stiva
- b) Anatomia unui descriptor de segment de date de tip "WR"
- 12. a) despre PUSH s
- b)un exercitiu cu CPL, DPL
- 13. a) ANL s, #data – de scris semantica
- - ce tip de adresare e
- - ce tip poate sa fie s (reg, acc etc), ce tip de adresare ar fi in fiecare caz si unde se gaseste in memorie (pt fiecare caz)
- - cine este data si unde se gaseste in memorie
- b) anatomia descriporilor in protected mode ( ce descriptori avem si ce contin). Cand am prezentat sub, mi-a spus sa fac o clasificare in modul general (adica sa vb despre toti – ce tip sunt, unde se gasesc, ce contine fiecare, cand se folosesc etc)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement