| a) |
executa o initializare a unor registre |
| b) |
initializeaza cu zero registri AX, BX, CX, DX dar trebuiau initializati si registri SI si DI |
| c) |
copiaza imediat constanta zero in registri AX, BX, CX, DX si nu pozitioneaza indicatorii de conditie |
| d) |
devine mult mai eficienta daca este inlocuita cu secventa:
MOV AX,0
MOV BX,AX
MOV CX,BX
MOV DX,CX |
| e) |
este echivalenta cu secventa:
MOV AX,0
MOV BX,AX
MOV CX,AX
MOV DX,AX
care este mult mai eficienta |
| a) |
executa ineficient initializare cu zeroa a registrilor de lucru, care obligatoriu trebuie inlocuita cu secventa:
XOR AX,AX
XOR BX,BX
XOR CX,CX
XOR Dx,DX |
| b) |
initializeaza cu zero registri AX, BX, CX, DX dar trebuiau initializati si registri SI si DI |
| c) |
copiaza imediat constanta zero in registri AX, BX, CX, DX si pozitioneaza indicatorii de conditie |
| d) |
devine mult mai eficienta daca este inlocuita cu secventa:
MOV AX,0
MOV BX,AX
MOV CX,BX
MOV DX,CX |
| e) |
este echivalenta cu secventa:
MOV AX,0
MOV BX,AX
MOV CX,AX
MOV DX,AX
care este mult mai eficienta |
| a) |
efectueaza evaluarea expresiei (operand_stanga) - (operand_dreapta) si necesita 3 cicluri masina daca are forma CMP AX,BX; pozitioneaza toti indicatorii de conditie
|
| b) |
nu modifica cei doi operanzi daca are forma CMP 7,10, dupa efectuarea compararii |
| c) |
compara prin scaderea operanzii AX si BETA din instructiunea CMP AX,BETA, unde AX este operand_drept si BETA este operand_stang; nu se modifica continutul celor doi operanzi |
| d) |
efectueaza compareare prin scadere a celor doi operanzi si necesita 4 cicluri masina daca operand_stang este imediat; pozitioneaza indicatorii de conditie AF,CF,OF,PF,SF,ZF |
| e) |
doar pozitioneaza indicatorii de conditie dupa evaluarea expresiei (operand_stang):=(operand_stang)-(operand_drept), fara a modifica niciun operand daca acestia sunt de tip registru
|
| a) |
efectueaza evaluarea expresiei (operand_stanga) - (operand_dreapta) si pozitioneaza indicatorii de conditie AF,CF,OF,PF,SF si ZF daca operandul sursa este definit pe 2 baiti si operandul destinatie este definit pe 1 bait
|
| b) |
nu modifica continutul operanzilor 212 si 333 din instructiunea CMP 212,333 doar pozitioneaza indicatorii de conditie |
| c) |
compara cei doi operanzi, iar atunci cand operandul stang este definit pe 2 baiti iar operandul drept este definit pe 1 bait are loc extensia de semn a operandului drept pentru a se efectua o scadere intre operanzi de 2 baiti fiecare; CMP AX,22 se executa in 4 cicluri masina |
| d) |
efectueaza compareare prin scadere a doi operanzi stocati in memorie si pozitioneaza indicatorii de conditie AF,CF,OF,PF,SF,ZF |
| e) |
doar pozitioneaza indicatorii de conditie dupa evaluarea expresiei (operand_stang):=(operand_stang)-(operand_drept) in care cei doi operanzi se refera si prin expresiile [SI], respectiv, [DI], ca in instructiunea CMP [SI],DI
|
| a) |
copierea elementelor BETA[i]ale unui masiv unidimensional in masivul unidimensional GAMA[i], i=0,1,2,...,n |
| b) |
transferul intre doua zone de memorie |
| c) |
muta element cu element doua masive de memorie |
| d) |
nu pozitioneaza indicatorii de conditie AF,CF,IF,OF,DF dar pozitioneaza indicatorii PF, SF,TF,ZF |
| e) |
copiaza in registrul AX continutul zonei de memorie referite cu adresare indexata BETA[SI];copiaza in zona de memorie referita prin GAMA[SI] a continutului registrului AX |
| a) |
generarea unui sir crescator 1,2,...,n memorat in zona de memorie de 2*n cuvinte |
| b) |
initializarea cu valorile 100, 99, 98,.....,4,3,2,1 a elementelor unui masiv unidimensional definit prin X DW 100 DUP (?) |
| c) |
muta un sir de screscator intr-un vector de 100 de componente definite cu DW |
| d) |
nu pozitioneaza indicatorii de conditie in toate cele 101 repetari |
| e) |
copiaza continutul registrului AX in zona de memorie referita prin adresare directa indexata |
| a) |
incarcare imediata a constantei zero in fiecare registru, ca in secventa:
MOV AX,0
MOV BX,0
MOV CX,0 |
| b) |
executarea de instructiuni XOR-sau exclusiv ca in secventa:
XOR AX,AX
XOR BX,BX
XOR CX,Cx
XOR DX,DX
|
| c) |
macroapelul INITIAL_REG 0 dupa ce s-a definit in prealabil macrodefinitia foarte generala:
INITIAL_REG MACRO parametru
MOV AX,parametru
MOV BX,parametru
MOV CX,parametru
MOV DX,parametru
ENDM INITIAL_REG |
| d) |
apelul unei proceduri in care parametri sunt chiar registri de initializat |
| e) |
macroapelul INITIAL_REG dupa ce s-a definit in prealabil macrodefinitia :
INITIAL_REG MACRO
SUB AX,AX
SUB BX,BX
SUB CX,CX
SUB DX,DX
ENDM INITIAL_REG |
| a) |
salt neconditionat in avans |
| b) |
salt neconditionat inapoi |
| c) |
salt neconditionat inainte sau inapoi |
| d) |
salt neconditionat la instructiunea cu eticheta ETA si nu pozitioneaza indicatorii de conditie AF,CF,IF,OF,DF dar pozitioneaza indicatorii PF, SF,TF,ZF |
| e) |
salt neconditionat la instructiunea cu eticheta ETA si nu pozitioneaza indicatorii de conditie AF,CF,IF,OF,DF dar numarul de cicluri masina necesari depinde de:
- distanta de la JMP la instructiunea cu eticheta ETA
- daca JMP si instructiunea ETA se afla in acelasi segment sau in segmente diferite
- daca ETA se refera indirect bazat |