Questão de Programação — Assembly — FGV 2024
- Código
- fg089762
- Banca
- FGV
- Órgão
- Prefeitura de Caraguatatuba - SP
- Ano
- 2024
- Nível
- Médio
- Cargo
- Técnico em Processamento de Dados
- AAX:=B+C-A
- BA:=B+C
- CAX:=A+C
- DB:=A+C
- EB:=AX+C
GabaritoB — A:=B+C
Gabarito: letra B. O código executa sequencialmente: MOV AX,B (carrega o valor de B no registrador AX), ADD AX,C (soma C ao AX, resultando AX = B + C) e MOV A,AX (armazena o conteúdo de AX na variável A). Portanto, ao final, A recebe o valor de B + C.
A banca testa o entendimento da execução passo a passo de instruções Assembly simples. Vamos analisar cada alternativa:
Sugere AX := B + C - A. O código não realiza subtração alguma; a operação é exclusivamente soma. Além disso, o destino final é A, não AX.
Exatamente o que ocorre: A := B + C. A instrução MOV A,AX atribui o resultado da soma à variável A.
Propõe AX := A + C. O código não lê o valor de A para a soma; ele parte de B e soma C. Além disso, ao final, o valor é armazenado em A, não em AX.
Afirma B := A + C. O destino é A, não B. O valor de B é apenas uma fonte da operação.
Diz B := AX + C. Além de o destino ser B (errado), a operação usaria AX e C, mas note que AX já contém B + C, então isso seria B := (B + C) + C, o que não corresponde ao código.
Em Assembly, a sequência de instruções deve ser lida linha a linha, atualizando o estado dos registradores. O mnemônico MOV destino, fonte copia o valor da fonte para o destino; ADD destino, fonte soma a fonte ao destino.
Link permanente: /questoes/fg089762