La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Www.microse.cic.ipn.mx 1 Arquitecturas de Computadoras Breve repaso al algebra booleana.

Presentaciones similares


Presentación del tema: "Www.microse.cic.ipn.mx 1 Arquitecturas de Computadoras Breve repaso al algebra booleana."— Transcripción de la presentación:

1 www.microse.cic.ipn.mx 1 Arquitecturas de Computadoras Breve repaso al algebra booleana

2 www.microse.cic.ipn.mx 2 Álgebra Booleana Fue desarrollada por George Boole en el siglo 19 - Es una representación algebráica de la lógica binaria - Codifica “verdadero” como 1 y “falso” como 0 AND OR A&B = 1 cuando A|B = 1 cuando A = 1 o B= 1 A = 1 y B = 1 NOTXOR ~A = 1 cuando A = 0A^B = 1 cuando A = 1 o B = 1, pero no ambos A,B& 000 010 100 111 A,B| 000 011 101 111 AÃ 01 10 A,B^ 000 011 101 110

3 www.microse.cic.ipn.mx 3 Aplicaciones del álgebra de Boole  Fue aplicado a sistemas por Claude Shannon En su tesis de Mestría del MIT en 1937 Razonó acerca de redes de relevadores con interruptores  Se codificaron los interruptores cerrados como 1 y los interruptores abiertos como 0 A ~A ~B B Se conecta cuando A&~B | ~A&B = A^B A&~B ~A&B

4 www.microse.cic.ipn.mx 4 Álgebra de enteros  Aritmética de enteros   Z, +, *, -, 0, 1  forma un anillo  La adición es la operación de “suma”  La multiplicación es la operación de “producto”  - Es inverso aditivo  0 Es la identidad de la suma  1 Es la identidad del producto

5 www.microse.cic.ipn.mx 5 Álgebra Booleana   {0, 1}, |, &, ~, 0, 1  forma un “álgebra de Boole”  OR es la operación de “suma”  AND es la operación de “producto”  ~ Es la operación de complemento (inverso no aditivo)  0 Es la identidad de la suma  1 Es la identidad del producto

6 www.microse.cic.ipn.mx 6 Álgebra Booleana  Anillo entero Conmutatividad A | B = B | A A + B = B + A A & B = B & A A * B = B * A Asociatividad (A | B) | C = A | (B | C) (A + B) + C = A + (B + C) (A & B) & C = A & (B & C) (A * B) * C = A * (B * C) Producto distribuido sobre la suma A & (B | C) = (A & B) | (A & C) A * (B + C) = A * B + B * C Identidades de suma y producto A | 0 = A A + 0 = A A & 1 = A A * 1 = A Cero es un producto aniquilador A & 0 = 0 A * 0 = 0 Cancelación de la negación ~ (~ A) = A – (– A) = A

7 www.microse.cic.ipn.mx 7 Álgebra Booleana  Anillo entero Booleana: Suma distribuida sobre el producto A | (B & C) = (A | B) & (A | C) A + (B * C)  (A + B) * (A + C) Booleana: Idempotencia A | A = A A + A  A  “A es verdaero” o “A es verdadero” = “A es verdadero” A & A = A A * A  A Booleana: Absorción A | (A & B) = A A + (A * B)  A  “A es verdadero” o “A es verdadero y B es verdadero” = “A es verdadero” A & (A | B) = A A * (A + B)  A Booleana: Leyes de complementos A | ~A = 1 A + –A  1  “A es verdadero” or “A es falso” Anillo: Cada elemento tiene su inverso aditivo A | ~A  0 A + –A = 0

8 www.microse.cic.ipn.mx 8 Propiedades de & y ^  Anillo Booleano  {0,1}, ^, &, , 0, 1  Idéntica a enteros en mod 2  es la operación de identidad:  (A) = A A ^ A = 0  PropiedadAnillo Booleano Suma conmutativaA ^ B = B ^ A Producto conmutativoA & B = B & A Suma asociativa(A ^ B) ^ C = A ^ (B ^ C) Producto asociativo (A & B) & C = A & (B & C) Producto sobre la sumaA & (B ^ C) = (A & B) ^ (B & C) 0 es identidad suma A ^ 0 = A 1 es identidad producto A & 1 = A 0 es producto aniquiladorA & 0 = 0 Inverso aditivoA ^ A = 0

