Subtratores e Comparadores Disciplina: Circuitos Digitais Subtratores e Comparadores Aula 15 Lucas Santos Pereira
Subtratores
Subtração binária A subtração de dois números binários é realizada exatamente da mesma forma que a subtração de números decimais. Ex: MSB556 - 461 095 Existem quatro casos que podem ocorrer na subtração de dois dígitos binários. LSD ( least-significant-digit ) 0 - 0 = 0 1 - 0 = 1 0 - 1 = 1 ( vem 1 emprestado) 1 - 1 = 0
Subtração binária A subtração binária entre dois números pode ser representada como: Ex: A B - S A é o minuendo B é o subtraendo S é o resultado da subtração B0 é o vem-um de saída ou borrow-out Bo A B S Bo 1
Técnica da Subtração binária Primeiro passo: empréstimo de bit 1 1 0 - 1 0 1 Segundo passo: subtração dos bits LSB 1 0 10 1 Terceiro passo: subtração até os bits MSB 0 0 1 B0 pede 1 emprestado 10 – 1 = 1 ou 2 – 1 = 1 ou 6 – 5 = 1
Subtração binária Exemplos: b) 1 0 1 1 1 0 1 0 1 0 0 0 1 1 -
Subtração binária Exemplos: b) 1 0 1 1 1 0 1 0 1 0 0 0 1 1 -
Circuito Meio Subtrator (Half Subtractor) O circuito meio subtrator (half subtractor) básico é composto por duas entradas binárias A e B que representam os bits minuendo e subtraendo e uma saída (S) e (B0) que representa o vem-um. O nome meio subtrator se origina do fato dele não considerar o vem-um de uma possível operação anterior.
Circuito Meio Subtrator (Half Subtractor) A seguir temos a tabela verdade e o diagrama de blocos do meio subtrator. Pela tabela verdade do meio subtrator, obtém-se as seguintes expressões booleanas: A B S Bo 1 XOR AND
Circuito Meio Subtrator (Half Subtractor) Circuito lógico do meio subtrator. XOR AND
Circuito Subtrator Completo (Full Subtractor) O circuito subtrator completo é composto por três entradas binárias A, Bi, e B que representam os bits minuendo, borrow-in (correspondente ao borrow-out ou vem um de uma possível operação anterior) e subtraendo. Uma saída S que representa o resultado da subtração e uma saída B0 que representa o vem um dessa operação.
Circuito Subtrator Completo (Full Subtractor) A seguir temos a tabela verdade e o diagrama de blocos do subtrator completo. Pela tabela verdade do meio subtrator, obtém-se as seguintes expressões booleanas: A B Bi S Bo 1 XOR
Circuito Subtrator Completo (Full Subtractor) Circuito lógico do subtrator completo XOR XOR AND AND OR AND
Associação de Subtratores Associando-se os blocos do meio subtrator e do subtrator completo em série, podem-se obter subtratores de vários bits. Exemplo: Deseja-se obter um subtrator binário de quatro bits. Para isto, basta utilizar um meio subtrator para a operação com os bits menos significativos (LSB) e três subtratores completos para a operação com os demais bits.
Associação de Subtratores
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: 1 1 0 0 0 1 1 1 -
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 1 0 10 0 0 1 01 1 -
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 1 0 01 10 0 1 01 01 -
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 1 0 01 10 0 1 01 01 - 1
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 1 0 01 10 0 1 01 01 - 0 1
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 10 01 10 01 01 01 - 0 1
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo normal: perde 1 vem 1 borrow=0 10 01 10 01 01 01 - 1 0 1 borrow = 0 resultado positivo
Subtração Binária em complemento de 2 Exemplo 2: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo complemento de 2: Podemos apenas somar o número 1100 com o complemento de 2 de 0111 (que representa o 0111 negativo): 1 1 0 0 1 0 0 1 +
Subtração Binária em complemento de 2 Exemplo 1: Deseja-se fazer a operação de subtração binária entre 1100 e 0111. Modo complemento de 2: Podemos apenas somar o número 1100 com o complemento de 2 de 0111 (que representa o 0111 negativo): carry = 1 1 1 0 0 1 0 0 1 + 0 1 0 1 carry = 1 resultado positivo Conclusões: Os resultados deram iguais, portanto a operação está correta; O borrow igual a 0 no modo normal de operação significa positivo , o mesmo acontecendo com carry igual a 1 no complemento de 2.
Exercícios Realize a operação de subtração pelos 2 métodos estudados (método convencional e complemento de 2). Após a subtração, converta o número para decimal. 11010 – 1101 = 110001 – 1001 = 10001 – 01001 = 2. Construa um subtrator de 3 bits utilizando apenas portas lógicas (AND, OR, XOR e NOT).