Buscar

Sistemas de Numeração - Informação Adicional

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 26 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

ESPE - Escola Profissional Espinho 
Sebenta / Módulo 
Turma: ESPE - CP Téc. Mecatrónica 3º ano - 2015/2016 
Disciplina: Eletricidade e Eletrónica 
Módulo: 11 - Sistemas de Numeração 
Docente: Adão Manuel Pais da Silva 
 
 
 
 
 
 
 
Sistemas de Numeração 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2 
 
 
 
Objetivos de Aprendizagem 
Caracterizar as diferentes bases de numeração. 
 Representar números nas bases decimais, binário e hexadecimal. 
Efetuar a conversão entre decimal e as outras bases e vice-versa, de números inteiros e 
fracionários. 
 Efetuar operações aritméticas em binário. Calcular o complemento a dois e a um de um 
número binário. 
Representar números binários com bit de sinal. Efetuar conversões entre o código BCD e o 
sistema decimal. 
 Conhecer a utilização do código ASCII. Compreender o sistema de deteção de erros por bit de 
paridade. 
Âmbito dos Conteúdos 
Sistemas de Numeração: 
Sistema decimal. 
Sistema binário. 
 Sistema hexadecimal. 
Conversão entre sistemas. 
Aritmética Binária: 
Adição e subtração binárias. 
Complemento a dois e a um. 
Representação de um número binário com bit de sinal. 
Códigos binários: BCD Paridade Gray ASCII Deteção de erros através do bit de paridade. 
 
Bibliografia / Outros Recursos 
PADILHA, António, Sistemas Digitais. McGrawHill. (s.d.). PADILHA, António e outros, 
Electrónica Digital. McGrawHill. (s.d.). PEREIRA, A. Silva; ÁGUA, Mário; BALDAIA, Rogério, 
Sistemas Analógicos e Digitais, 11.º Ano. Curso Tecnológico de Electrotecnia e Electrónica. 
Porto Editora. (s.d.). PEREIRA, A. Silva; ÁGUA, Mário; BALDAIA, Rogério, Sistemas Digitais, 
11.º Ano. Curso Tecnológico de Electrotecnia e Electrónica. Porto Editora. (s.d.). 
 
 
 
 
 
3 
 
Índice 
Objetivos de Aprendizagem ....................................................................................................... 2 
Âmbito dos Conteúdos ............................................................................................................... 2 
Bibliografia / Outros Recursos .................................................................................................. 2 
Sistemas de numeração ................................................................................................................ 5 
Representação dos números ..................................................................................................... 5 
Sistema decimal ..................................................................................................................... 5 
Sistema binário ...................................................................................................................... 6 
Contagem em binário ............................................................................................................. 6 
Conversão binário – decimal.................................................................................................. 8 
Sistema hexadecimal ............................................................................................................. 9 
Conversão entre sistemas ........................................................................................................... 10 
Conversão decimal-binário ...................................................................................................... 10 
I - Números inteiros .............................................................................................................. 10 
II - Números fracionários ...................................................................................................... 11 
Conversão decimal-hexadecimal............................................................................................. 12 
Conversão entre binário e hexadecimal .................................................................................. 12 
Em resumo: .......................................................................................................................... 14 
Conversões entre sistemas de numeração ............................................................................. 14 
ARITMÉTICA BINÁRIA ............................................................................................................... 14 
Adição simples ......................................................................................................................... 14 
Problema: ............................................................................................................................. 14 
Resolução: ........................................................................................................................... 15 
Subtração simples ................................................................................................................... 15 
Problema: ............................................................................................................................. 15 
Resolução: ........................................................................................................................... 15 
Complemento a dois ................................................................................................................ 16 
Complemento a um ................................................................................................................. 16 
Obtenção do complemento a dois a partir do complemento a um ...................................... 16 
Regra prática para a obtenção do complemento a dois ...................................................... 17 
Representação de números com sinal .................................................................................... 17 
Problema: ............................................................................................................................. 19 
Em resumo: .......................................................................................................................... 20 
Complemento a um de um número binário ............................................................................. 20 
Complemento a dois (C2´s) de um número binário................................................................. 20 
Na representação em complemento a dois (C2´s): ................................................................. 20 
Conversões para decimal ........................................................................................................ 20 
 
 
4 
Adição e subtração de números em C2´s ............................................................................... 20 
CÓDIGOS BINÁRIOS ................................................................................................................. 21 
Códigos BCD ........................................................................................................................... 21 
Código de paridade ................................................................................................................. 22 
Código Gray ............................................................................................................................. 23 
Conversão Binário-Gray ....................................................................................................... 24 
Conversão Gray- Binário ...................................................................................................... 24 
Códigos alfanuméricos ............................................................................................................ 25 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5Sistemas de numeração 
Representação dos números 
 Simbólica (exemplo: sistema romano) 
 Pesada (exemplo sistema árabe, o nosso sistema decimal) 
 
Exemplo de numeração simbólica, MCMLIIIVII 
Exemplo de numeração pesada (ou notação posicional), 1974. 
Sistema decimal 
No sistema decimal, ou sistema de base 10, O peso de cada dígito depende da sua posição 
Para um número inteiro: 
102 101 100 
3 2 5 
 
O peso da posição da direita é 100, a seguir, mais à esquerda 101, a seguir 102, … 
3 2 5 
 Peso 1 (100) 
 Peso10 (101) 
 Peso100 (102) 
 
325 = 3 x 102 + 2 x 101 + 5 x 100 = 300 + 20 + 5. 
O peso de cada dígito dependa da sua posição. 
Para um número fracionário: 
100 10-1 10-2 
0, 7 4 
 
