PP - Test 2

Description

Quiz on PP - Test 2, created by M T on 16/12/2017.
M T
Quiz by M T, updated more than 1 year ago
M T
Created by M T over 6 years ago
105
0

Resource summary

Question 1

Question
Registar %7
Answer
  • ima opštu namenu
  • služi kao radni registar
  • je pokazivač frejma
  • služi za ostavljanje povratne vrednosti funkcije

Question 2

Question
Registar %13
Answer
  • rezervisan je za povratnu vrednost funkcije
  • ne postoji
  • je radni registar
  • je pokazivač frejma

Question 3

Question
Registar %15
Answer
  • je radni registar
  • je rezervisan za pokazivač frejma
  • je rezervisan za pokazivač steka

Question 4

Question
Registar %14
Answer
  • sadrži pokazivač steka
  • sadrži pokazivač frejma
  • je rezervisan za povratnu vrednost funkcije

Question 5

Question
Označiti sistemske labele
Answer
  • @if0:
  • @f_body:
  • main:
  • meda:

Question 6

Question
Izlazni operandi mogu biti:
Answer
  • neposredni
  • registarski
  • direktni
  • indirektni
  • indeksni

Question 7

Question
Označiti neposredne operande:
Answer
  • $-16
  • $milica
  • $36
  • labela
  • (%3)

Question 8

Question
Vrednost dirktnog operanda odgovara
Answer
  • adresi labele, ako ona označava naredbu i koristi se kao operand naredbe skoka ili poziva potprograma
  • sadržaju adresirane lokacije, ako direktni operand odgovara labeli koja označava direktivu i ne koristi se kao operand naredbe skoka ili poziva potprograma
  • sadržaju memorijske lokacije koju adresira sadržaj registra
  • vrednosti tog broja

Question 9

Question
Vrednost registarskog operanda je
Answer
  • sadržaj tog registra
  • sadržaj memorijske lokacije koju adresira sadržaj registra

Question 10

Question
Označiti registarski operand
Answer
  • %7
  • (%7)
  • %4
  • (%4)

Question 11

Question
Indeksni operand započinje
Answer
  • isključivo celim (označenim ili neoznačenim) brojem
  • celim (označenim ili neoznačenim) brojem ili labelom
  • isključivo celim (neoznačenim) brojem
  • isključivo labelom

Question 12

Question
Označiti tačno
Answer
  • (%7) je indirektni operand
  • vrednost indirektnog operanda je sadržaju memorijske lokacije koju adresira sadržaj registra
  • 4(%7) je indirektni operand
  • vrednost indirektnog operanda je sadržaj registra

Question 13

Question
Naredbe za rukovanje stekom su
Answer
  • pop
  • push
  • call
  • clear
  • ret

Question 14

Question
Izgenerisani kod odgovara naredbi: SUBS -8(%14),-4(%14),%0 MOV %0,-4(%14)
Answer
  • a = b – a;
  • a = b + a;
  • b = b – a;

Question 15

Question
Izgenerisani kod odgovara naredbi: ADDS-4(%14),-8(%14),%0 ADDS-12(%14),-16(%14),%1 MULS%0,%1,%0 SUBS%0,-20(%14),%0 MOV %0,-4(%14)
Answer
  • a = (a + b) * (c + d) – e;
  • a = (a + b) * c + d – e;
  • a = a + b * (c + d) – e;

Question 16

Question
Radni registar se oslobađa
Answer
  • čim se preuzme njegova vrednost
  • čim se njegova vrednost smesti naredbom mov u neku memorijsku lokaciju
  • oslobađa se kada ga korisnik oslobodi

Question 17

Question
Ako funkcija ne sadrži return iskaz, kao povratna vrednost funkcije služi?
Answer
  • zatečeni sadržaj registra %13
  • upiše se konstanta 1
  • upiše se konstanta 0
  • funkcija mora imati naredbu return

Question 18

Question
Označiti iskaze koji predstavljaju ispravnu upotrebu naredbe push
Answer
  • PUSH %0
  • PUSH $1
  • PUSH -8(%14)

