Estudo de álgebras Booleanas finitas, assim como, as suas aplicações no projeto de circuitos digitais e, em particular, de arquiteturas de computadores.
Sistemas de representação numérica: bases binária, octal e hexadecimal, conversão entre bases, aritmética com números binários. Noções de circuitos lógicos: funções lógicas, tabelas-verdade, portas lógicas. Noções de organização de computadores. Expressões booleanas: formas canônicas e suas formas minimais, mapas de Karnaugh e outros métodos para minimização de expressões booleanas. PLA e circuitos combinacionais. Circuitos sequenciais: flip-flops e registradores, noções de análise e projeto de circuitos sequenciais. Exemplos de circuitos: somadores, subtratores, multiplicadores, divisores, verificadores de paridade, decodificadores, seletores ou multiplexadores, demultiplexadores, comparadores, conversores de código, deslocadores e contadores. Álgebra booleana: definição axiomática, exemplos (álgebra de conjuntos, cálculo proposicional, funções lógicas), propriedades, e ordens parciais em álgebras booleanas.
Bibliografia Básica: Notas de Aula de MAC0329 (IME-USP, online) F.J. Hill, G.R. Peterson, Introduction to Switching Theory and Logical Design, 3rd ed., John Wiley and Sons, 1981. Thomas l. Floyd. Sistema digitais: fundamentos e aplicações, 9ed, Bookman, 2007. Kenneth A. Ross, Charles R.B. Wright. Discrete mathematics, Prentice Hall, 1992. V.P. Nelson, H.T. Nagle, B.D. Carroll, D. Irwin, Digital Logic Circuit Analysis and Design, Prentice Hall, 1995. Bibliografia Complementar: Larry Gonick. Introdução ilustrada a computação (com muito humor!), Harbra, 1984.