Conceitos fundamentais
• Organização:
–
–
–
–
–
–
–
Analógico x digital
Representação digital de grandezas analógicas
Códigos de numeração
Aritmética binária
Outros códigos (Gray, BCD, ASCII, UPC)
Funções lógicas elementares
Álgebra de Boole
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 1
Analógico x digital
• A generalidade das grandezas com que nos
confrontamos são de natureza analógica (e.g.
temperatura, humidade, etc.)
• As grandezas analógicas variam de forma contínua,
ao passo que as digitais variam de forma discreta
(como varia a altura a que se encontra uma pessoa
que sobe uma rampa ou uma escada?)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 2
Vantagens e desvantagens
do analógico e digital
• Existem vantagens e desvantagens em converter
uma grandeza de analógico para digital:
– Uma vantagem: simplifica o tratamento da grandeza
considerada (porquê?)
– Uma desvantagem: perde-se informação ao realizar a
conversão (porquê?)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 3
Representação digital de
grandezas analógicas
• A qualidade da representação digital prende-se com
dois factores principais: número de níveis da
representação discreta e número de amostras
por unidade de tempo
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 4
Representação digital de
imagens (número de pixels)
350 x 500
175 x 250
(metade)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 5
70 x 100
(5 vezes
menos)
35 x 50
(10 vezes
menos)
Imagens (número de bits
por pixel)
8 bits
4 bits
2 bits
1 bits
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 6
Sistemas posicionais de
numeração
• O sistema decimal é sistema posicional, onde cada
dígito representa o coeficiente de uma potência de
base 10 (1.492 = 1x103 + 4x102 + 9x101 + 2x100)
• O sistema romano de numeração também é
posicional, mas o facto de não haver um peso
associado a cada posição dificulta as operações…
(quanto vale MCMLIX + XLIV?)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 7
O sistema binário
• A representação de números em binário segue as
mesmas regras da representação decimal (cada
dígito representa o coeficiente de uma potência de
base 2)
• Do mesmo modo que a representação decimal usa
dez dígitos (0 a 9), a representação binária usa dois
dígitos (0 e 1): 10111010100 B
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 8
Conversão entre bases
• Sabendo que cada dígito representa o coeficiente da
potência associada à base de numeração, torna-se
fácil a conversão entre bases:
– 10111010100 B: 1x210 + 0x29 + 1x28 + 1x27 + 1x26 + 0x25
+ 1x24 + 0x23 + 1x22 + 0x21 + 0x20 D
– E para realizar a conversão inversa (de decimal para
binário)?
– E se pretendermos converter de / para hexadecimal?
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 9
Aritmética binária
• As quatro operações básicas realizam-se de forma
semelhante àquela que já conhecemos do sistema
decimal:
1 1 0 1 1 0 1 1 0
+ 1 1 0 1 1 0 1 1 0
1 1 0 1 1 0 1 1 0 0
1 1 0 1 1 0 1 1 0
• E se se tratasse de uma multiplicação?
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 10
A representação em
complemento para 2
• A representação em complemento para 2 facilita a
realização de operações aritméticas com sinal
• Para obter –X a partir de X temos duas alternativas:
– Complementar todos os bits e somar 1
– Lendo da direita para a esquerda, manter o valor da cada
bit até se encontrar o primeiro 1 (inclusive); a partir daí,
complementar todos os bit
• Experimente realizar a operação 57 + (-12)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 11
Outros códigos (Gray, BCD,
ASCII, UPC)
• Existem diversos códigos binários, criados para
responder a necessidades em diversos domínios:
– Gray: varia apenas um bit de cada vez
– BCD: facilita a entrada / saída de informação, por
representar em binário apenas os valores decimais
– ASCII (American Standard Code for Information
Interchange): para representar texto
– UPC (Universal Product Code): para facilitar a
etiquetagem de produtos
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 12
Emissor de luz
Código de Gray
Receptor
• Considere-se o uso de uma régua
com zonas transparentes e opacas, para codificar a
posição decorrente de um deslocamento linear
• O que poderá suceder se os emissores / receptores
de luz não estiverem exactamente alinhados?
• O código de Gray elimina este problema, já que os
códigos consecutivos diferem apenas num bit (que
alterações teriam lugar no desenho da régua?)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 13
BCD (Binary-Coded
Decimal)
• A entrada / saída de dados numéricos é normalmente
feita na forma decimal, para evitar a necessidade de
converter para / de binário (e.g. considere o exemplo
de visualizarmos uma contagem binária em 8 bits)
• O código BCD usa quatro bits para representar os
dez dígitos decimais (0 a 9)
• O que deverá acontecer se nestes quatro bits
surgirem códigos superiores a 9?
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 14
ASCII (American Standard
Code for Inf. Interchange)
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 15
Código de barras UPC
(Universal Product Code)
• Este código facilita a leitura automática (um laser
distingue barras / espaços e a sua dimensão)
• A codificação numérica é feita da seguinte forma:
– 0 = 3-2-1-1; 1 = 2-2-2-1; 2 = 2-1-2-2; 3 = 1-4-1-1;
4 = 1-1-3-2; 5 = 1-2-3-1; 6 = 1-1-1-4; 7 = 1-3-1-2;
8 = 1-2-1-3; 9 = 3-1-1-2
• Pode ver uma explicação detalhada em
http://electronics.howstuffworks.com/upc.htm
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 16
Algumas funções lógicas
elementares
• Em que circunstâncias acende a lâmpada, para cada
um dos circuitos apresentados?
• Considerando que existe um
sinal de controlo para cada
interruptor (0: aberto; 1: fechado)
construa a tabela que relaciona
o estado da lâmpada (0: apagada;
1: acesa) com o dos sinais de
controlo, em ambos os casos
Interruptor
Interruptor
Fonte de energia
Lâmpada
Interruptor
Fonte de energia
Interruptor
Lâmpada
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 17
Álgebra de Boole
• A obra fundamental de George
Boole (1854) criou o cálculo
proposicional, que oferece
uma base teórica para o
projecto de sistemas lógicos
(descrito em pormenor em
várias obras sobre
“Introductory logic design”
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 18
Conclusão
• Este primeiro conjunto de transparências apresentou
as questões básicas relacionadas com a
representação digital de grandezas e com o
tratamento deste tipo de informação
• Estamos agora em condições de considerar em maior
pormenor as funções lógicas elementares, para a
partir daí pensarmos no projecto de sistemas digitais
mais complexos
Introdução ao Projecto com Sistemas Digitais e Microcontroladores
Noções elementares de electrónica digital - 19
Download

PPT