Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
Conversão entre bases Base binária ↔ Base hexadecimal 1001 010100012 95116 10100001 010000102 (2 Bytes) A14216 10111111 01111100 10011110 100101012 (4 Bytes) BF7C9E9516 F5A216 1111 0101 1010 0010 → 11110101101000102 101011116 0001 0000 0001 0000 0001 0001 0001 → 10000000100000001000100012 Qual o número mínimo de bits necessários para representar o valor 3DECADE16? Qual o maior número hexadecimal que pode ser representado na base binária utilizando 6 bits ? 1 26 bits 3F16 Conversão entre bases Base binária ↔ Base octal 10111012 1358 1001 010100012 45218 11100001 110000102 1607028 7538 111 101 011 → 1111010112 52368 101 010 011 110 → 1010100111102 10101118 001 000 001 000 001 001 001 → 10000010000010010012 2 Conversão entre bases Base b → Base decimal Lei da formação Base decimal → Base b Divisões sucessivas para a parte inteira Multiplicações sucessivas para a parte fracionária Base binária ↔ Base hexadecimal Substituição direta Base binária ↔ Base octal Substituição direta 3 Aritmética binária A soma de dois números binários segue as mesmas regras da soma no sistema decimal Exemplo decimal 1 1 1 5 7 949 + 4 + 3 + 321 9 10 1270 4 Aritmética binária Regras básicas para a adição de bits 1 1 12 02 02 12 12 12 + 02 + 12 + 02 + 12 + 12 02 12 12 102 (2) 112 (3) Exemplos 102 012 01112 + 012 + 112 + 01012 5 Carry Aritmética binária Regras básicas para a adição de bits 1 1 12 02 02 12 12 12 + 02 + 12 + 02 + 12 + 12 02 12 12 102 (2) 112 (3) Exemplos 1 1 1 1 1 102 012 01112 (7) + 012 + 112 + 01012 (5) 112 1002 11002 (12) 6 Carry Aritmética binária Realizar as seguintes somas binárias 10012 + 10112 101002 (9 + 11 = 20) 111001112 + 110110112 1110000102 (231 + 219 = 450) 111111112 + 112 1000000102 (255 + 3 = 258) 111111112 + 111111112 1111111102 (255 + 255 = 510) 7 Aritmética binária Overflow O número de bits utilizado para representar números em um circuito digital é limitado Portanto o intervalo de número representáveis depende do número de bits utilizados Se o resultado de uma operação aritmética não pode ser representado utilizando o número de bits disponível, ocorre um overflow Em calculadoras é apresentado como uma mensagem de erro (e.g E ou Error) quando se trabalha com números muito grandes 8 Aritmética binária Overflow Ocorre quando a soma dos bits mais significativos de um número gera carry = 1 Exemplo utilizando 4 bits para operandos e resultado Intevalo de representação: 00002 (0) – 11112 (15) 10012 (9) 11112 (15) + 10112 (11) + 10002 (8) 9 Aritmética binária Overflow Ocorre quando a soma dos bits mais significativos de um número gera carry = 1 Exemplo utilizando 4 bits para operandos e resultado Intevalo de representação: 00002 (0) – 11112 (15) 1 1 1 1 10012 (9) 11112 (15) + 10112 (11) + 10002 (8) 01002 (4) 01112 (7) 10 Não é “colocado” no resultado porque ele deve conter apenas 4 bits Aritmética binária Overflow Verificar a ocorrência de overflow 4 bits 11112 + 11112 11102 (14) - overflow 01012 + 01112 11002 (12) - ok 11102 + 10002 01102 (6) – overflow 8 bits 101010002 + 101111012 011001012 - overflow 011010002 + 011011012 110101012 - ok 11 Aritmética binária Números binários negativos Até agora os números eram representados sem sinal (unsigned) Representação binária direta. Para obter o valor decimal basta aplicar a lei de formação : 10002 → 8 Essa representação deve ser expandida para codificar os números negativos Existem várias maneiras de representar números negativos A representação utilizada em computação para representar números binários negativos é chamada complemento de 2 12 Aritmética binária Representação em complemento de 2 Nessa representação, o bit mais à esquerda (mais significativo) é utilizado para indicar o sinal do número (signed) 0: número positivo 1: número negativo Exemplo Números signed de 4 bits Positivos: 0000, 0001, 0010, 0011, 0100, 0101, 0110, 0111 Negativos: 1000, 1001, 1010, 1011, 1100, 1101, 1110, 1111 Observação importante 00012 = 1 10012 NÃO é -1! 10012 = -7 em complemento de 2 13 Aritmética binária Representação em complemento de 2 O intervalo de números representáveis utilizando n bits em complemento de 2 é dado por -(2n-1) a (2n-1-1) Exemplos 4 bits -(24-1) a (24-1-1) = -(23) a (23-1) = -8 a 7 8 bits (tipo char em C) -(28-1) a (28-1-1) = -(27) a (27-1) = -128 a 127 16 bits -(216-1) a (216-1-1) = -(215) a (215-1) = -32768 a 32767 32 bits (tipo int em C) -(232-1) a (232-1-1) = -(231) a (231-1) = -2.147.483.648 a 2.147.483.647 14 Aritmética binária Representação em complemento de 2 Números representáveis utilizando 3 bits 23 = 8 15 Código Direta (unsigned) Complementode 2 (signed) 0002 0 0 0012 1 1 0102 2 2 0112 3 3 1002 4 -4 1012 5 -3 1102 6 -2 1112 7 -1 Aritmética binária Representação em complemento de 2 Números representáveis utilizando 4 bits 24 = 16 16 Código Direta (unsigned) Complementode 2 (signed) 00002 0 0 00012 1 1 00102 2 2 00112 3 3 01002 4 4 01012 5 5 01102 6 6 01112 7 7 10002 8 -8 10012 9 -7 10102 10 -6 10112 11 -5 11002 12 -4 11012 13 -3 11102 14 -2 11112 15 -1 Aritmética binária Representação em complemento de 2 Para obter o valor decimal de um número binário em complemento de 2, utiliza-se a lei da formação com o peso negativo do bit mais significativo (bit de sinal) Número10 = -(an.bn) + … + a2.b2 + a1.b1 + a0.b0 Exemplo 10012 -(1.23) + 0.22 + 0.21 + 1.20 = -8 + 0 + 0 + 1 = -7 100000012 -(1.27) + 1.20 = -128 + 1 = -127 Observação Somente olhando para o número binário, não tem como saber se a representação é direta ou em complemento de 2. Essa informação deve estar explícita em algum lugar. 17 Aritmética binária Representação em complemento de 2 Números em complemento de 2 (signed) Número10 = -(an.bn) + … + a2.b2 + a1.b1 + a0.b0 11112 -(1.23) + 1.22 + 1.21 + 1.20 = -8 + 4 + 2 + 1 = -1 100001112 -(1.27) + 1.22 + 1.21 + 1.20 = -128 + 4 + 2 + 1 = -121 110010102 -(1.27) + 1.26 + 1.23 + 1.21 = -128 + 64 + 8 + 2 = -54 111111112 -1 18 Aritmética binária Representação em complemento de 2 Binário positivo ↔ binário negativo Inverter todos bits (complemento) e somar 1 Exemplo 01002 (4) 10112 + 12 = 11002 (-4) 11002 (-4) 00112 + 12 = 01002 (4) 19 Aritmética binária Representação em complemento de 2 Decimal negativo → binário em complemento de 2 Ignorar o sinal do número decimal e converter para binário utilizando o número de bits especificado Inverter todos bits (complemento) e somar 1 Exemplo Obter a representação em complemento de 2 de -39 utilizando 8 bits 001001112 (39) 110110002 + 12 = 110110012 (-39) 20 Aritmética binária Representação em complemento de 2 Representar usando 8 bits e em hexadecimal -30 -64 -100 -150 21
Compartilhar