120 likes | 475 Views
Centro Federal de Educação Tecnológica do Espírito Santo Curso de Tecnólogo em Eletromecânica Introdução à Lógica Matemática. Circuitos aritméticos. João Marques Salomão Curso de Engenharia Elétrica Coordenadoria de Eletrotécnica CEFET-ES. Introdução a Lógica Matemática - 2007/1.
E N D
Centro Federal de Educação Tecnológica do Espírito SantoCurso de Tecnólogo em EletromecânicaIntrodução à Lógica Matemática Circuitos aritméticos João Marques Salomão Curso de Engenharia Elétrica Coordenadoria de Eletrotécnica CEFET-ES Introdução a Lógica Matemática - 2007/1
Circuitos aritméticos • São circuitos combinacionais que realizam as operações de soma e subtração. • Soma de dois bits: 0 + 0 = 0; 0 + 1 = 1;1 + 0 = 1; 1 + 1 = 0 e vai um. • Subtração de dois bits: 0 - 0 = 0; 1 - 0 = 1; 1 - 1 = 0; 0 - 1 = 1 e “pega um emprestado” (o computador faz a subtração em complemento de 2). • Na prática para somar: • Representamos os dois números a serem somados, um sobre o outro, e somamos coluna a coluna; • Quando o valor da soma de dois algarismos supera a base, somamos um à próxima coluna (isto é, fazemos resultado + base, sendo base igual a 10 para qualquer base). • O "VAI UM" de uma coluna é o "VEM UM" da próxima coluna.
Circuito meio-somador (Half Adder) • O meio-somador SOMA DOIS BITS (Não considera o “vem um” (carry in). • A TV e as expressões lógicas são: • Entradas A e B: os dois bits a serem somados. • Saídas S e Co: a soma dos bits e o bit de carry out ("vai um"). • Etapas da Solução: a. Construir a tabela verdade b. Forma canônicac. Simplificação (MK) d. Circuito • O circuito lógico é:
Circuito somador completo (Full Adder) • SOMA DOIS BITS: considera o “vai um” (carry out) e o “vem um” (carry in). • A TV, as expressões lógicas e o circuito são: • Entradas A, B e Ci: os dois bits a serem somados e o “vem um”. • Saídas S e Co: a soma dos bits e o bit de carry out ("vai um"). • Etapas da Solução: a. Construir a tabela verdade b. Forma canônicac. Simplificação (MK) d. Circuito
Soma de números com mais que um bit • Somando A + B onde A =......A3..A2...A1...A0 e • B =......B3..B2....B1...B0, temos:
Construção de uma mini-ULA • MINI-ULA: circuito capaz de fazer somas e subtrações de dois números. • SOMADOR: • A entrada do somador receberá 8 bits, sendo quatro bits de cada número (A e B) a ser somado, variando de 0000 a 1111(2) • A saída terá 5 bits para o resultado da operação matemática (soma= 4 bits) e precisamos incluir um 5º bit (bit de overflow). Sol:. usando 4 blocos somadores completos: Obs.: Como o somador de entrada não deve receber nenhum bit de carry in, é preciso forçar que o Ci desse somador seja zero
Construção de uma mini-ULA • Um bit extra S irá sinalizar a operação: soma ou uma subtração. • SUBTRATOR: UMA SUBTRAÇÃO É UMA SOMA EM COMPLEMENTO! :. A - B = A + ( - B). • Complemento de 2: efetua-se o complemento de um, e em seguida soma-se 1 para obter o complemento de 2. • Convencionaremos:- para a SOMA, S = 0- para a SUBTRAÇÃO, S = 1.Portanto, para diferenciar de soma ou subtração, fazemos:se S = 0 ---> B (MANTÉM O BIT)se S = 1 ---> B (COMPLEMENTA de UM O BIT) . • Fazendo a TV para esse comportamento, teremos: • Portanto, para resolver a subtração, basta incluir portas XOR tendo como entradas B0 ... Bn e S no somador completo (operação em complemento a 1 (C1)). .
Construção de uma mini-ULA • Em binário: a Subtração é uma soma em Complemento de 2. • Para o complemento a dois (C2), soma-se um ao complemento a um (só para a subtracão). • Isto é: - se for uma soma (S = 0) então, nada precisa ser feito;- se for subtração (ou soma em complemento de 2) (S = 1), basta somar 1 ao complemento a 1. • Solução: Aplica-se o SINAL (S) na entrada (Ci). Neste caso o sinal S=0 (soma) nada será feito e caso o sinal seja S=1 (subtração, portanto B deve ser complementado a 1 e a 2) então será somado 1 na entrada.
Construção de uma mini-ULA • O tratamento do estouro de capacidade (Overflow). • Tratando o OVERFLOW (ver somador): 1 - SE houver VAI UM para o penúltimo bit (C3=1) E TAMBÉM para o último bit (C4=1) OU SE não houver VAI UM para o penúltimo bit (C3=0) NEM PARA o último bit (C4=0)NÃO HÁ OVERFLOW 2 - SE houver VAI UM para o penúltimo bit (C3=1) E NÃO para o último bit (C4=0) OU SE não houver VAI UM para o penúltimo bit (C3=0) E SIM para o último bit (C4=1)HÁ OVERFLOW
Construção de uma mini-ULA • A mini-ULA é capaz de somar ou subtrair números de 4 bits. • Aplicando os circuitos de tratamento de subtração em complemento a dois e de sinalização de “overflow” ao circuito somador, obtemos o circuito da mini-ULA.