파이썬을 통해서 논리게이트를 구현하는 방법을 살펴보도록 하겠습니다.
해당 포스팅은 퍼셉트론을 구현하기 위한 것이 아닌, 단순 논리회로를 구성하는 방법에 대한 코드입니다.
논리게이트에 대한 이해가 있으시다면, 코드 구현은 크게 어렵지 않으니, 아래 코드를 참고하시면 되겠습니다.
1. AND Gate
def AND (a, b):
if a == 1 and b == 1:
return True
else:
return False
# main function
if __name__=='__main__':
print(AND(0,0))
print(AND(1,0))
print(AND(0,1))
print(AND(1,1))
2. OR Gate
def OR(a, b):
if a == 1:
return True
elif b == 1:
return True
else:
return False
# main function
if __name__=='__main__':
print(OR(0,0))
print(OR(1,0))
print(OR(0,1))
print(OR(1,1))
3. NOT Gate
def NOT(a):
if(a == 0):
return True
elif(a == 1):
return False
# main function
if __name__=='__main__':
print(NOT(0))
print(NOT(1))
4. NAND Gate
def NAND (a, b):
if a == 1 and b == 1:
return False
else:
return True
# main function
if __name__=='__main__':
print(NAND(0,0))
print(NAND(1,0))
print(NAND(0,1))
print(NAND(1,1))
5. NOR Gate
def NOR(a, b):
if(a == 0) and (b == 0):
return True
elif(a == 0) and (b == 1):
return False
elif(a == 1) and (b == 0):
return False
elif(a == 1) and (b == 1):
return False
# main function
if __name__=='__main__':
print(NOR(0,0))
print(NOR(1,0))
print(NOR(0,1))
print(NOR(1,1))
6. XOR Gate
def XOR (a, b):
if a != b:
return True
else:
return False
# main function
if __name__=='__main__':
print(XOR(0,0))
print(XOR(1,0))
print(XOR(0,1))
print(XOR(1,1))
7. XNOR GATE
def XNOR(a,b):
if(a == b):
return True
else:
return False
# main function
if __name__=='__main__':
print(XNOR(0,0))
print(XNOR(1,0))
print(XNOR(0,1))
print(XNOR(1,1))
'Data Analysis > 파이썬' 카테고리의 다른 글
[파이썬] python sorting (bubble, selection, insertion, shell, qucik sort) (0) | 2022.05.24 |
---|---|
[파이썬] Python 튜플(tuple)과 리스트(List) 의 차이 (0) | 2022.04.26 |