Question 19

Question
Kom delu MiniC koda odgovara generisani asemblerski kod: ADDS -4(%14),-8(%14),%0 PUSH %0 CALL f ADDU %15,$4,%15 MOV %13,-4(%14)
Answer
  • a = f(a + b);
  • b = f(a + b);
  • a = f(a) + f(b);

Question 20

Question
Kom delu MiniC koda odgovara generisani asemblerski kod: @if0: CMPS -4(%14),-8(%14) JGES @false0 @true0: MOV $1,-4(%14) JMP @exit0 @false0: @exit0:
Answer
  • if(a < b) a = 1;
  • if(a > b)a = 1;
  • Generisani kod nije moguć, jer labele moraju sadržati barem jednu naredbu

Question 21

Question
Ukoliko je MiniC kod sledeći, koja labela će biti generisana kao oznaka početka while petlje (napomena: if je prva naredba u funkciji) : if(a < b) a = 1; while (a < b) b = b - a;
Answer
  • @while0:
  • @while1:
  • @while2:

Question 22

Question
Naredbi break odgovara koji asemblerski kod: (napomena za while lab_num = 0 , a za if 1) while(a < 5) { if(a == b) break; a = a + 1; }
Answer
  • JMP @exit0
  • JMP @exit1
  • Ne postoji break naredba

Question 23

Question
(Kod kompajlera za jezik C) Frejm bloka
Answer
  • ne postoji
  • frejm bloka se stvara na ulazu u blok, a uništava na izlasku iz bloka
  • frejm bloka ne sadrži argumente kao ni povratnu vrednost
  • lokalne promenljive blokova se čuvaju u frejmu bloka na steku
  • frejm bloka sadrži argumente kao i povratnu vrednost
  • frejm bloka sadrži argumente

Question 24

Question
U kojoj liniji se nalazi nedostupna naredba asemblerskog koda: @lab0: CMPS a,b linija 1 JE @true0 linija 2 JNE @false0 linija 3 SUBS %3,$1,%3 linija 4 @true0: MOV b,a linija 5
Answer
  • 4
  • 1
  • 3
  • 2
  • 5

Question 25

Question
Ako je miniC funkcija int fun( int a), kako se pristupa vrednosti a u asembleru?
Answer
  • 8(%14)
  • 4(%14)
  • -8(%14)
  • -4(%14)

Question 26

Question
Šta radi naredba RET?
Answer
  • skida sa steka povratnu adresu
  • smešta vrednost povratne adrese u programski brojač i tako preusmerava tok programa
  • smesti povratnu vrednost funkcije u registar %13

Question 27

Question
Za generisanje koda zadužen je
Answer
  • Skener
  • Parser
  • Generator koda

Question 28

Question
Uloga parsera je
Answer
  • da vrši sintaksnu analizu
  • da vrši semantičku analizu
  • da generiše kod
  • da vrši leksičku analizu
  • da vrši optimizaciju

Question 29

Question
Koji od registara su radni
Answer
  • %12
  • %13
  • %17
  • %14
  • %15

Question 30

Question
Kom delu miniC kod odgovaraju generisane asemblerske naredbe (promenljive su deklarisane u redosledu a,b) ADDS -4(%14),$3,%0 MOV %0,-4(%14)
Answer
  • a = a + 3;
  • b = a + 3;
  • a + 3;
  • a = 3;

Question 31

Question
Označiti indeksne operande
Answer
  • tabela(%0)
  • tabela(%1)
  • -4(%1)
  • (%1)4

Question 32

Question
Označiti indeksne operatore
Answer
  • tabela(%0)
  • tabela(%1)
  • -4(%1)
  • (%1)4

Question 33

Question
Direktiva za zauzimanje memorijskih mesta u HAJ
Answer
  • je WORD broj
  • omogućuje zauzimanje onoliko memorijskih lokacija koliko je navedeno u operandu
  • uvek zauzima 4 bajta
  • ne postoji

Question 34

Question
Za rukovanje sa registrima koriste se funkcije
Answer
  • free_reg()
  • take_reg()
  • new_reg()
  • clear_reg()