O peso da posição da esquerda, depois da vírgula é 10-1, a seguir, mais à direita 10-2, … 
0, 7 4 
 Peso 0,01 (10-2) 
 Peso 0,1 (10-1) 
 Peso1 (100) 
Então, no sistema pesado (ou de notação posicional) o peso de cada dígito depende da sua 
posição.: 
N = di …d3 d2 d1 d0 , d-1 d-2 d-3 … d-k 
Na parte inteira, di é o dígito mais significativo (MSD, Most Significant Digit), porque tem o 
maior peso. 
d0 é o dígito menos significativo (LSD, Least Significant Digit), porque tem o menor peso. 
 
 
6 
Na parte fracionária, d-1 é o dígito mais significativo (MSD), porque tem o maior peso da 
parte fracionária. d-k é o dígito menos significativo (LSD), porque tem o menor peso da parte 
fracionária. 
Exercícios: 
1. Indique os dígitos mais significativo e menos significativo: 
1.1. Do número inteiro 1837 
1.2. Do número fracionário 0,523 
1.3. Da parte inteira e da parte fracionária do número 412,6008 
2. Qual o peso da posição do dígito 7 no número 27340? 
3. Qual o peso da posição do dígito 0 no número 8023? 
Sistema binário 
O sistema binário ou sistema de base 2, é o sistema mais utilizado em sistemas digitais, 
porque se baseia nos dois únicos estados possíveis: verdadeiro ou falso; aberto ou fechado; 
conduz ou não conduz. 
Utiliza somente dois algarismos ou dígitos: 0 e 1, tendo por base do sistema o número 2. 
É também, tal como no sistema decimal, um sistema de notação posicional. Os dígitos nos 
números binários são vulgarmente designados por bits, abreviatura de binary digits (dígitos 
binários). 
O agrupamento de oito bits designa-se por byte. 
O agrupamento de quatro bits designa-se por meio byte ou nibble. 
Contagem em binário 
Zero 0 
Um 1 
Dois 10 
Três 11 
Quatro 100 
Cinco 101 
Seis 110 
Sete 111 
Oito 1000 
… … 
Verificamos que, com 2 bits podemos contar de zero até 22-1 = 3 
Verificamos que, com 3 bits podemos contar de zero até 23-1 = 7 
Genericamente, com n bits poderemos contar de zero até ao valor dado por: 
2n - 1 
Como se conta em binário? 
No sistema binário só existem dois dígitos: 0 e 1. 
Para representar o zero, temos o dígito 0 
Para representar o um, temos o dígito 1 
 
 
7 
E para representar o dois? Os dígitos já acabaram… 
Vamos ver como fazemos no sistema decimal. Quando acabam os dígitos (quando a contagem 
chega a nove), o que fazemos é pegar no dígito 0 e acrescentar 1 ao dígito da esquerda: 
Zero 0 
Um 1 
Dois 2 
Três 3 
Quatro 4 
Cinco 5 
Seis 6 
Sete 7 
Oito 8 
Nove 9 
Dez 10 
… … 
Então, para representar o dois em binário, seguimos o mesmo raciocínio: acabaram os dígitos? 
Passamos para o 0 e acresentamos 1 à esquerda: 
2, em decimal = 10, em binário. 
Nota: para não haver confusão com os sistemas de numeração que estamos a usar, 
acrescentamos um índice que o refere: 
210 =102 
Se um número não tiver o índice que refere a sua base de numeração, entende-se que a base 
é 10. 
2 = 102 
Número 
Representação 
em decimal 
Representação 
em binário 
Zero 00 0000 
Um 01 0001 
Dois 02 0010 
Três 03 0011 
Quatro 04 0100 
Cinco 05 0101 
Seis 06 0110 
Sete 07 0111 
Oito 08 1000 
Nove 09 1001 
Dez 10 1010 
Onze 11 1011 
Doze 12 1100 
Treze 13 1101 
Catorze 14 1110 
quinze 15 1111 
 
 
8 
 
Repare-se que, na representação binária, o dígito menos significativo, de peso 1, muda sempre 
0, 1, 0, 1, .. 
O dígito de peso 2, muda: 0, 0, 1, 1, 0, 0, 1, 1,… 
O dígito de peso 4, muda: 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, … 
Uma maneira fácil de recordarmos o modo de escrever uma sequência de números em 
binário, por exemplo para quatro dígitos como na tabela anterior, é a seguinte: 
 1. A posição mais à direita do número começa com um 0 e muda por cada número. 
 2. A posição seguinte começa com dois 0s e muda por cada dois números. 
 3. A posição seguinte começa com quatro 0s e muda por cada quatro números. 
 4. A posição seguinte começa com oito 0s e muda por cada oito números. 
Conversão binário – decimal 
Números inteiros 
Consideremos o número 1101012. Qual será o seu valor em decimal? 
Pesos das posições 
32 16 8 4 2 1 
25 24 23 22 21 20 
dígitos 1 1 0 1 0 1 
 
Começando da direita para a esquerda: 1 x 20 + 0 x 21 + 1 x 22 + 0 x 23 + 1 x 24 + 1 x 25 
= 
 1 x 1 + 0 x 2 + 1 x 4 + 0 x 8 + 1 x 16 + 1 x 32 = 
5310 
Então 1101012 = 53. 
Cada dígito tem um peso específico. 
 
Números fracionários 
Consideremos o número 0,1011. 
Tomemos a parte fracionária, 1011 
Pesos das posições 
1/2 1/4 1/8 1/16 
2-1 2-2 2-3 2-4 
Dígitos 1 0 1 1 
Começando da esquerda para a direita: 1 x 2-1 + 0 x 2-2 + 1 x 2-3 + 1 x 2-4 = 
 
 1×12+0×14+1×18+1×116=0,5+0,125+0,0625=0,6875 
