Você está na página 1de 4

1º) (1,0 ponto) Qual a diferença entre memória volátil e não volátil?

Cite dois tipos de


memória volátil e três tipos de memória não volátil.
A memória volátil é uma forma de armazenamento temporário que requer energia
elétrica para manter os dados armazenados, enquanto a memória não volátil é uma forma
de armazenamento permanente que não requer energia elétrica para manter os dados
armazenados.
Dois exemplos de memória volátil são a RAM (Random Access Memory) e a cache.
A RAM é frequentemente usada como memória principal em computadores e é usada para
armazenar dados e programas temporariamente enquanto o computador está em uso.
A cache é uma memória volátil que é usada para armazenar dados frequentemente
usados ​para acelerar o acesso a esses dados.
Três exemplos de memória não volátil incluem:
● Disco rígido (HD) - um dispositivo de armazenamento que armazena dados
magneticamente em discos rotativos e é usado para armazenar dados
permanentemente em computadores.
● SSD (Solid State Drive) - uma forma de armazenamento sem partes móveis, que é
usada para armazenar dados permanentemente em computadores, câmeras e
outros dispositivos eletrônicos.
● USB Flash Drive - um dispositivo de armazenamento portátil que usa memória flash
para armazenar dados permanentemente e pode ser conectado a computadores e
outros dispositivos eletrônicos.

2º) (1,0 ponto) Quais as arquiteturas básicas dos microcontroladores e quais as


diferenças entre elas?

Os microcontroladores são dispositivos eletrônicos compactos e autônomos que contém um


processador, memória, periféricos de entrada e saída e outros recursos em um único chip.
As arquiteturas básicas dos microcontroladores são:

1. Arquitetura Harvard: Nesta arquitetura, o microcontrolador tem memória separada


para instruções e dados. Isso significa que há barramentos de dados e endereços
separados para acessar a memória de programa e a memória de dados. Isso
permite que o microcontrolador execute instruções e acesse dados
simultaneamente, melhorando a velocidade e o desempenho. A arquitetura Harvard
é usada em microcontroladores de alto desempenho.
2. Arquitetura von Neumann: Nesta arquitetura, o microcontrolador usa uma única
memória para armazenar tanto o código do programa quanto os dados. Isso significa
que há um barramento de dados e endereços compartilhados para acessar a
memória de programa e a memória de dados. A arquitetura von Neumann é mais
simples e é usada em microcontroladores de baixo custo.

Algumas diferenças entre as arquiteturas Harvard e von Neumann incluem:


● Na arquitetura Harvard, as instruções e os dados são armazenados em memórias
diferentes, enquanto na arquitetura von Neumann, eles são armazenados na mesma
memória.
● Na arquitetura Harvard, é possível acessar a memória de programa e a memória de
dados simultaneamente, enquanto na arquitetura von Neumann, o acesso é serial, o
que pode afetar a velocidade e o desempenho.
● A arquitetura Harvard é geralmente mais rápida e eficiente que a arquitetura von
Neumann, mas também é mais cara e complexa de implementar. A arquitetura von
Neumann é mais simples e econômica, mas pode ser mais lenta e menos eficiente
em termos de desempenho.

3º) (1,0 ponto) Qual a diferença entre um microprocessador e um microcontrolador?

Um microprocessador e um microcontrolador são dois tipos diferentes de


dispositivos eletrônicos que possuem funções e características distintas. A principal
diferença entre eles está na presença ou ausência de periféricos integrados em um único
chip. Um
microprocessador é um chip que contém apenas a CPU (unidade central de
processamento) e algumas outras funções básicas, como memória cache e controladores
de barramento. Ele requer a adição de componentes externos, como memória, interfaces de
entrada/saída (I/O) e controladores de temporização para que possa executar tarefas
específicas. Em outras palavras, um microprocessador é uma unidade central de
processamento com capacidade de processamento bruto, mas não possui recursos
integrados para controlar diretamente outros componentes do sistema.
Já um microcontrolador, por outro lado, é um chip que contém uma CPU, memória,
periféricos de entrada e saída (I/O), controladores de temporização e outros recursos em
um único chip. Ele é projetado para ser uma solução completa e autônoma que pode
executar tarefas específicas sem a necessidade de outros componentes externos.
Por causa de seus recursos integrados, os microcontroladores são amplamente
utilizados em sistemas embarcados, como automação industrial, sistemas de controle de
acesso, sistemas de automação residencial, eletrônica automotiva, entre outros.
Em resumo, a principal diferença entre um microprocessador e um microcontrolador
é que um microprocessador é uma unidade central de processamento bruta, enquanto um
microcontrolador é uma solução completa e autônoma que inclui recursos integrados para
executar tarefas específicas.

4º) (1,0 ponto) Cite duas vantagens e duas desvantagens da linguagem ASSEMBLY.

A linguagem Assembly é uma linguagem de programação de baixo nível, que


