Lista 3 – Códigos e conversão A/D
1) Uma importante consideração no desenvolvimento de códigos é a eficiência. Em códigos de tamanho fixo como o ASCII, cada símbolo (no caso de texto, cada
caractere é um símbolo) é representado pelo mesmo número de bits. Em códigos de tamanho variável, códigos mais curtos são atribuídos a símbolos mais frequentes e códigos mais longos são atribuídos a símbolos menos frequentes. Se todos os símbolos têm mesma probabilidade de ocorrência, não há vantagem no uso de códigos de tamanho variável.
A compania de livros Penny-Dreadful precisa de um código eficiente para o Inglês usado rotineiramente, que seja mais eficiente que o ASCII. Os textos deles contêm na maioria das vezes letras minúsculas. Dois de seus engenheiros desenvolveram um código cada um, e a compania então gostaria de saber qual seria recomendado para adoção.
No primeiro código, letras minúsculas são representadas por sequências de 5 bits. Como há somente 26 letras minúsculas, 6 sequências não são usadas. Uma delas é atribuída ao caractere “espaço” e uma para o caractere de controle “ETX” de fim de texto. O código é definido tal que os quatro códigos não usados são todos da forma 111xx, em que x é 0 ou 1. Os outros caracteres são codificados usando 9 bits cada, começando com 111 tal que não possam ser confundidos com os códigos para letras minúsculas.
No segundo código, letras em minúsculo, espaço, ETX e quatro marcas de pontuação comuns (ponto, vírgula, interrogação e exclamação) são representados por
sequências de 6 bits, todas começando com 0. Os demais caracteres são representados por sequências de 7 bits que começam com 1.
a) Você precisa representar ETX e todos caracteres ASCII exceto os de controle. Isso inclui 26 letras minúsculas, 26 letras maiúsculas, 10 dígitos, espaço e 32 marcas de pontuação. Os dois códigos podem fazer isso? Explique sua resposta.
b) Para o(s) código(s) que não puder(em) fazer isso, veja se você pode modificá-lo(s) um pouco para permitir(em) a representação de todos os caracteres.
c) Compare o número de bits requerido para um parágrafo típico com 200 letras minúsculas, 50 espaços, 20 letras maiúsclas, 5 marcas de pontuação comuns, 20 marcas de pontuação não comuns e um ETX para o código ASCII básico (7 bits) e outro que funcione para a empresa em questão (baseado em respostas anteriores). d) Aponta-se a necessidade de alguns caracteres de controle especializados, tais como “novo parágrafo” e “novo capítulo” e marcas de pontuação adicionais como
“em-dash”, “en-dash” e abrir e fechar uma ou duas aspas. Descreva como você proporia
uma extensão ao segundo código proposto para permitir acomodar 12 caracteres adicionais.
2) Considerando a representação de inteiros por código binário, determine o código binário de:
a) 50 b) 100 c) 200
3) Considerando a tabela a seguir, resposta às questões:
a) Qual o código do caracter ‘#’ ?
b) Qual o código da letra ‘X’? Qual a relação com o ‘x’ ? De um modo geral qual é a relação que existe entre as letras minúsculas e as suas correspondentes maiúsculas? c) Qual o código do caracter ‘7’? Consegue encontrar, dentro deste código, uma representação do número 7 em binário?
d) Qual o texto representado pela seguinte sequência?
1000101 1110011 1110100 1110101 1100100 1100001 0100001 e) Escreva o seu nome usando a codificação da tabela.
4) Dois dados não viciados são jogados por Alice e a soma de seus resultados é anotada por ela. Bob deve fazer uma sequência de perguntas do tipo sim/não para descobrir esse número. Descreva uma estratégia para ele fazer isso de maneira a tentar minimizar o número de questões feitas.
5) Converter os seguintes números binários que usam a representação sinal/magnitude em números decimais:
a) 0000 0000 0000 1001 b) 1000 0000 0011 0000
6) Repetir o exercício anterior considerando que os números estão em representação de complemento de 2.
7) Qual é a representação em complemento de 2 do número –24 num microcomputador de 16 bits? E em complemento de 1?
8) Quantos bits são necessários para representar valores decimais situados na faixa de -50 a +50?
9) Expresse –78 como um número em complemento de 2 de 8 bits.
10) Faça uma tabela apresentado a lista completa dos números com sinal que podem ser representados em quatro bits usando os sistemas de complemento a 2,
complemento de 1 e de sinal/magnitude.
11) Usando 8 bits quantos números inteiros sem sinal é possível representar? E números com sinal em complemento de 2?
12) Sabendo-se que os bits não têm significado inerente e dado o padrão de bits 11001011, diga o que ele representa, supondo que ele é:
a) um inteiro em complemento de 2 b) um inteiro sem sinal
13) Qual é o número mínimo de bits necessário para representar 1125? Qual o valor máximo que pode ser representado com esse número de bits?
14) Converta os inteiros a seguir em seus binários equivalentes: a) 35
b) 76
15) Converta os inteiros anteriores usando a representação de complemento de 2. 16) Codifique os decimais a seguir em BCD e código de Gray de 4 bits.
a) 15 b) 347
17) Decodifique os números BCD a seguir para decimal: a) 00000110
b) 100000010100 c) 0101011100000010 d) 1001,00000001
18) Sabe-se que o Gray é um tipo de código de distância unitária. Justifique. 19) Descreva uma situação prática em que o código Gray é utilizado. Apresente a justificativa da utilização do código Gray para a situação descrita e mostre um exemplo.
20) O ASCII (American Standard Code for Information Interchage) estendido é um código de 8 bits do tipo alfanumérico. Cite dois outros tipos de códigos alfanuméricos. Qual a principal aplicação destes tipos de código? Apresente exemplos para os códigos citados, codificando 3 caracteres à sua escolha.
21) Quantos bits são necessários para representar os números decimais na faixa de 0 a 999 usando:
a) Código binário puro b) Código BCD
22) Determine os respectivos códigos para os valores de 0 a 31: a) Código BCD
b) Código binário c) Código grey
23) Determine os respectivos códigos para os valores de -15 a 15: a) Código sinal/magnitude
b) Código complemento de 1 c) Código complemento de 2
24) Cite duas vantagens dos dados digitais em comparação com dados analógicos. 25) Cite dois exemplos de grandezas analógicas.
26) Faça o gráfico de uma função analógica representada pela seguinte sequência de números binários: 1111, 1110, 1100, 1010, 1001, 1000, 0111, 0110, 0101, 0100, 0101, 0110, 0111, 1000, 1001, 1010, 1011, 1100, 1100, 1100, 1011, 1010, 1001.
27) Tendo como base o teorema da amostragem de Nyquist, qual a freqüência de
amostragem necessária para digitalizar um sinal de voz de 4 KHz? E para um sinal de 56 KHz?
28) Seja um sinal dado por cos 4t. Qual é a freqüência mínima de amostragem necessária para digitalizar esse sinal?
29) Representar e somar duas senóides uma de amplitude 5 e freqüência 1Hz e outra de amplitude 2 e freqüência 3 Hz. Qual seria o período de cada uma delas? Qual seria a freqüência de amostragem para não deturpar o sinal? Mostrar a conversão
analógico-digital com cinco níveis de quantização.
30) Uma forma de onda de tensão s(t) = 7 cos(1000t – π/2) (volts) é amostrada de maneira uniforme e, em seguida, tem os valores de amplitude quantizados. A
quantização é feita com passo uniforme e o valor mínimo (máximo) da forma de onda cai no centro do primeiro (último) intervalo de quantização. Cada intervalo corresponde a um nível de quantização. Segundo a ordem crescente de contagem binária, o
primeiro nível é associado ao código 000; o segundo, ao código 001. etc...; e o último nível ao código 110. Nessas condições, calcule:
a) o máximo intervalo permitido entre amostras consecutivas que ainda permite a reconstrução perfeita do sinal. Qual é a taxa de amostragem correspondente? b) O número de amostras presentes em 10 minutos do sinal.
c) O espaço ocupado (em bits) pela gravação de 10 minutos do sinal na memória de um aparelho digital
31) A forma de onda mostrada na figura a seguir é aplicada em um circuito de
amostragem, sendo amostrada a cada 3 ms. Mostre a forma de onda de saída do circuito de amostragem. Considere uma correspondência um-para-um de tensão entre a entrada e a saída.
32) Se a saída do circuito do problema 31 for quantizada usando dois bits, qual a sequência resultante de códigos binários?
33) Repita o exercício 32 usando quantização de 4 bits.
34) Faça a reconstrução do sinal analógico a partir das quantizações de 2 e 4 bits dos exercícios 32 e 33, respectivamente.
35) Considere o sinal analógico representado a seguir. Considerando os intervalos de amostragem indicados e usando 16 níveis de quantização, mostre qual é a sequência de códigos equivalente a esse trecho de sinal digitalizado.