Então 0,10112 = 0,6875 
Números fracionários, pelo método dos três passos 
Método dos três passos: 
 1.º Tomar o número à direita da vírgula. 
 
 
9 
 2.º Converter em decimal. 
 3.º Dividir o número obtido pela base elevada ao número de dígitos. 
Aplicação do método ao número 0,1011: 
 1.º O número à direita da vírgula é 1011 
 2.º 10112 = 1110 
 3.º Dividindo o número obtido (11) pela base (2) elevada ao número de dígitos 
(4), obtemos: 
 1124=1116=0,6875 
Sistema hexadecimal 
O sistema hexadecimal é constituído por 16 símbolos. Como grande número de sistemas 
digitais tratam a informação em agrupamentos de bits em números múltiplos de 4, tornam este 
sistema de grande utilidade, uma vez que cada um dos dígitos que o constitui pode ser 
representado por um número binário de 4 bits. Como apenas existem 10 algarismos, os 
restantes símbolos deste sistema são as 6 primeiras letras do alfabeto: 
 A, B, C, D, E e F 
 
O uso de letras para representar números pode parecer estranho à primeira vista, mas note-se 
que a representação de um número é apenas uma sequência de símbolos. Se 
compreendermos que quantidades representam esses símbolos, deixa de ter importância a sua 
forma, quando nos habituamos ao seu uso. 
Fique desde já anotado que é mais fácil representar grandezas em hexadecimal que em 
binário, o que privilegia este sistema na representação de números e códigos digitais. 
Também aqui faremos afetar com o índice 16 as representações das grandezas em 
hexadecimal. 
Decimal Binário Hexadecimal 
0 0000 0 
1 0001 1 
2 0010 2 
3 0011 3 
4 0100 4 
5 0101 5 
6 0110 6 
7 0111 7 
8 1000 8 
9 1001 9 
10 1010 A 
11 1011 B 
12 1100 C 
13 1101 D 
14 1110 E 
15 1111 F 
16 10000 10 
25 11001 19 
 
 
10 
 
Como se conta em hexadecimal depois de se alcançar F? 
 Do mesmo modo, iniciamos nova coluna começando em: 
 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 1A, 1B, 1C, 1D, 1E, 1F, 
 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 2A, 2B, 2C, 2D, 2E, 2F, 
 30, 31,.... 
Com dois dígitos em hexadecimal poderemos representar FFl6, que corresponde ao decimal 
25510, pois 
 FF16= F161 + F160 = 
 =1516 +151 = 
 = 240 + 15 = 
 = 25510 
O máximo valor que se pode representar com 3 dígitos será FFFl6, que equivale ao decimal 
409510. Com 4 dígitos o maior valor será 
FFFF16 =F163 + F162 + F161 + F160 
 =15x4096+15x256+15x16+15 = 6553510 
de um modo geral, com n dígitos o maior valor é 16n-1 
Acabámos de referir os sistemas decimal, binário, octal e hexadecimal e em simultâneo como 
se convertem representações de grandezas em binário e hexadecimal para decimal. 
 
1 Converter para decimal os seguintes números em hexadecimal: 
 a) 59 b) 8A c) A14 d) 5C8 
 
Conversão entre sistemas 
Conversão decimal-binário 
I - Números inteiros 
O método mais sistemático consiste em efetuar divisões sucessivas por 2. 
O equivalente encontrado será formado pelo último quociente (MSD) e pelos restos escritos 
pela ordem contrária àquela de que foram obtidos. O primeiro resto encontrado será o LSD. 
Converter o número 47 em binário 
 Resolução: 
47 2 
07 23 2 
1 03 11 2 
 1 1 5 2 
 1 2 2 
 0 1 
 
 
11 
 Sentido de formação 
 4710 = 
1011112 
 Converter o número 13710 para binário 
 Resolução: 
137 2 
17 68 2 
1 08 34 2 
 0 14 17 2 
 0 1 8 2 
 0 4 2 
 0 2 2 
 0 1 
 Sentido de formação 
 13710 = 
100010012 
 
II - Números fracionários 
As frações decimais podem converter-se para binário pelo método das multiplicações 
sucessivas por 2. 
Para se converter, por exemplo, a fração decimal 0,2175 para binário, multiplica-se 0,2175 por 
2, multiplicando-se seguidamente cada parte fracionária restante ainda por 2, até que o 
resultado seja 0 ou até se obter o número de bits pretendido. Os dígitos obtidos são as 
partes inteiras dos produtos obtidos, sendo o 1.' o MSB e o último o LSB. 
Converter para binário o número 0,3175 com 4 bits. 
Resolução: 
1.ª etapa 0,3175 x 2 = 0,635 
0 MSB 
2.ª etapa 0,635 x 2 = 1,270 
1 
3.ª etapa 0,270 x 2 = 0,74 
 0 
4.ª etapa 0,74 x 2 = 1,48 
1 LSB 
Então 0,37510 = 0,01012 
Converter para binário os seguintes números decimais com 3 bits fracionários. 
a) 59 b) 21,375 c) 134,625 
 
 
12 
Conversão decimal-hexadecimal 
Divisões sucessivas da parte inteira do número decimal por 16 produzirão o número 
equivalente em hexadecimal. 
Por multiplicações sucessivas por 16 da parte fracionária obtém-se o equivalente em 
hexadecimal, pelo agrupamento das partes inteiras obtidas. 
Converter para hexadecimal o número 652,74 
Resolução: 
Parte inteira 
652 16 
012 40 16 
 8 2 
 65210 = 28C16 
 (1210 = C16) 
Parte fracionária 
1.ª etapa 0,74 x 16 = 11,84 
 11 (B) MSD 
2.ª etapa 0,84 x 16 = 13,44 
 13 (D) 
3.ª etapa 0,44 x 16 = 7,04 
 7 LSD 
Então, 652,7410 = 28C,BD716 
 Converter para hexadecimal os números decimais: a) 52 b) 284 c) 6500 
Conversão entre binário e hexadecimal 
 Para converter um número hexadecimal em binário substitui-se cada símbolo hexadecimal 
pelo seu equivalente formado por 4 bits. 
De forma inversa para se efetuar a conversão de binário em hexadecimal, divide-se o número a 
partir da vírgula em grupos de 4 bits e substitui-se cada grupo pelo seu equivalente 
hexadecimal. 
Decimal Binário Hexadecimal 
0 0000 0 
1 0001 1 
2 0010 2 
3 0011 3 
4 0100 4 
5 0101 5 
6 0110 6 
7 0111 7 
8 1000 8 
9 1001 9 
 
 
13 
10 1010 A 
11 1011 B 
12 1100 C 
13 1101 D 
14 1110 E 
15 1111 F 
 
Converter os seguintes números, de hexadecimal para binário: 
 a) 1A516 b) 47C16 
Resolução: 
 1A516 47C16 
 
 0001 1010 01012 0100 0111 11002 
Então, 1A516 = 0001101001012 
Converter cada um dos seguintes números binários nos seus equivalentes em 
hexadecimal. 
 a) 101001102 b) 1001100000102 
 
 Resolução: 
 a) b) 
 101001102 1100000102 
 A 6 1 8 2 
 Então 101001102 = A616 e 1100000102 = 18216 
 
Converter para binário os números em hexadecimal: 
 a) 5216 b) F6516 c) D5A416 
 
Converter para hexadecimal os números em binário: 
 a) 1110101011112 b) 10011002 c) 1011110112 
 
Em muitos computadores, os endereços da memória são especificados em hexadecimal. 
 a) De quantas posições de memória dispõe um computador que guarda dados de 8 bits 
e utiliza os endereços de 000016 a FFFF16? 
 b) Num computador refere-se que dispõe de 4096 posições de memória. Qual a gama 
de endereços em hexadecimal que utiliza? 
 
 
14 
 
 
 
Em resumo: 
Conversões entre sistemas de numeração 
Sistemas de numeração 
Método de conversão 
Parte inteira Parte fracionária 
Binário  Decimal 
Hexadecimal  Decimal 
Peso da posição 
Peso da posição ou método 
dos três passos 
Decimal  Binário 
Decimal  Hexadecimal 
Divisões sucessivas da parte 
inteira pela base 
Multiplicações sucessivas da 
parte fracionária pela base 
Binário ↔ Hexadecimal Agrupamento de bits 
 
Método dos três passos: 
 1.º Tomar o número à direita da vírgula. 
 2.º Converter em decimal. 
 3.º Dividir o número obtido pela base elevada ao número de dígitos. 
 
ARITMÉTICA BINÁRIA 
Adição simples 
A tabuada da adição binária é extremamente simples se comparada com a tabuada da adição 
decimal: 
 0 + 0 = 0 1 + 0 = 1 
 0 + 1 = 1 1 + 1 = 10 (ou zero e vai um) 
A propósito desta última igualdade convém recordar que um mais um é igual a dois, que em 
binário se escreve 10. 
As regras das quatro operações aritméticas são análogas às que utilizamos no sistema 
decimal. 
Nos problemas que se seguem consideraremos apenas a adição de dois números, o que se 
justifica atendendo a que um calculador ou computador eletrónico, quando tem que efetuar 
uma adição com várias parcelas, começa por adicionar a primeira com a Segunda, somando o 
resultado com a terceira e assim sucessivamente. Cada adição pode ser executada em menos 
de 1 µs. 
Problema: 
 Efetuar as seguintes adições binárias: 
a) 10 + 1 
b) 101 + 11 
c) 1110+110 
 
 
15 
Resolução: 
 a) 
 
 
 
 (10) 
 b) 
 
 
 
 (10) 
 c) 
 
 
 
(10) 
 Há que ter cuidado com os transportes ("e vai um") para evitar erros. 
 
Subtração simples 
 A tabuada da subtração binária é a seguinte: 
 0 - 0 = 0 1 - 1 = 0 
 1 - 0 = 1 10 - 1 = 1 
Problema: 
 Efetuar as seguintes subtrações binárias: 
 a) 101 - 11 
 b) 1001 - 110 
Resolução: 
 a) 
 
 
 
(10) 
 b) 
 1 0 
+ 1 
 1 1 
 2 
+ 1 
 3 
 1 0 1 
+ 1 1 
1 0 0 0 
 5 
+ 3 
 8 
 1 1 1 0 
+ 1 1 0 
1 0 1 0 0 
 1 4 
+ 6 
 2 0 
 1 0 1 
- 1 1 
 0 1 0 
 5 
- 3 
 2 
 
 
16 
 
 
 
(10) 
Os computadores, porém, não efetuam as subtrações deste modo, pois tal acarretaria a 
existência de circuitos destinados a esse fim, o que é evitável uma vez que há métodos que 
permitem efetuar uma subtração por meio duma adição. Para vermos como, comecemos por 
duas definições: 
Complemento a dois 
Complemento a dois de um número inteiro binário N com p bits é igual a 2p - N. 
 Exemplo: 
 Determinar o complemento a dois do número binário 1011. 
 Resolução: N = 1011. São 4 bits. 24 = 100002 
 
 
 O complemento a dois de 1011 é então 00101. 
Complemento a um 
 Complemento a um de um número inteiro binário N com p bitsé igual a 2p - 1 - N. 
 Exemplo: 
 Determinar o complemento a um do número binário 10010. 
 
 Resolução: N = 10010. São 5 bits. 25 - 1 = 111112 
 
 
 O complemento a um de 10010 é então 01101. 
 
Como se vê, para obter o complemento a um basta trocar os zeros por uns e vice-versa. 
Para obter o complemento a dois é mais cómodo obter primeiro o complemento a um e adicionar 
uma unidade ao resultado: 
Obtenção do complemento a dois a partir do complemento a um 
 (Complemento a 2) = (Complemento a 1) + 1 
 Exemplo: 
 Determinar o complemento a dois do número 110110. 
 1 0 0 1 
- 1 1 0 
 0 0 1 1 
 9 
- 6 
 3 
 1 0 0 0 0 
- 1 0 1 1 
 0 0 1 0 1 
 1 1 1 1 1 
- 1 0 0 1 0 
 0 1 1 0 1 
 
 
17 
 
 complemento a um 
 
 complemento a dois 
 
Regra prática para a obtenção do complemento a dois 
 Escrever o número binário com os dígitos pretendidos. 
 Reescrever o número, repetindo-o da direita para a esquerda, até encontrar o primeiro 
1. A partir daí, trocar entre si 1s e 0s. 
 Exemplo: 
 Determinar o complemento a dois do número 110110. 
 
 1 1 1 0 1 0 
 0 0 0 1 1 0 
 
Representação de números com sinal 
Como as calculadoras trabalham com números positivos e negativos, é necessário designar 
um bit de sinal de um número. Em geral, se o bit de sinal for 0 representa um número positivo e 
se for 1 representa um número negativo. Exemplos: 
 
 
 
 
 
 
 
 
 
 
Quando os números negativos são representados na forma de complemento a 2 (ou 
complemento a um), o bit de sinal continua a ser 1 e a grandeza é convertida de binário puro 
para o seu complemento a 2 (ou complemento a 1). Exemplo: 
 
1 1 1 0 1 0 
0 0 0 1 0 1 
 + 1 
0 0 0 1 1 0 
0 0 1 1 0 1 0 0 = + 52 10 
Grandeza do número binário puro 
bit de sinal 
1 0 0 1 1 1 1 1 = - 31 10 
Grandeza do número binário puro 
bit de sinal 
Encontrou o primeiro 1 
Troca entre si 1s e 0s 
 
 
18 
 - 5710 = 
 
 
As três 
formas são correntemente usadas em 
sistemas digitais; porém, em quase todas as máquinas modernas os números negativos 
existem na forma de complemento a um ou a dois a fim de se efetuarem as operações 
aritméticas com maior facilidade. 
Os números positivos existem sempre na forma de binário puro com o bit de sinal 0. 
As formas de complemento a 1 e 2 são usadas porque permitem executar a subtração por 
meio da adição, usando os mesmos circuitos para somar e subtrair; no entanto, o complemento 
a dois é geralmente mais usado, pois os circuitos são mais fáceis de implementar. 
Inversamente, para converter um número na forma de complemento a 1 para binário puro, 
basta complementar novamente cada bit (exceto o bit de sinal); para converter da forma de 
complemento a 2 para binário puro, basta complementar cada bit e em seguida adicionar 1 ao 
bit de menor peso (LSB). O processo é pois reversível como poderá verificar. 
 
Subtração pelo método do complemento a dois. 
Para efetuar subtrações pelo método do complemento a dois é necessário ter em consideração 
o seguinte: 
Ambas as parcelas devem ter o mesmo número de bits. Se a grandeza de um dos números 
tiver menos bits que a grandeza do outro, acrescentam-se-lhe zeros à esquerda até se atingir a 
igualdade do número de bits. 
O último transporte é sempre desprezado 
É o seguinte o processo usado para subtrair um número binário (diminuidor) de outro número 
binário (diminuendo): 
 
1. Determinar o complemento a dois do diminuidor incluindo o bit de sinal; se o diminuidor 
é positivo transforma-se assim em negativo na forma de complemento a dois; se o 
diminuidor é negativo, transforma-se em binário puro positivo. 
 
2. O complemento a dois do diminuidor soma-se com o diminuendo (que se manteve na 
sua forma inicial). O resultado desta adição representa a diferença procurada. O bit de 
sinal desta diferença determina se ela é + ou - e se está na forma de binário puro ou na 
forma de complemento a dois. 
Exemplo: 
Diminuendo: +9  
 
Diminuidor: +4  
 
O complemento a dois do diminuidor é 11111100; este valor será somado ao diminuendo: 
 
 
 
1 0 1 1 1 0 0 1 
 
1 1 0 0 0 1 1 0 
 
1 1 0 0 0 1 1 1 
(representação em sinal-grandeza) 
(representação em complemento a 1) 
(representação em complemento a dois) 
(binário puro) 0 0 0 0 1 0 0 1 
0 0 0 0 0 1 0 0 
(binário puro) 
 0 0 0 0 1 0 0 1 
+ 1 1 1 1 1 1 0 0 
1 0 0 0 0 0 1 0 1 
 
 
19 
O resultado da subtração é 00000101 = +510 
 (despreza-se o último transporte) 
Quando se calcula o complemento a dois do diminuidor, ele transforma-se em -4 de modo que 
no fundo estamos a somar +9 com -4 que é o mesmo que subtrair +4 de +9. Portanto qualquer 
adição é transformada numa adição usando o sistema de complemento a dois. 
Esta característica do sistema de complemento a dois tornou-o no método mais usado visto 
que a adição e a subtração serão executados pelos mesmos circuitos. Recorda-se que, quando 
o resultado tem o bit de sinal 1, ele é negativo e está na forma de complemento a dois. 
Problema: 
Verificar os resultados das subtrações seguintes: 
a) +9 - (-4) b) -9 - (+4) c) -9 - (-4) d) +4 - (-4) 
 
 
 
Condição de OVERFLOW 
Nos exemplos anteriores de adição e subtração, os números têm um bit de sinal e 7 bits de 
grandeza. Os resultados também têm um bit de sinal e 7 bits de grandeza. Qualquer transporte 
para a posição do nono bit não é considerado. Em todos os casos estudados, a grandeza do 
resultado era suficientemente pequeno para caber em 7 bits. Vejamos agora a soma de +104 
com +48: 
 
 
 
 
O resultado tem um bit de sinal 1 (negativo) o que é obviamente incorreto. O resultado seria 
+152, mas este valor requer mais de 7 bits e portanto "transborda" (overflow) para a posição do 
bit de sinal. Esta condição de "overflow" produz sempre um resultado incorreto e a sua 
ocorrência é detetada examinando o bit de sinal do resultado e comparando-o com os bits de 
sinal das parcelas. Num computador é usado um circuito especial para detetar qualquer 
condição de "overflow" e para indicar que a resposta está errada. 
O “overflow” ocorre quando os operandos têm o mesmo sinal e o sinal do resultado é diferente 
do sinal dos operandos. 
Quando ocorre o “overflow” é necessário representar o número com mais 1 bit para evitar 
resultados incorretos. 
Com operandos de sinais diferentes produz-se sempre um resultado válido no mesmo número 
de bits dos operandos. 
 
 0 1 1 0 1 0 0 0 
+ 0 0 1 1 0 0 0 0 
 1 0 0 1 1 0 0 0 
 
 
20 
Em resumo: 
Complemento a um de um número binário 
 Trocam-se 0s por 1s e 1s por 0s. 
Complemento a dois (C2´s) de um número binário 
 Método 1: 
 Achar o complemento a um. 
 Adicionar uma unidade. 
 Regra prática: 
 Escrever o número binário com os dígitos pretendidos. 
 Reescrever o número, repetindo-o da direita para a esquerda, até encontrar o 
primeiro 1. A partir daí, trocar entre si 1s e 0s. 
Na representação em complemento a dois (C2´s): 
 Todos os números devem ser representados com o mesmo número de bits. 
 O bit mais significativo é sempre o sinal. 
Conversões para decimal 
 A conversão para decimal de um número binário positivo representado em C2’s, faz-
se diretamente. 
 Para converter em decimal um número binário negativo representado em C2’s: 
 Achar o complemento a dois desse número. 
 Converter o resultado em decimal. 
 Considerar o simétrico do resultado. 
Adição e subtração de números em C2´s 
 A subtração é considerada como a adição de um número negativo. 
 Considera-se o resultado com o mesmo número de bits dos operandos. 
Caso 1: os operandostêm sinais diferentes: 
 produz-se sempre um resultado válido no mesmo número de bits dos operandos. 
Caso 2: os operandos têm o mesmo sinal: 
 O resultado é válido se o seu sinal é o mesmo que o dos operandos. 
 O resultado é inválido (overflow) se o seu sinal é diferente do dos operandos. 
Neste caso é necessário representar os números com mais um bit. 
 
 
 
21 
CÓDIGOS BINÁRIOS 
Os sistemas digitais não usam apenas números binários, mas também uma grande quantidade 
de outros elementos discretos de informação. 
Quando números, letras ou palavras são representados por um grupo especial de símbolos, 
diz-se que estão codificados. Ao conjunto desses símbolos chama-se código. 
Combinações de dígitos binários que representam números, letras e símbolos são códigos 
binários. 
Qualquer elemento discreto de informação pode ser representado por um código binário, que 
desempenha um papel importante nos computadores. 
Códigos BCD 
Se cada dígito de um número decimal é representado pelo seu equivalente binário, obtém-se 
um código chamado Binary Coded Decimal, que abreviadamente se representa por BCD. 
Assim, cada dígito decimal de 0 a 9 é representado por um código binário de 4 bits. São vários 
os tipos de códigos obtidos pelo arranjo de 4 ou mais bits nas dez possíveis combinações. 
O código BCD mais usado é o BCD 8421. 
Este código designa-se vulgarmente apenas por BCD. A designação 8421 indica os pesos dos 
4 bits. Assim, cada dígito decimal representa-se pelo seu equivalente decimal e por 4 bits. 
BCD Decimal 
0000 0 
0001 1 
0010 2 
0011 3 
0100 4 
0101 5 
0110 6 
0111 7 
1000 8 
1001 9 
As restantes seis combinações (1010, 1011, 1100, 1101, 1110 e 1111) das dezasseis possíveis 
de realizar com 4 bits são inválidas em BCD. 
Para ilustrar o código BCD, vamos efetuar a conversão do decimal 874 para BCD. Cada dígito 
é representado pelo seu equivalente binário, como se indica: 
 8 7 4 
 
1000 0111 0100 (BCD) 
Exemplos 
Converter cada um dos números para BCD 
a) 18 b) 34 c) 97 d) 1864 
Resolução 
a) 00011000BCD b) 00110100BCD c) 10010111BCD d) 
0001100001100100BCD 
Converter 10101000000111001BCD no seu equivalente decimal 
 
1 0101 0000 0011 1001BCD = 1 5 0 3 910 
 
 
22 
Código de paridade 
Quando a informação é transmitida de um dispositivo (transmissor) a outro dispositivo 
(recetor), há a possibilidade de ocorrência de erros, pelo que o recetor não recebe a 
informação que foi enviada pelo transmissor. A maior parte das causas de tais ocorrências 
deve-se ao ruído elétrico. 
A maior parte dos modernos equipamentos digitais são error-free, pelo que a 
ocorrência de erros é muito diminuta. Acontece, no entanto, que os sistemas digitais modernos 
efetuam a transmissão de milhares ou mesmo milhões de bits por segundo, pelo que a taxa de 
ocorrência de erros aumenta, sendo mesmo assim diminuta. 
Muitos sistemas empregam um método de deteção de erros, sendo o mais simples e 
mais utilizado o método da paridade. 
Este método consiste em acrescentar um bit extra à informação que se está a transferir 
e que se designa por bit de paridade. 
Este bit extra acrescentado à informação faz com que o número total de 1s transmitido 
seja par ou ímpar. 
O bit de paridade gerado pode ser acrescentado no final de cada mensagem, mas é 
mais vulgarmente colocado à esquerda do bit mais significativo. Em qualquer das situações, o 
bit de paridade passa a fazer parte do código da palavra a ser enviada. 
A mensagem é transmitida juntamente com o bit de paridade (por exemplo, paridade 
par). No destino é testada a paridade. Se a paridade dos dados recebidos não for par, isso 
significa que durante a transmissão pelo menos um bit foi alterado. Este método deteta um, 
três ou qualquer número ímpar de erros ocorridos durante a transmissão. São necessários 
esquemas de deteção de erros adicionais para a deteção de erros em número par. 
Após a deteção de um erro pelo recetor, este envia um NACK (Negative Acknowledge). 
Se o recetor não detetar qualquer erro envia um ACK (Acknowledge). No caso do transmissor 
receber um NACK, volta a enviar a mensagem até que a paridade seja correta. 
Paridade ímpar Paridade par 
Mensagem P Mensagem P 
0000 1 0000 0 
0001 0 0001 1 
0010 0 0010 1 
0011 1 0011 0 
0100 0 0100 1 
0101 1 0101 0 
0110 1 0110 0 
0111 0 0111 1 
1000 0 1000 1 
1001 1 1001 0 
1010 1 1010 0 
1011 0 1011 1 
1100 1 1100 0 
1101 0 1101 1 
1110 0 1110 1 
1111 1 1110 0 
 
 
 
 
23 
Código Gray 
Trata-se de um código não pesado, pelo que não se utiliza em operações aritméticas, 
mas encontra-se em alguns conversores analógico-digitais. 
A principal característica deste código reside no facto de ao passarmos de um valor 
decimal para o seguinte o equivalente em Gray apenas apresenta a variação de um bit. 
O código Gray é utilizado em situações onde os outros códigos, nomeadamente o 
binário, podem produzir resultados errados ou ambíguos. 
Por exemplo, ao utilizar-se o código binário e ao passar-se de 0111 a 1000, todos os 
bits mudam. Se os bits são gerados por diferentes dispositivos ou circuitos surgirão diferentes 
tempos de transição dos diferentes bits. Assim, a transição de 0111 a 1000 pode produzir um 
ou mais estados intermédios. Por exemplo, se for o bit mais significativo a mudar mais 
rapidamente que os restantes, ocorrerá a transição: 
0 1 1 1 decimal 7 
 
1 1 1 1 código errado 
 
1 0 0 0 decimal 8 
O código Gray elimina este problema, pois apenas muda um bit por cada transição de 
um valor ao seguinte. Trata-se de um código refletido. Os 16 valores Gray podem obter-se: 
Decimal Binário Gray 
 
 
 
 
 
 
 
 
 
 
 
 
Ilustração de como o código Gray resolve o problema do erro nos codificadores de 
posição. 
 a) binário b) código Gray 
0 0000 0000 
1 0001 0001 
2 0010 0011 
3 0011 0010 
4 0100 0110 
5 0101 0111 
6 0110 0101 
7 0111 0100 
8 1000 1100 
9 1001 1101 
10 1010 1111 
11 1011 1110 
12 1100 1010 
13 1101 1011 
14 1110 1001 
15 1111 1000 
 
A tabela mostra o código usando 1, 2, 3 e 4 bits. O traço (Gray 0100) pretende 
simbolizar um espelho. 
Um exemplo elucidativo de utilização deste código é de um encoder de posição. 
Os setores dos discos são brancos (0) e a cor (1). Um grupo de três escovas fixas 
obtém um grupo de 3 bits quando se encontra sobre um setor. 
Em binário, parte a) da figura, se uma das escovas estiver desalinhada, por exemplo, a 
correspondente ao MSB, a posição ao passar de 111 para 000, seria lido incorretamente o 
 
 
24 
valor 011. Usando o código Gray, parte b) da figura, o erro é eliminado, pois apenas muda um 
bit entre setores adjacentes. Se as escovas estiverem a ler 111, o setor seguinte será o 101, 
pelo que o desalinhamento das escovas será indiferente. 
Conversão Binário-Gray 
A regra consiste nos seguintes passos: 
1. O bit mais significativo em Gray é o mesmo que o correspondente em binário. 
2. Da esquerda para a direita, compara-se cada bit com o seguinte. Se forem diferentes 
resultará um 1 em Gray. Se forem iguais o resultante em Gray será 0. 
Apliquemos as regras para se obter o equivalente Gray do valor binário 11001: 
 
1 1 0 0 1 
= 
1 0 1 0 1 
 
O equivalente Gray será 10101. 
Encontrar os equivalentes Gray dos seguintes números binários: a)11000110
 b)1000111 
Resolução: 
a) 
1 1 0 0 0 1 1 0 
= 
1 0 1 0 1 1 0 1 
110001102 = 10101101Gray 
b) 
1 0 0 0 1 1 1 
 = 