permite escrever programas diretamente em linguagem de máquina. Algumas vantagens e
desvantagens dessa linguagem incluem:
Vantagens:
1. Eficiência: A linguagem Assembly permite a criação de programas altamente
otimizados, com código muito compacto e rápido. Isso ocorre porque ela permite um
controle preciso sobre a CPU e os recursos de hardware do sistema, possibilitando a
escrita de programas que utilizam esses recursos de forma mais eficiente.
2. Controle: A linguagem Assembly oferece um controle preciso sobre o hardware do
sistema, permitindo que o programador possa escrever programas que acessam
diretamente a memória, os registradores e os dispositivos de entrada e saída do
computador. Isso permite um nível de controle e precisão que é difícil de ser
alcançado em outras linguagens de programação de alto nível.
Desvantagens:
1. Complexidade: A linguagem Assembly é uma linguagem de programação de baixo
nível, o que significa que é necessário ter um conhecimento profundo sobre o
hardware do sistema e sobre a arquitetura da CPU para escrever programas em
Assembly. Isso torna a linguagem complexa e difícil de ser aprendida, especialmente
para programadores iniciantes.
2. Portabilidade: A linguagem Assembly é altamente dependente da arquitetura do
sistema em que o programa é executado. Isso significa que um programa escrito em
Assembly para um processador específico não funcionará em outro processador
sem a necessidade de modificações significativas no código fonte. Isso torna a
linguagem Assembly menos portável do que outras linguagens de programação de
alto nível, como C, Java e Python.
Em resumo, a linguagem Assembly é uma linguagem poderosa e eficiente, mas também é
complexa e não portável, o que pode tornar sua utilização difícil para programadores
iniciantes ou para projetos que necessitam de portabilidade entre diferentes sistemas.

5º) (1,0 ponto) Explique a técnica de multiplexação de barramento e dê um exemplo de


utilização.
A técnica de multiplexação de barramento é uma técnica utilizada em sistemas de
computação para compartilhar um único barramento entre vários dispositivos. Nessa
técnica, os dispositivos conectados ao barramento alternam o uso do barramento,
transmitindo seus dados em tempos diferentes. Isso permite que múltiplos dispositivos
compartilhem o mesmo barramento de comunicação, reduzindo a necessidade de múltiplos
barramentos separados.
Por exemplo, em um sistema de computador, um barramento pode ser
compartilhado entre a CPU, a memória e os dispositivos de entrada/saída (I/O). A CPU usa
o barramento para ler e escrever dados na memória, enquanto os dispositivos de I/O usam
o barramento para transferir dados entre si e com a CPU.
Na técnica de multiplexação de barramento, cada dispositivo conectado ao barramento é
configurado para usar o barramento em momentos diferentes. Por exemplo, a CPU pode
usar o barramento durante o ciclo de leitura, enquanto a memória usa o barramento durante
o ciclo de escrita. Os dispositivos de I/O também podem usar o barramento em momentos
diferentes, dependendo de suas necessidades de comunicação com a CPU.
A técnica de multiplexação de barramento pode ser implementada de várias
maneiras, incluindo o uso de sinais de controle, como sinais de clock, para sincronizar o
acesso dos dispositivos ao barramento. Em geral, essa técnica é mais comumente usada
em sistemas embarcados, onde é importante minimizar o custo e o espaço físico do
hardware.
Em resumo, a técnica de multiplexação de barramento é uma técnica utilizada para
compartilhar um único barramento entre vários dispositivos em um sistema de computador.
Ela permite que múltiplos dispositivos compartilhem o mesmo barramento de comunicação,
reduzindo a necessidade de múltiplos barramentos separados.
6º) (1,0 ponto) Defina interrupção e qual sua importância para os microcontroladores?

Interrupção é um mecanismo utilizado em sistemas de computação para suspender


temporariamente a execução de um programa e transferir o controle para outro trecho de
código, conhecido como rotina de interrupção. As interrupções podem ser geradas por
eventos externos, como o pressionamento de um botão, ou por eventos internos, como a
finalização de uma operação de entrada/saída.
A importância das interrupções para os microcontroladores está relacionada à sua
capacidade de gerenciar múltiplas tarefas simultaneamente. Em geral, os
microcontroladores são projetados para realizar várias tarefas ao mesmo tempo, como ler
dados de sensores, controlar motores, processar sinais de comunicação, entre outras. As
interrupções permitem que o microcontrolador possa gerenciar essas tarefas de forma
eficiente, suspender a execução do programa principal quando ocorre um evento de
interesse e executar uma rotina de interrupção para tratar o evento.
Por exemplo, em um sistema de controle de temperatura, o microcontrolador pode
estar lendo continuamente a temperatura de um sensor. Quando a temperatura atinge um
valor pré-determinado, o microcontrolador pode gerar uma interrupção para executar uma
rotina de controle de temperatura, que pode ativar ou desativar um ventilador para resfriar
ou aquecer o ambiente. Sem as interrupções, o microcontrolador teria que aguardar
continuamente a leitura do sensor e não seria capaz de detectar rapidamente quando
ocorre uma mudança na temperatura.
Em resumo, as interrupções são um mecanismo importante para os
microcontroladores porque permitem que eles gerenciem múltiplas tarefas
simultaneamente, detectem eventos externos ou internos de interesse e executem rotinas
de tratamento de eventos de forma eficiente. Isso torna os microcontroladores adequados
para aplicações em que é necessário monitorar e controlar vários dispositivos ou processos
ao mesmo tempo.

Interrupção é um evento assíncrono gerado por uma unidade de hardware interna ou


externa; Quando uma interrupção ocorre, o C interrompe a execução do programa atual e
inicia uma rotinade serviço de interrupção que é dedicada ao evento que a gerou; Após a
execução da rotina de serviço de interrupção, o programa que foi interrompido é restaurado.

Você também pode gostar