Codificadores e Decodificadores: Fundamentos e Aplicações
Técnicas de Complemento de 1 e 2 para números binários
Neste tutorial, exploraremos duas técnicas fundamentais para representar números negativos em sistemas digitais: Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. e Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara.. Esses métodos viabilizam operações aritméticas e lógicas com sinais binários
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos., permitindo que computadores e dispositivos digitais manipulem números positivos e negativos de forma confiável.
Visão Geral🔗
Quando representamos números em binárioSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos., lidamos inicialmente com valores não negativos (zero ou positivos). Para incluir a possibilidade de representar números negativos, precisamos de um sistema que diferencie o sinal e permita cálculos (adição, subtração, etc.) de forma consistente. Dois dos métodos
Métodos e Sobrecarga: Técnicas para Maior FlexibilidadeDescubra como métodos, tasks, functions e sobrecarga em SystemVerilog otimizam a programação orientada a objetos com exemplos práticos e dicas de boas práticas. mais comuns são:
- Complemento de 1
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. (C1)
- Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. (C2)
Ambos utilizam o artifício de "complementar" os bitsSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. de um número para chegar a uma forma que indique a negação desse valor. A principal diferença entre eles está em como se faz o cálculo do número negativo e em detalhes que veremos a seguir.
Complemento de 1🔗
Conceito
No Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara., para encontrar a representação de um número negativo, basta inverter cada bit
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. do seu correspondente positivo.
Em termos simples:
- Se o bit
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. é 0, ele se torna 1;
- Se o bit
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. é 1, ele se torna 0.
Isso pode ser resumido como uma inversão bit a bitSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos..
Exemplo (4 bits)
Vamos assumir que estamos lidando com números de 4 bits. O número decimalSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. +5 em binário (4 bits) é:
- +5 = 0101₂
Para obter o Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. de +5, que corresponderia a -5, procedemos invertendo bit a bit
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos.:
- Invertendo: 0101 → 1010
Logo, 1010 em Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. representa o valor -5.
Valor decimal | Binário (4 bits) | Complemento de 1 |
---|---|---|
+5 | 0101 | 1010 (-5) |
Ambiguidade do Zero
Uma limitação importante do Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. é a existência de duas representações para o zero:
- +0 = 0000
- -0 = 1111
Esse fato gera complicações em certas operações, pois o zero passa a ter duas formas de ser representado.
Complemento de 2🔗
Conceito
O Complemento de 2Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. é a forma mais utilizada em computadores modernos para representar números negativos. O processo de obtenção do negativo de um número \(N\) em binário
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos. consiste em:
2. Somar 1 ao resultado.
Exemplo (4 bits)
Continuando no exemplo de 4 bitsSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos., considere novamente +5:
3. Somar 1:
1010
0001
----
1011
Resultado: 1011
Nesse caso, 1011 (em C2) representa -5.
Valor decimal | Binário (4 bits) | C1 | C2 (soma de 1) |
---|---|---|---|
+5 | 0101 | 1010 | 1011 (-5) |
Zero Único
Uma vantagem crucial do Complemento de 2Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. é que existe apenas um zero:
- +0 e -0 são representados de forma idêntica: 0000 (no caso de 4 bits
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos.).
Isso simplifica as operações e o manuseio do zero em circuitos e algoritmos digitais.
Interpretação de Faixa de Valores (4 bits)
Se considerarmos 4 bitsSistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos., a faixa de valores em Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. vai de -8 a +7:
- Menor valor: 1000₂ (que é -8)
- Maior valor: 0111₂ (que é +7)
Comparação e Vantagens🔗
Característica | Complemento de 1 (C1) | Complemento de 2 (C2) |
---|---|---|
Forma de cálculo do -N | Inversão bit a bit do N | Inversão bit a bit de N + 1 |
Número de zeros | 2 (0000 e 1111 em 4 bits) | 1 (0000 é +0 e -0 simultaneamente) |
Complexidade de operações | Maior ambiguidade, mais complexidade | Menos ambiguidade, padrão em hardware |
Utilização prática | Menos comum em sistemas modernos | Padrão atual em CPUs e MCUs |
- Complemento de 1
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara.:
- Simples de entender (apenas inverter bits
Sistemas de Numeração e Conversão: Binário, Decimal, Octal e HexadecimalAprenda conversões de sistemas numéricos em eletrônica digital. Descubra métodos para converter entre decimal, binário, octal e hexadecimal com exemplos.).
- Inconveniente do zero duplo.
- Simples de entender (apenas inverter bits
- Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara.:
- Um único zero.
- Operações aritméticas (adição/subtração) mais simples e nativas em processadores.
- É a forma mais adotada na indústria.
Conclusão🔗
A representação de números negativos é essencial para que sistemas digitais possam lidar com cálculos envolvendo sinais positivo e negativo. As técnicas de Complemento de 1Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. e Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. oferecem abordagens diferentes, mas o Complemento de 2
Circuitos Combinacionais: Somadores (meio somador, somador completo) e subtratores (complemento de 2)Aprenda a montar circuitos digitais com meio somador, somador completo e subtratores via complemento de 2. Domine operações aritméticas de forma clara. se consolidou como o padrão dominante, graças à sua eficiência e univocidade do zero.
Com esse entendimento, você está preparado para realizar operações básicas e interpretar valores negativos representados em binário, o que será fundamental no desenvolvimento de projetos e na compreensão do funcionamento interno de processadores, microcontroladoresMicrocontroladores e Microprocessadores: Diferenças e Aplicações PráticasDescubra as principais diferenças, arquiteturas e aplicações de microcontroladores e microprocessadores para projetos digitais modernos. e demais circuitos digitais.
Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.
Referências🔗
- Hub de Eletrônica: www.electronicshub.org
- MIT OpenCourseWare: ocw.mit.edu
- Stack Exchange de Eletrônica: electronics.stackexchange.com
- Tudo Sobre Circuitos: www.allaboutcircuits.com
- Tutoriais de Eletrônica: www.electronics-tutorials.ws