Question 35

Question
Kod generisanja asemblerskog koda za if naredbu
Answer
  • labela false se uvek generiše, bez obzira da li postoji else
  • labela exit se generiše da bi označila kraj if naredbe
  • labela false se uvek generiše samo ako postoji else

Question 36

Question
Na lokaciji 4(%14) se nalazi
Answer
  • argument funkcije, ako postoji
  • povratna adresa
  • prva lokalna promenljiva
  • prethodni pokazivač frejma

Question 37

Question
Ako je d treca lokalna promenljiva u funkciji kako joj se pristupa
Answer
  • 3(%14)
  • 4(%14)
  • -3(%14)
  • -8(%14)
  • -12(%14)
  • 12(%14)

Question 38

Question
Naredba za sabiranjeim
Answer
  • Ima oblik ADDx operand1, operand2, operand3
  • Operand3 je izlazni
  • Operand1 je izlazni
  • Naredba izaziva izuzetak u slucaju da zbir ne moze da stane u izlazni operand
  • Naredba izaziva izuzetak u slucaju da operandi nisu istog tipa

Question 39

Question
Naredba deljenja
Answer
  • Izaziva izuzetak ako kolicnik ne moze da stane u izlazni operand
  • Izaziva izuzetak ako se pokusa deliti nulom
  • Ne izaziva izuzetke

Question 40

Question
Prekoracenje broja radnih registara izaziva
Answer
  • Fatalnu gresku u radu kompajlera
  • Nikada se ne desava
  • Kreiranje novih registara
  • Da se registri koji inace nisu radni koriste kao radni

Question 41

Question
Dopuniti asemblerski kod da odgovara miniC kodu a=f (a+b) ADDS -4 (%14), -8 (%14), %0 PUSH %0 CALL f ADDU %15, $[blank_start]4[blank_end],%15 MOV %13, -4 (%14)
Answer
  • 4

Question 42

Question
Registar u memoriji zauzima
Answer
  • 4 bajta
  • 1 bajt
  • 4 bita

Question 43

Question
Naredbe koje menjaju vrednost pokazivaca steka su
Answer
  • Pop
  • Push
  • Move
  • Cmpx

Question 44

Question
Lokalne promenljive se adresiraju
Answer
  • Pomocu upotrebe pokazivaca frejma rednog broja promenljive
  • Pomocu upotrebe pokazivaca steka i rednog broja promenljive
  • Pomocu upotrebe radnih registara i rednog broja promenljive

Question 45

Question
Operandi operacije CMPx su
Answer
  • ulazni operand, ulazni operand
  • izlazni operand, ulazni operand
  • ulazni operand, izlazni operand
  • ulazni operand, ulazno-izlazni operand

Question 46

Question
Operand operacije CALL je
Answer
  • ulazni operand
  • izlazni operand
  • ulazno-izlazni operand

Question 47

Question
Koje od sledećih operacija menjaju statusne bite
Answer
  • CMPx
  • MOV
  • JMP
  • CALL

Question 48

Question
Koje od sledećih operacija izazivaju izuzetke
Answer
  • SUBx
  • ADDx
  • MULx
  • RET
  • CALL
  • DIVx

Question 49

Question
Koliko lokacija na stek frejmu zazuzima unsigned int?
Answer
  • 1 lokaciju
  • 2 lokacije
  • 4 lokacije
  • Zavisi od preciznosti

Question 50

Question
Ovo pitanje služi da niko ne može imati max. :D Majina omiljena rasa pasa su [blank_start]corgiji[blank_end] Milčina omiljena rasa pasa su [blank_start]haskiji[blank_end] Srđanova omiljena rasa pasa su [blank_start]beaglovi[blank_end]
Answer
  • corgiji
  • haskiji
  • beaglovi

Question 51

Question
Koliko registara opšte namene postoji?
Answer
  • 12
  • 13
  • 14
  • 11

Question 52