9 www.microse.cic.ipn.mx 9 Relaciones entre operaciones  Leyes de DeMorgan Expresa & en términos de |, y viceversa  A|B = ~(~A & ~B) A o B son verdad si ni A ni B son falsos  A & B = ~(~A | ~B) A y B son verdad si A y B no son falsos  Or exclusivo utilizando OR inclusivo A^B = (~A & B) | (A & ~B)  Exactamente uno A o B es verdadero A^B = (A|B) & ~(A&B)  Ya sea que A sea verdadero, o B sea verdadero, pero no ambos

10 www.microse.cic.ipn.mx 10 Álgebras Booleanas generales  Operaciones sobre vectores de bits Las operaciones son aplicadas bit por bit  Todas las propiedades del álgebra Boolena se aplican 01101001 & 01010101 01000001 01101001 | 01010101 01111101 01101001 ^ 01010101 00111100 ~ 01010101 10101010 01000001011111010011110010101010

11 www.microse.cic.ipn.mx 11 Representación y manipulación de conjuntos  Representación El vector de bits con ancho w representa un subconjunto {0, …,w-1} a j = 1 si j  A 01101001 76543210 {0, 3, 5, 6} 01010101 76543210{0, 2, 4, 6}  Operaciones &Intersección01000001{0, 6} |Unión01111101{0, 2, 3, 4, 5, 6} ^ Diferencia simétrica00111100{2, 3, 4, 5} ~ Complemento10101010{1, 3, 5, 7}

12 www.microse.cic.ipn.mx 12 Operaciones en C a nivel de bit  Las operaciones &, |, ~ y ^ están disponibles en C Se aplica a cualquier tipo de dato “entero”  long, int, short, char Se ven los argumentos como vectores de bits Los argumentos se aplican bit a bit  Ejemplos (dato tipo char) ~0x41  0xBE ~01000001 2  10111110 2 ~0x00  0xFF ~00000000 2  11111111 2 0x69 & 0x55  0x41 01101001 2 & 01010101 2  1000001 2 0x69 | 0x55  0x7D 01101001 2 | 01010101 2  01111101 2

13 www.microse.cic.ipn.mx 13 Contraste: Operaciones lógicas en C  Contraste para operadores lógicos &&, ||, !  El 0 se ve como “falso”  Cualquier cosa no cero es “verdadero”  Siempre regresa 0 ó 1  Terminación temprana  Ejemplos !0x41  0x00 !0x00  0x01 !!0x41  0x01 0x69 && 0x55  0x01 0x69 || 0x55  0x01 p && *p (evita el acceso a apuntador nulo)

14 www.microse.cic.ipn.mx 14 Desplazamiento de bits  Desplazamiento a la izquierda x << y Desplaza un vector x de bits y posiciones a la izquierda  Elimina los bits extras de la izquierda  Llena con 0’s a la derecha  Desplazamiento a la derecha x >> y Desplaza un vector x de bits y posiciones a la derecha  Elimina los bits extras a la derecha Desplazamiento lógico  Llena con 0’s a la izquierda Desplazamiento aritmético  Replica el bit más significativo a la derecha  Es útil en la representación de enteros con complemento a dos 01100010 Argumento x 00010000<< 3 00011000 Log. >> 2 00011000 Aritm. >> 2 00010000 00011000 10100010 Argumento x 00010000<< 3 00101000 Log. >> 2 11101000 Aritm. >> 2 00010000 00101000 11101000 00010000 00101000 11101000

15 www.microse.cic.ipn.mx 15 Resumen  Algebra Booleana es la base de matemática computacional La forma básica codifica “falso” como 0 y “verdadero” como 1 Forma general como operaciones bit a bit en C  Buena para representación y manipulación de conjuntos


Descargar ppt "Www.microse.cic.ipn.mx 1 Arquitecturas de Computadoras Breve repaso al algebra booleana."

Presentaciones similares


Anuncios Google