Las puertas lógicas son bloques de construcción elementales para cualquier circuito digital. Toma una o dos entradas y produce una salida basada en esas entradas. Las salidas pueden ser altas (1) o bajas (0). Las puertas lógicas se implementan mediante diodos o transistores. También se puede construir usando tubos de vacío, elementos electromagnéticos como óptica, moléculas, etc. En una computadora, la mayoría de los circuitos electrónicos están compuestos por puertas lógicas. Las puertas lógicas se utilizan para circuitos que realizan cálculos, almacenamiento de datos o muestran programación orientada a objetos, especialmente el poder de la herencia.
Hay siete compuertas lógicas básicas definidas: compuerta AND, compuerta OR, compuerta NOT, compuerta NAND, compuerta NOR, compuerta XOR, una compuerta XNOR.
1. Puerta
AND La puerta AND da una salida de 1 si ambas entradas son 1, da 0 de lo contrario.
Python3
# Python3 program to illustrate # working of AND gate def AND (a, b): if a == 1 and b == 1: return True else: return False # Driver code if __name__=='__main__': print(AND(1, 1)) print("+---------------+----------------+") print(" | AND Truth Table | Result |") print(" A = False, B = False | A AND B =",AND(False,False)," | ") print(" A = False, B = True | A AND B =",AND(False,True)," | ") print(" A = True, B = False | A AND B =",AND(True,False)," | ") print(" A = True, B = True | A AND B =",AND(True,True)," | ")
Producción:
True +---------------+---------------- | AND Truth Table | Result | A = False, B = False | A AND B = False | A = False, B = True | A AND B = False | A = True, B = False | A AND B = False | A = True, B = True | A AND B = True |
2. Puerta
NAND La puerta NAND (AND negado) da una salida de 0 si ambas entradas son 1, da 1 de lo contrario.
Python3
# Python3 program to illustrate # working of NAND gate def NAND (a, b): if a == 1 and b == 1: return False else: return True # Driver code if __name__=='__main__': print(NAND(1, 0)) print("+---------------+----------------+") print(" | NAND Truth Table | Result |") print(" A = False, B = False | A AND B =",NAND(False,False)," | ") print(" A = False, B = True | A AND B =",NAND(False,True)," | ") print(" A = True, B = False | A AND B =",NAND(True,False)," | ") print(" A = True, B = True | A AND B =",NAND(True,True)," | ")
Producción:
True +---------------+---------------- | NAND Truth Table | Result | A = False, B = False | A AND B = True | A = False, B = True | A AND B = True | A = True, B = False | A AND B = True | A = True, B = True | A AND B = False |
3. Puerta
OR La puerta OR da una salida de 1 si alguna de las dos entradas es 1, da 0 de lo contrario.
Python3
# Python3 program to illustrate # working of OR gate def OR(a, b): if a == 1 or b ==1: return True else: return False # Driver code if __name__=='__main__': print(OR(0, 0)) print("+---------------+----------------+") print(" | OR Truth Table | Result |") print(" A = False, B = False | A OR B =",OR(False,False)," | ") print(" A = False, B = True | A OR B =",OR(False,True)," | ") print(" A = True, B = False | A OR B =",OR(True,False)," | ") print(" A = True, B = True | A OR B =",OR(True,True)," | ")
Producción:
False +---------------+----------------+ | OR Truth Table | Result | A = False, B = False | A OR B = False | A = False, B = True | A OR B = True | A = True, B = False | A OR B = True | A = True, B = True | A OR B = True |
4. Puerta
XOR La puerta XOR da una salida de 1 si alguna de las entradas es diferente, da 0 si son iguales.
Python3
# Python3 program to illustrate # working of Xor gate def XOR (a, b): if a != b: return 1 else: return 0 # Driver code if __name__=='__main__': print(XOR(5, 5)) print("+---------------+----------------+") print(" | XOR Truth Table | Result |") print(" A = False, B = False | A XOR B =",XOR(False,False)," | ") print(" A = False, B = True | A XOR B =",XOR(False,True)," | ") print(" A = True, B = False | A XOR B =",XOR(True,False)," | ") print(" A = True, B = True | A XOR B =",XOR(True,True)," | ")
Producción:
0 +---------------+----------------+ | XOR Truth Table | Result | A = False, B = False | A XOR B = 0 | A = False, B = True | A XOR B = 1 | A = True, B = False | A XOR B = 1 | A = True, B = True | A XOR B = 0 |
5. Puerta NOT
Actúa como inversor. Solo necesita una entrada. Si la entrada se da como 1, invertirá el resultado como 0 y viceversa.
Python3
# Python3 program to illustrate # working of Not gate def NOT(a): return not a # Driver code if __name__=='__main__': print(NOT(0)) print("+---------------+----------------+") print(" | NOT Truth Table | Result |") print(" A = False | A NOT =",NOT(False)," | ") print(" A = True, | A NOT =",NOT(True)," | ")
Producción:
1 +---------------+----------------+ | NOT Truth Table | Result | A = False | A NOT = 1 | A = True, | A NOT = 0 |
6. Puerta
NOR La puerta NOR (O negado) da una salida de 1 si ambas entradas son 0, da 0 de lo contrario.
Python3
# Python3 program to illustrate # working of NOR gate def NOR(a, b): if(a == 0) and (b == 0): return 1 elif(a == 0) and (b == 1): return 0 elif(a == 1) and (b == 0): return 0 elif(a == 1) and (b == 1): return 0 # Driver code if __name__=='__main__': print(NOR(0, 0)) print("+---------------+----------------+") print(" | NOR Truth Table | Result |") print(" A = False, B = False | A NOR B =",NOR(False,False)," | ") print(" A = False, B = True | A NOR B =",NOR(False,True)," | ") print(" A = True, B = False | A NOR B =",NOR(True,False)," | ") print(" A = True, B = True | A NOR B =",NOR(True,True)," | ")
Producción:
1 +---------------+----------------+ | NOR Truth Table | Result | A = False, B = False | A NOR B = 1 | A = False, B = True | A NOR B = 0 | A = True, B = False | A NOR B = 0 | A = True, B = True | A NOR B = 0 |
7. Puerta
XNOR La puerta XNOR (XOR negado) da una salida de 1 si ambas entradas son iguales y 0 si ambas son diferentes.
Python3
# Python3 program to illustrate # working of Not gate def XNOR(a,b): if(a == b): return 1 else: return 0 # Driver code if __name__=='__main__': print(XNOR(1,1)) print("+---------------+----------------+") print(" | XNOR Truth Table | Result |") print(" A = False, B = False | A XNOR B =",XNOR(False,False)," | ") print(" A = False, B = True | A XNOR B =",XNOR(False,True)," | ") print(" A = True, B = False | A XNOR B =",XNOR(True,False)," | ") print(" A = True, B = True | A XNOR B =",XNOR(True,True)," | ")
Producción:
1 +---------------+----------------+ | XNOR Truth Table | Result | A = False, B = False | A XNOR B = 1 | A = False, B = True | A XNOR B = 0 | A = True, B = False | A XNOR B = 0 | A = True, B = True | A XNOR B = 1 |
Publicación traducida automáticamente
Artículo escrito por aishwarya.27 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA