Sistemas de numeração: exercícios com soluções passo a passo

Também chamado: sistema binário · sistema hexadecimal · conversão de bases

Exercícios grátis de Sistemas de numeração com diagramas, dicas e soluções completas resolvidas. Valores novos a cada vez, em três níveis: de binário e hexadecimal para decimal, complemento para dois, bits, intervalos e memória.

Exercício gratuitoFácil
clique nos bits para defini-los012806403201608040201

Defina os bits para que o registrador de 8 bits contenha 0x99. Qual é o valor N do padrão em decimal?

0x99

Clique em um bit para alternar entre 0 e 1. A caixa mostra seu padrão como um número sem sinal, e você também pode digitá-lo. Resposta exata: um número inteiro, sem arredondar.

Próximo exercício →

O que você pratica

  1. Fácilde binário e hexadecimal para decimal
  2. Médiacomplemento para dois
  3. Difícilbits, intervalos e memória

Fórmulas principais

Pesos das posições
binário 2k, octal 8k, hexadecimal 16k
Para decimal
Σ dk·bk
A partir de decimal
divida pela base e leia os restos de baixo para cima
Hexadecimal ↔ binário
um dígito hexadecimal = 4 bits
Complemento para dois
inverta os bits e some 1

Aprenda Sistemas de numeração do zero

1O que é um sistema de numeração

No dia a dia você conta em decimal, base 10. Ele tem dez algarismos, de 0 a 9, e cada posição vale dez vezes a posição à sua direita.

Em 352, o 3 vale 300, o 5 vale 50 e o 2 vale 2. As posições valem 1, 10, 100 a partir da direita.

352 = 3 · 100 + 5 · 10 + 2 · 1

Um computador guarda tudo como interruptores ligados ou desligados. Por isso conta em binário, base 2, com apenas os algarismos 0 e 1.

Um algarismo binário é um bit. Um grupo de 8 bits é um byte.

A regra é a mesma em qualquer base: cada algarismo vale o seu valor vezes uma potência da base.

Autoavaliação No número decimal 4721, quanto vale o 7?
  1. 7000
  2. 700
  3. 70
  4. 7

Resposta: 700. Contando a partir da direita, as posições valem 1, 10, 100 e 1000. O 7 está na terceira posição, então vale 7 · 100 = 700.

2Binário e hexadecimal

Em binário as posições valem 1, 2, 4, 8, 16 e assim por diante, a partir da direita. Cada posição vale o dobro da posição à sua direita.

Para um número de 8 bits as posições valem 128, 64, 32, 16, 8, 4, 2 e 1.

012806413211608041201

Para ler um número binário, some os valores de posição de cada bit igual a 1. Para 0011 0010 isso é 32 + 16 + 2 = 50.

Longas sequências de bits são difíceis de ler. Programadores costumam escrevê-las em hexadecimal (hex), base 16.

O hexadecimal precisa de 16 algarismos. Usa 0 a 9 e depois as letras A = 10, B = 11, C = 12, D = 13, E = 14 e F = 15.

As posições hexadecimais valem 1, 16, 256 e 4096, a partir da direita. Um número hexadecimal costuma ser escrito com 0x na frente, por exemplo 0x2F.

Um algarismo hexadecimal tem exatamente 4 bits, então 0011 0010 é 0x32: 0011 é 3 e 0010 é 2.

Autoavaliação Quanto é 0x1A em decimal?
  1. 110
  2. 11
  3. 161
  4. 26

Resposta: 26. A = 10. As posições são 16 e 1, então 1 · 16 + 10 · 1 = 26. Escrever os algarismos lado a lado (110) ou somá-los (11) ignora os valores de posição. 161 usa as posições na ordem errada.

3Números negativos: complemento de dois

Um byte com todas as posições positivas guarda de 0 a 255. Isso se chama sem sinal.

Para guardar números negativos, os computadores usam o complemento de dois. A única mudança é que o bit mais à esquerda vale −128 em vez de +128.

1−12806403201608041211

Então 1000 0011 é −128 + 2 + 1 = −125. O bit mais à esquerda se chama bit de sinal: quando é 1, o número é negativo.

Um número de 8 bits em complemento de dois vai de −128 (1000 0000) a +127 (0111 1111).

Para escrever um número negativo −x, parta de +x em binário, inverta cada bit (0 vira 1, 1 vira 0) e some 1.

Exemplo para −5: 5 é 0000 0101. Invertido fica 1111 1010. Somando 1 dá 1111 1011.

O mesmo padrão lido como sem sinal tem o valor 256 − x. Para −5 isso é 251, e 1111 1011 é de fato 128 + 64 + 32 + 16 + 8 + 2 + 1 = 251.

Autoavaliação O padrão de 8 bits 1111 1111 guarda um número em complemento de dois. Qual é o seu valor?
  1. 255
  2. −127
  3. −128
  4. −1

Resposta: −1. −128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = −1. 255 é a leitura sem sinal. −127 vem de tratar o primeiro bit como um sinal de menos na frente de 111 1111.

4O método passo a passo

Binário ou hexadecimal para decimal:

  1. Escreva o valor de posição embaixo de cada algarismo: potências de 2 para binário, potências de 16 para hexadecimal, começando por 1 na direita.
  2. Em hexadecimal, substitua cada letra pelo seu valor: de A = 10 até F = 15.
  3. Multiplique cada algarismo pelo seu valor de posição e some tudo.

Complemento de dois:

  1. Para ler um padrão, dê ao bit mais à esquerda o valor −128 (em 8 bits) e some os valores de posição de todos os bits 1.
  2. Para escrever −x, escreva +x em 8 bits, inverta cada bit e some 1.
  3. O valor sem sinal desse padrão é 256 − x. Use-o para conferir os seus bits.

Bits, faixas de valores e memória:

  1. n bits dão 2ⁿ padrões diferentes.
  2. Sem sinal eles guardam de 0 a 2ⁿ − 1. Em complemento de dois guardam de −2ⁿ⁻¹ a 2ⁿ⁻¹ − 1.
  3. Para dar a k itens um código próprio, encontre o menor b com 2b ≥ k.
  4. Para a memória, multiplique o número de itens pelos bits por item, depois divida por 8 para obter bytes e por 1024 para obter KiB.
M = largura × altura × bits por pixel / 8 / 1024 (KiB)

5Um exemplo resolvido

Acompanhe cada passo. Tente prever o próximo antes de abri-lo.

Exemplo resolvido

O padrão de 8 bits 1011 0110 guarda um inteiro com sinal em complemento de dois. Qual é o seu valor N em decimal?

1

Escreva os valores de posição

1−12806413211608141201

Em complemento de dois a posição mais à esquerda vale −128. As outras posições são 64, 32, 16, 8, 4, 2 e 1.

2

Observe o bit de sinal

O bit mais à esquerda é 1, então o número é negativo.

3

Some os bits 1

Os bits 1 estão nas posições −128, 32, 16, 4 e 2.

N = −128 + 32 + 16 + 4 + 2 = −74
4

Confira com o valor sem sinal

Lido como sem sinal, o padrão é 128 + 32 + 16 + 4 + 2 = 182.

Para um número negativo o valor sem sinal é 256 − x, então x = 256 − 182 = 74. Isso dá N = −74 de novo.

5

Confira invertendo

Inverta 1011 0110 para obter 0100 1001 e some 1 para obter 0100 1010.

0100 1010 é 64 + 8 + 2 = 74. Então o padrão original é −74.

Resposta

N = −74

6Erros comuns

  • Esquecer de somar 1 depois de inverter os bits. Você acaba com um valor uma unidade abaixo.
  • Ler um padrão em complemento de dois como sem sinal, por exemplo 1111 1111 como 255 em vez de −1.
  • Tratar o bit de sinal como um sinal de menos na frente dos outros bits. Em complemento de dois ele vale −128.
  • Colocar as posições na ordem errada. A posição que vale 1 está sempre à direita.
  • Usar A = 11 em hexadecimal. As letras começam em A = 10.
  • Misturar bits e bytes em questões de memória. Divida o número de bits por 8.
Autoavaliação Qual é −5 como padrão de 8 bits em complemento de dois?
  1. 0000 0101
  2. 1000 0101
  3. 1111 1010
  4. 1111 1011

Resposta: 1111 1011. 5 é 0000 0101. Inverter dá 1111 1010 e somar 1 dá 1111 1011. 1111 1010 esquece de somar 1, e 1000 0101 põe um sinal de menos na frente do 5.

7Como são as questões de prova

  • Fácil: binário e hexadecimal para decimal. Converta um número binário de 8 bits ou um hexadecimal de 3 algarismos para decimal.
  • Médio: complemento de dois. Leia o valor de um padrão de 8 bits com sinal, ou escreva um número negativo como padrão e dê o seu valor sem sinal.
  • Difícil: bits, faixas de valores e memória. O maior ou o mais negativo valor que cabe em n bits, o número de bits necessário para k códigos, ou a memória ocupada por uma imagem.

Exemplo de questão difícil: uma imagem de 256 × 256 com 24 bits por pixel ocupa 256 · 256 · 24 / 8 / 1024 = 192 KiB.

Autoavaliação Qual é o menor número de bits que dá a 375 itens um código próprio?
  1. 188
  2. 512
  3. 8
  4. 9

Resposta: 9. 2⁸ = 256 códigos são poucos, 2⁹ = 512 bastam, então 9 bits. 512 é o número de códigos, não o número de bits.

Aprenda passo a passo no aplicativoAprenda passo a passo no aplicativo

Exemplos resolvidos

Exemplo 1Fácil
pesos das posições2256B16E1

Converta o número hexadecimal 0x2BE para decimal. Calcule N.

0x2BEA = 10 … F = 15

Calcule N

Mostrar dicas
  1. Em hexadecimal as posições valem 1, 16, 256, 4096 a partir da direita.
  2. Substitua as letras pelo seu valor (A = 10 … F = 15), multiplique pelo peso e some.
  3. 2 = 2, B = 11, E = 14.
Mostrar a resposta e a solução passo a passo

Sistemas de numeração posicionais: cada algarismo vale o seu valor vezes uma potência da base. Em binário as posições valem 1, 2, 4, 8, 16, …; em hexadecimal 1, 16, 256, …, com A–F para 10–15. No complemento para dois de 8 bits, o bit da esquerda vale −128 em vez de +128; é assim que se guardam os números negativos.

Multiplicar cada algarismo pelo seu peso

2·256 + 11·16 + 14·1 = 702

Resposta

0x2BE = 702
Exemplo 2Média
complemento para dois de 8 bits0−12806403201608040201

Defina os bits para armazenar −45 em complemento de dois de 8 bits. Lido como um número sem sinal, qual é o valor U do padrão?

N = −458 bit

Calcule U

Mostrar dicas
  1. Escreva 45 em binário, inverta todos os bits e some 1.
  2. 45 = 0010 1101₂.
  3. Como número sem sinal, o padrão é igual a 256 + N.
Mostrar a resposta e a solução passo a passo

Definir bits: cada bit vale uma potência de dois (128, 64, …, 1). Um dígito hexadecimal são exatamente quatro bits, e em complemento de dois de 8 bits o bit mais à esquerda vale −128. As operações bit a bit atuam em cada posição de bit separadamente.

Inverter e somar um

45 = 0010 1101
invertido: 1101 0010
+1 → 1101 0011

Ler sem sinal

1101 0011₂ = 256 − 45 = 211

Resposta

U = 211
Exemplo 3Difícil
clique nos bits para defini-los012806403201608040201

Defina os bits com o resultado de 8 bits de 0111 0001 >> 3. Qual é o valor R do resultado em decimal?

0111 0001>> 3

Calcule R

Mostrar dicas
  1. Deslocar para a direita por 3 move cada bit 3 posições para a direita; os bits que saem pela extremidade direita se perdem e entram zeros pela esquerda.
  2. Trabalhe uma posição de bit de cada vez, da esquerda para a direita.
  3. Os quatro primeiros bits do resultado são 0000.
Mostrar a resposta e a solução passo a passo

Definir bits: cada bit vale uma potência de dois (128, 64, …, 1). Um dígito hexadecimal são exatamente quatro bits, e em complemento de dois de 8 bits o bit mais à esquerda vale −128. As operações bit a bit atuam em cada posição de bit separadamente.

Bit a bit

Deslocar para a direita por 3 move cada bit 3 posições para a direita; os bits que saem pela extremidade direita se perdem e entram zeros pela esquerda.

0111 0001 >> 3
= 0000 1110

Valor do resultado

0000 1110₂ = 14

Resposta

R = 14

Perguntas e respostas

Sistemas de numeração: o que é?

No dia a dia você conta em decimal, base 10. Ele tem dez algarismos, de 0 a 9, e cada posição vale dez vezes a posição à sua direita.

Em 352, o 3 vale 300, o 5 vale 50 e o 2 vale 2. As posições valem 1, 10, 100 a partir da direita.

Sistemas de numeração: como resolver os exercícios passo a passo?

Sistemas de numeração posicionais: cada algarismo vale o seu valor vezes uma potência da base. Em binário as posições valem 1, 2, 4, 8, 16, …; em hexadecimal 1, 16, 256, …, com A–F para 10–15. No complemento para dois de 8 bits, o bit da esquerda vale −128 em vez de +128; é assim que se guardam os números negativos.

Sistemas de numeração: o que se pratica?
  • Fácil: de binário e hexadecimal para decimal
  • Média: complemento para dois
  • Difícil: bits, intervalos e memória

Cada exercício tem valores novos, então você aprende o método em vez de decorar uma resposta. Travou? Abra primeiro uma dica pequena, e a explicação completa só quando precisar.

Como a prática funciona

  • Cada exercício tem valores novos, então você aprende o método em vez de decorar uma resposta.
  • Travou? Abra primeiro uma dica pequena, e a explicação completa só quando precisar.
  • Seu progresso, seus erros e seus exercícios salvos ficam guardados, para você revisar antes da prova.

Temas antes e depois deste

Depois continue com

Calculadoras

Disciplinas com este tópico

Mais temas de Informática

Lista de exercícios para imprimir