NEW
Font size
WorksheetsAOC - Gincana de Arquitetura e Organização de Computadores
Total questions: 30
Worksheet time: 30mins
Qual é a principal característica das arquiteturas RISC?
Conjunto de instruções complexo
Conjunto de instruções reduzido
Alta latência
Alta eficiência energética
Qual é o tamanho de uma instrução no conjunto de instruções MIPS?
8 bits
16 bits
32 bits
64 bits
Qual das seguintes linguagens é um exemplo de linguagem compilada?
Python
JavaScript
Pascal
Ruby
Dizer que "a linguagem Assembly é dependente de máquina" significa:
Existem vários "dialetos" Assembly para cada arquitetura
O Assembly gerado pelo compilador é sempre igual entre várias arquiteturas
O compilador vai gerar o código Assembly dependendo do estado atual da máquina
Existe um Assembly específico para cada arquitetura
Das arquiteturas comentadas em aula, qual é a arquitetura mais propícia ao uso de pipelines?
CISC
RISC
ARM
x86
Qual é a principal diferença entre linguagens compiladas e interpretadas?
As linguagens compiladas são traduzidas em código de máquina. Interpretadas são traduzidas linha por linha durante a execução.
As linguagens compiladas são mais lentas que as interpretadas, afinal precisam fazer todo o trabalho inicialmente.
As linguagens interpretadas demandam o uso de um compilador, afinal elas traduzem linha por linha, fazendo-se a compilação por unidade de instrução.
As linguagens compiladas não podem ser usadas para desenvolvimento web.
À sigla ISA associamos o seguinte termo em Arquitetura de Computadores:
Instruction Settings Architecture
Instruction Set Architecture
Instruction Sit Architecture
Industrial Standard Address
Qual instrução MIPS é usada para carregar um valor de uma posição de memória para um registrador?
store
load
move
add
A instrução Assembly MIPS de mnemônico beq significa:
branch if equal
branch equidistance
born enemy queue
boot or equivalent
Qual é uma vantagem das linguagens interpretadas sobre as linguagens compiladas?
Maior velocidade de execução
Facilidade de depuração e testes interativos
Menor uso de memória
Maior segurança
Dado o algoritmo ao lado em Assembly MIPS, o que ele de fato realiza?
Soma duas palavras e adiciona zero a elas
Imprime a soma de dois números com um, somado imediatamente
Imprime a soma de dois números
Nenhuma das alternativas
Qual das seguintes é uma vantagem das arquiteturas CISC sobre as RISC?
Maior simplicidade no design do hardware
Maior número de instruções disponíveis
Menor consumo de energia
Execução mais rápida de instruções simples
Instruções Assembly que possuem ao final do seu mnemônico a letra "i", como no exemplo ao lado (muli) referem-se a:
Instruções que trabalham por inferência
Instruções que operam com constantes numéricas (imediatas)
São instruções imediatamente sucedidas por operações aritméticas
Instruções cuja origem é o padrão ISO Assembly
No contexto de linguagens de programação, quanto maior o conhecimento da máquina (hardware) onde o programa será executado...
Menor a abstração na linguagem
Maior a abstração na linguagem
Maior é a ISA
Menor é a ISA
Linguagem Assembly e linguagem de máquina têm relação 1:1. Isso implica que:
Cada instrução Assembly pode gerar várias instruções de máquina
Para cada instrução Assembly, uma nova chamada de sistema será gerada em código de máquina
Cada instrução Assembly gera exatamente uma instrução de máquina
Nenhuma das alternativas
Em que tipo de aplicação as arquiteturas RISC são geralmente preferidas?
Aplicações de alto desempenho e baixa latência
Aplicações com requisitos de alta complexidade de instruções
Aplicações que exigem baixo consumo de energia
Aplicações que necessitam de um grande número de instruções
Arquiteturas podem trabalhar com ordenação de seus bytes em sua disposição na memória. A arquitetura apresentada na imagem segue o padrão:
Little Endian
Middle Endian
Big Endian
Top Endian
Assembly MIPS possui palavras reservadas, como por exemplo as diretivas .data e .text. Respectivamente, elas representam:
1) Segmento de dados (variáveis)
2) Segmento de algoritmo (instruções)
1) Segmento de datas (em formato gregoriano)
2) Segmento de textos (em geral)
1) Segmento de informações de compilação
2) Segmento de instruções em linguagens de alto nível
Nenhuma das alternativas
Termos em Assembly MIPS como "LOOP:" e "EXIT:", conforme exemplo ao lado, são chamados de rótulos e têm a seguinte função:
Oferecer comentários em nível de código para Assembly MIPS
Servir de âncora de destino para desvios condicionais ou incondicionais
Servir de âncora de origem para desvios incondicionais, apenas
São palavras reservadas da linguagem
Em um pipeline típico, em arquitetura MIPS, qual a razão para o passo de leitura do registrador (ID) ocorrer na segunda metade do tempo de ciclo?
Para garantir que o dado esteja lá quando for modificado por outra instrução alinhada ao pipeline
Para dividir seu tempo de recurso com o próximo estágio (instrução)
Para garantir o write back de forma eficiente
Nenhuma das alternativas
Os três tipos corretos de instruções em Assembly MIPS são:
R: reverso
I: interno
J: jingle
R: reboot
I: inverso
J: jit
R: registrador
I: imediato
J: desvio
add: soma
lw: buscar da memória
j: desvio
Qual é a função da instrução jal em Assembly MIPS?
Chamar uma sub-rotina e salvar o endereço de retorno
Carregar um valor imediato em um registrador
Desviar para uma instrução se uma condição for verdadeira
Adicionar dois valores e armazenar o resultado
Dizer que uma arquitetura RISC é de ciclo único quer dizer:
Todas as operações aritméticas operam em um ciclo. As demais, não
Todas as instruções operam em um mesmo nº de ciclos de processamento
A arquitetura resolve qualquer problema em um ciclo
Cada ciclo é único e inigualável, tornando o processo de controle mais simples
São etapas do ciclo de instrução de uma CPU, exceto:
IF: instruction fetch
IS: instruction selection
ID: instruction decode
EX: execute
A principal razão para o uso de pipeline em arquiteturas de computadores é:
Poupar tempo de processamento, otimizando o uso de recursos
Lavar, secar, passar e armazenar roupa mais rapidamente
Resolver o problema das bolhas existentes em processadores ociosos
Minimizar o uso de recursos, dos quais o uso já se encontra no limite das arquiteturas atuais
O intuito de incluirmos (os compiladores) bolhas no pipeline é:
Garantir o envio de dados para a nuvem, necessário a quase toda aplicação moderna
Oferecer tempo de processamento ocioso, a fim de evitar o superaquecimento
Garantir o uso eficiente da ULA, a qual sempre necessita de dois ou mais ciclos para alimentação de seus operandos
Adicionar atrasos na execução do pipeline, a fim de evitar conflitos de pipeline
Qual das seguintes instruções Assembly MIPS permitiria a multiplicação de um valor armazenado em $t1 por 4?
MULI $t1, $t1, 2
SLL $t1, $t1, 2
SRL $t1, $t1, 4
SLL $t1, $t1, 4
São conflitos existentes na implementação de um pipeline, exceto:
conflitos estruturais
conflitos de dados
conflitos de memória
conflitos de controle
Em instruções Assembly MIPS, os operandos de uma operação aritmética podem estar em vários lugares, exceto:
na memória
no barramento
em registradores
na própria instrução
Sabendo-se que a instrução exemplificada está no registrador 1 (R1), qual modo de endereçamento da arquitetura MIPS a imagem ao lado demonstra?
endereçamento de registrador
endereçamento base
endereçamento relativo ao PC
endereçamento direto ou imediato
