Mudanças entre as edições de "MI1022806 2020 2 AULA07"
Ir para navegação
Ir para pesquisar
Linha 129: | Linha 129: | ||
+ | ===Parte 4=== | ||
+ | #Escreva o programa que implementa um loop com 20 iterações, incrementando uma variável do valor 0 a 19 e somando o valor 17, a cada iteração, ao valor inicial (=7) armazenado em R1. | ||
+ | #Escreva o programa que implementa as operações lógicas (AND, OR, XOR, NXOR, NAND E NOR) entre dois valores, armazenados em R4 e R5. | ||
+ | #Implemente um programa Arm que resolve a equação: Y = (A - B) / (C + D x E). Dica: armazene A em R0, B, em R1, C, em R2, D, em R3 e E, em R4. | ||
+ | #Implemente um programa em ARM que lê e compara os valores armazenados em R1, R2 e R3 e devolve o maior dentre eles em R4, e o menor, em R5. | ||
+ | #Implemente um progrma em ARM que coloque em ordem crescente 10 valores da memória. | ||
Edição das 13h46min de 14 de dezembro de 2020
Lista de Exercícios para (AT1)
- Nota
- Nossa primeira avaliação será dia 22/12 conforme previsto. Esta lista de exercícios servirá de guia de estudos para vocês, não vou corrigi-la e também vocês não precisarão entregá-la mas vou tirar todas as dúvidas de vocês via grupo do Whatsapp.
Questões
Parte1
- Por que estudar microprocessadores?
- O que é um microprocessador?
- Disserte sobre o que significa, quando começou e quando terminou a chamada "lei de Moore".
- Explique o que significa single-core e multi-core em se tratando arquitetura de microprocessadores.
- O que você entende por um computador?
- Quais os principais tipos de computador?
- O que é um Cluster e como funciona?
- O que são e para que servem os Mainframes?
- O que difere um computador Desktop para um Supercomputador?
- No que se difere os "ditos" sistemas embarcados microcontrolados dos outros tipos de computadores?
- Cite 5 dispositivos eletrônico que você conheça que possuam Sistemas Embarcados?
- O que é RFID?
- Complete o desenho abaixo no que se refere a arquitetura e organização de um computador.
- O que é memória cache?
- O que é Hardware?
- Fale sobre as três operações básicas realizados por um computador e o que cada uma delas faz.
- Complete a figura abaixo com as seis camadas de abstrações propostas por Tenenbaum, 1999.
- O que um Firmware?
- O que é um Software?
- Quais as principais etapas de um algoritmo para a obtenção de uma solução computacional?
- O que é linguagem de máquina?
- O modelo computacional idealizado por Von Neumann é baseado quais componentes principais?
- Qual aspecto mais importante do modelo de Von Neumann?
- Qual a principal diferença entre a arquitetura de Von Neumann e de Havard?
- Fale sobre o modelo de barramento de sistema.
- O que é um sinal de clock?
- Como é composto um sistema de computador típico?
Parte 2
- A que é a CPU e pelo que é responsável?
- O que é uma instrução?
- Qual é um formato típico de uma instrução de 8 bits?
- O que é mnemónico?
- Por que a maioria dos programas são escritas em linguagens de alto nível ao contrário de linguagem de máquina?
- Como fica um programa depois de compilado?
- Quais são as etapas básicas de funcionamento de um microprocessador?
- Quais são os elementos de uma estrutura generalizada de um microprocessador?
- Para que serve a ULA?
- Para que serve a FPU?
- Para que servem os registradores e como são divididos?
- Para que serve o Acumulador?
- Para que serve o Registrador de flags?
- O que são PC e IR?
- O que são MBR e MAR?
- Para que serve o Stack Pointer (SP)?
- O significa LIFO? Explique.
- Como estão divididos os registrador do processador ARM7?
- Quantos registradores possuem o ATMega328P?
- Como funciona a UC?
- O que é ciclo de instrução?
- O que é "uma busca de dados"?
- Para que serve as interrupções?
- Sobre o desempenho de microprocessadores é correto dizer que depende somente do clock?
- Qual a causa da CPU trabalhar com "rajadas longas" ou "rajadas curtas"?
- Suponha que queiramos executar uma instrução de máquina que soma três números que estão na memória e salve o resultado em outro endereço de memória
int a=10, b=20, c=30, t; \\sendo a no endereço 100, b no 101, c no 102 e t no 104
Coloque todas as etapas (PC, IR, MAR e MBR) para fazer t=a+b e depois t=t+c no mesmo programa. - O que é um barramento?
- Como funciona o barramento de dados?
- Como funciona o barramento de endereços?
- Como funciona o barramento de controle?
- Cite os sinais típicos de controle?
- Qual a diferença entre um microcontrolador e um microcomputador?
Parte 3
- Converta o número 1488d:
- base 2
- base 8
- base 16
- Converta os números abaixo para base decimal:
- A3BDh
- 110100101.101b
- 1683o
- Converta os números abaixo para binário com sinal e amplitude de 8bits:
- -70d
- 70d
- 53h
- 232o
- Converta o número decimal (positivo) em negativo utilizando complemento de 1:
- 17d
- 34d
- 89d
- 112d
- Por que 0d=00000000b=11111111b em complemento de 1?
- Converta o número decimal (positivo) em negativo utilizando complemento de 2:
- 17d
- 34d
- 89d
- 127d
- Quais os números representados pelo complemento de 2 abaixo:
- 001101101b
- 111001010b
- 001111100b
- 101010101b
- Se os números abaixo fossem representados por notação de Excesso 128, quais seriam?
- 001101101b
- 111001010b
- 001111100b
- 101010101b
- O que é overflow? Exemplifique.
- O que é carry? Exemplifique.
- Explique como são representados os números reais em computadores?
- Explique o que acontece quando se rotaciona um número binário para esquerda ou para direita?
- Como é feita a notação de ponto flutuante?
- Seja o byte 11111101b determinar:
- O bit de sinal
- O expoente
- A mantissa
- Valor decimal (considerando notação de excesso para expoente e ponto fixo para mantissa)
- Seja o decimal 1,25d represente ele com notação de ponto flutuante de 8bits.
- Para que serve a normalização do ponto flutuante?
- O que é o bit escondido?
- Explique o cuidado de se definir o intervalo e precisão de valores representáveis.
- Qual o cuidado que o projetista de hardware' tem que ter com Overflow e Underflow?
- Converta os valores decimais abaixo para a notação IEEE 754, precisão simples:
- 2019.8125d
- 570.5625d
- Converta os valores ponto flutuante abaixo, notação IEEE 754 precisão simples, para base decimal:
- 1110 0001 1110 0001 0000 0000 0000 0000
- 0010 1010 1001 0101 1000 0000 0000 0000
Parte 4
- Escreva o programa que implementa um loop com 20 iterações, incrementando uma variável do valor 0 a 19 e somando o valor 17, a cada iteração, ao valor inicial (=7) armazenado em R1.
- Escreva o programa que implementa as operações lógicas (AND, OR, XOR, NXOR, NAND E NOR) entre dois valores, armazenados em R4 e R5.
- Implemente um programa Arm que resolve a equação: Y = (A - B) / (C + D x E). Dica: armazene A em R0, B, em R1, C, em R2, D, em R3 e E, em R4.
- Implemente um programa em ARM que lê e compara os valores armazenados em R1, R2 e R3 e devolve o maior dentre eles em R4, e o menor, em R5.
- Implemente um progrma em ARM que coloque em ordem crescente 10 valores da memória.