1 1 0 0 1 0 0 
10001112 = 1100100Gray 
 
Conversão Gray- Binário 
Para efetuar agora a conversão inversa, as regras a aplicar são as seguintes: 
1. O bit mais significativo em binário, MSB, éidêntico ao equivalente em código Gray. 
2. Da esquerda para a direita, compara-se o bit binário com o Gray que se encontra na posição 
adjacente. Se forem diferentes resultará um 1 em binário. Se forem iguais o resultante será 0. 
Apliquemos as regras para se obter o equivalente binário do número Gray 11011. 
a) 
1 1 0 1 1 
 = 
1 0 0 1 0 
110112 = 10010Gray 
 
Encontrar os equivalentes binários dos seguintes números em Gray: a) 
 
 
25 
10101111 b) 11000110 
Resolução: 
a) 
1 0 1 0 1 1 1 1 
= 
1 1 0 0 1 0 1 0 
10101111Gray = 110010102 
b) 
1 1 0 0 0 1 1 0 
 = 
1 0 0 0 0 1 0 0 
11000110Gray = 100001002 
 
Códigos alfanuméricos 
Quando se pressiona uma tecla de determinado caráter de um teclado, por exemplo, 
de um computador, é gerada uma sequência de bits designada por código. 
O mesmo código binário terá de representar números e outros carateres, por exemplo, 
o $. 
Como temos de representar 10 algarismos, 26 letras do alfabeto e um conjunto de 
carateres especiais, necessita-se de um código de 7 bits. 
O código binário standard é o ASCII (American Standard Code for Information 
Interchange). 
Os carateres de 7 bits são designados por b1 a b,, sendo o b, o bit mais significativo. 
A letra A, por exemplo, representa-se por 1000001. 
O código ASCII é formado por 94 carateres, com possibilidade de serem impressos, e 
outros 34 utilizados em várias funções de controlo. 
Os carateres gráficos são 26 letras maiúsculas, 26 letras minúsculas, 10 números e 32 
carateres especiais, tais como %, # e }. 
Os carateres de controlo incluem controlo de impressoras, como sejam BS 
(Backspace) e o CR (Carriage Return), e controlo de comunicações, como sejam o STX (Start 
of Text) e o ETX (End of Text). 
Muitos computadores usam carateres ASCII de 8 bits. Os 128 símbolos adicionais, com 
o bit mais significativo representado por um 1, são usados para representarem carateres do 
alfabeto grego e carateres itálicos. Quando em comunicação de dados, o 8.° bit pode ser usado 
para indicar a paridade do caráter. 
Apenas como referência, a EM usa um código alfanumérico, o EBCDIC (Extended Binary 
Coded Decimal Interchange Code), que, sendo um código de 8 bits, representa de modo 
diferente os mesmos carateres que o código ASCII. 
Código alfanumérico ASCII (American Standard Code for Information 
Interchange) 
 B7 0 0 0 0 1 1 1 1 
 B6 0 0 1 1 0 0 1 1 
 B5 0 1 0 1 0 1 0 1 
B4 B3 B2 B1 0 1 2 3 4 5 6 7 
0 0 0 0 0 NUL DLE SP 0 @ P ` p 
0 0 0 1 1 SOH DC1 ! 1 A Q a q 
0 0 1 0 2 STX DC2 “ 2 B R b r 
0 0 1 1 3 ETX DC3 # 3 C S c s 
0 1 0 0 4 EOT DC4 $ 4 D T d t 
 
 
26 
0 1 0 1 5 ENQ NAK % 5 E U e u 
0 1 1 0 6 ACK SYN & 6 F V f v 
0 1 1 1 7 BEL ETB ´ 7 G W g w 
1 0 0 0 8 BS CAN ( 8 H X h x 
1 0 0 1 9 HT EM ) 9 I Y i y 
1 0 1 0 A LF SUB * : J Z j z 
1 0 1 1 B VT ESC + ; K [ k { 
1 1 0 0 C FF FS , < L \ l | 
1 1 0 1 D CR GS _ = M ] m } 
1 1 1 0 E SO RS . > N ^ n ~ 
1 1 1 1 F SI US / ? O - o DEL 
 
Como exemplo, A letra A é representada pelo binário 10000012, ou pelo hexadecimal 4116 
(decimal 6510). 
Quando estiver a trabalhar num processador de textpo, pode experimentar premir e manter 
premida a tecla Alt seguida da sequência 6 5 e, de seguida largar a tecla Alt. Obterá a letra A. 
Experimente manter premida a tecla Alt seguida da sequência 2 3 0. 
Ao analisarmos a tabela de código ASCII, reparamos nalgumas letras que são denominadas 
vulgarmente por carateres de controlo, normalmente ligados a ordens internas do computador 
para acionar os seus periféricos. Com a tabela seguinte, os carateres tornam-se mais 
percetíveis, bem como as ações que eles desencadeiam. 
Carateres de controlo 
NUL Null DLE Data link escape 
SOH Start of heading DC1 Device control 1 
STX Start of text DC2 Device control 2 
ETX End of text DC3 Device control 3 
EOT End of transmition DC4 Device control 4 
ENQ Enquiry NAK Negative acknowledge 
ACK Acknowledge SYN Synchronous idle 
BEL Bell ETB End-of-transmition block 
BS Backspace CAN Cancel 
HT Horizontal tab EM End of medium 
LF Line feed SUB Substitute 
VT Vertical tab ESC Escape 
FF Form feed FS File separator 
CR Carriage return GS Group separator 
SO Shift out RS Record separator 
SI Shift in US Unit separate 
SP Space DEL Delete

Continue navegando