Question
Povratna adresa se smešta na stek
Answer
  • pre pokazivača prethodnog stek frejma
  • pre argumenata
  • posle pokazivača prethodnog stek frejma
  • posle lokalnih promenljivih

Question 53

Question
Registar %12 je
Answer
  • radni registar
  • rezervisan za povratnu vrednost funkcije
  • pokazivač steka
  • pokazivač frejma

Question 54

Question
Kao pokazivač frejma koristi se registar
Answer
  • %14
  • %12
  • %13
  • %15

Question 55

Question
Naredba SUBx ima
Answer
  • dva ulazna, jedan izlazni operand
  • jedan ulazni, dva izlazna
  • jedan ulazni, jedano izlazni

Question 56

Question
Kojoj naredbi odgovara gerenrisani asemblerski kod (promenljive su deklarisane u redosledu a,b): ADDS $1, -4(%14), -4(%14) MOV -4(%14), -8(%14)
Answer
  • b = ++a;
  • a = ++b;
  • b = a + b;
  • b = a;

Question 57

Question
Kojoj naredbi odgovara asemblerski kod (promenljive su deklarisane u redosledu a,b,c, a argument se zove p)? push $2 call f add %15, $4, %15 mov %13, -8(%14)
Answer
  • b = f(2);
  • b = f() + 2;
  • b = f(a);
  • b = f(a+b);

Question 58

Question
Kako pristupiti drugom argumentu funkcije
Answer
  • 12(%14)
  • -12(%14)
  • 8(%14)
  • -8(%14)

Question 59

Question
Koja naredba preuzima sadržaj sa steka?
Answer
  • ret
  • mov
  • push
  • call

Question 60

Question
Za šta se koristi registar %15?
Answer
  • pokazivač steka
  • pokazivač frejma
  • radni registar
  • rezervisan za povratnu vrednost

Question 61

Question
Veličina unsigned int-a je
Answer
  • ista kao veličina lokacije na steku
  • veća od veličine lokacije na steku
  • manja od veličine lokacije na steku
  • ne može se porediti sa veličinom lokacije na steku

Question 62

Question
Šta omogućava pristup argumentu funkcije?
Answer
  • pokazivač frejma i redni broj argumenta
  • pokazivač steka i redni broj argumenta
  • pokazivač frejma

Question 63

Question
Naredba JMP ima
Answer
  • 1 ulazni operand
  • 1 izlazni operand
  • 1 ulazni, 1 izlazni operand
  • 2 ulazna

Question 64

Question
Koji od ponuđenih operanada je neposredni?
Answer
  • $12
  • labela
  • %4
  • -8(%14)

Question 65

Question
Kom kodu odgovara dati asemblerski kod (promenljive su definisane u redosledu a,b,c) ADDS $1, -4(%14), -4(%14) SUBS $3, -4(%14), %0 MOV %0, -8(%14)
Answer
  • b = 3- ++a;
  • b = 3 + --a;
  • b = 3 - a++;

Question 66

Question
Kom kodu odgovara dati asemblerski kod (promenljive su definisane u redosledu a,b,c, a p je argument funkcije): SUBS -8(%14), $8, %0 SUBS %0, 8(%14), %0 CMP -4(%14), %0 JG @false0 true0: ADDS -8(%14), $8, %0 MOV %0, -8(%14) JMP exit0 false0: exit0:
Answer
  • if( a <= (b-8-p) ) b = b+8;
  • if( a == (b-8-p) ) b = b+8;
  • if( a <= (b-8-p) ) b = b-8;
  • if( a <= (b-p) ) b = b+8;
Show full summary Hide full summary

Similar

To Kill A Mockingbird
tommarlin15
Geography - Unit 1A
NicoleCMB
C1 B1 & P1 Test
jodie00
AQA Biology A2 Unit 4 Respiration
Gemma Lucinda
Animal Farm Chapter Overview
10jgorman
Musical Terms
Abby B
Physics GCSE equations unit 1
James Howlett
Truman Doctrine, Marshall Plan, Cominform and Comecon
Alina A
maths notes
grace tassell
The Skeleton and Muscles
james liew
Study tips/hacks
Sarah Biswas