Рубрики
Без рубрики

Логические ворота в Python – для начинающих

Эта статья всесторонне охватывает различные логические ворота в Python. Логические ворота являются наиболее основными материалами для реализации цифровых компонентов. Использование

Автор оригинала: Pankaj Kumar.

Эта статья всесторонне охватывает различные логические ворота в Python. Логические ворота являются наиболее основными материалами для реализации цифровых компонентов. Использование логических ворот варьируется от компьютерной архитектуры в поле электроники.

Эти ворота имеют дело с двоичными значениями, либо 0, либо 1. Различные типы ворот занимают разные номера ввода, но все они обеспечивают один выход. Эти логические ворота при комбинированной форме сложные цепи.

Давайте попробуем реализовать логические ворота на языке Python.

Основные логические ворота в Python

Существует три самых основных логических ворота в разработке цепей.

Или ворота

Эти ворота обеспечивают вывод как 1, если либо из входов 1. Это похоже на «Дополнение» Операция относительно двоичных чисел.

Таблица, отображаемая выше, это таблица правды. Он используется для демонстрации всех комбинаций значений для входов к 'Или' ворота. Эта цифра рядом с таблицей обозначает 'Или' ворота.

Реализация в Python:

# Function to simulate OR Gate
def OR(A, B):
	return A | B	

print("Output of 0 OR 0 is", OR(0, 0))
print("Output of 0 OR 1 is", OR(0, 1))
print("Output of 1 OR 0 is", OR(1, 0))
print("Output of 1 OR 1 is", OR(1, 1))	

Мы получаем следующий вывод:

Output of 0 OR 0 is 0
Output of 0 OR 1 is 1
Output of 1 OR 0 is 1
Output of 1 OR 1 is 1

И ворота

Эти ворота обеспечивают выход 0, если либо из входов равен 0. Эта операция рассматривается как умножение в двоичных числах.

В таблице правды мы можем видеть, что всякий раз, когда один из двух входов равен 0, вывод тоже 0. Наряду с рисунком обозначает 'И' ворота.

Реализация в Python:

# Function to simulate AND Gate
def AND(A, B):
	return A & B	

print("Output of 0 AND 0 is", AND(0, 0))
print("Output of 0 AND 1 is", AND(0, 1))
print("Output of 1 AND 0 is", AND(1, 0))
print("Output of 1 AND 1 is", AND(1, 1))	

Выход:

Output of 0 AND 0 is 0
Output of 0 AND 1 is 0
Output of 1 AND 0 is 0
Output of 1 AND 1 is 1

Не ворота

Эти ворота обеспечивают отрицание ввода. Эти ворота поддерживают только один вход.

Приведенная выше таблица ясно отображает изменение битов. Прилегающая фигура представляет «Не» ворота.

Python Реализация двоичных не ворот:

# Function to simulate NOT Gate
def NOT(A):
	return ~A+2	

print("Output of NOT 0 is", NOT(0))
print("Output of NOT 1 is", NOT(1))

Выход:

Output of NOT 0 is 1
Output of NOT 1 is 0

Примечание: «Не ()» Функция предоставляет правильные результаты для битовых значений 0 и 1.

Универсальные логические ворота в Python

Есть две универсальные логические ворота, «NAND» и «Ни» Отказ Они называются универсальными, потому что любая булева схема может быть реализована, используя только эти ворота.

Ворота Nand

«NAND» Ворота – это сочетание 'И' ворота следуют «Не» ворота. Напротив 'И' Ворота, он обеспечивает вывод 0 только тогда, когда обе биты устанавливаются, в противном случае 1.

В Python, «NAND ()» Функция может быть реализована с помощью 'И ()' и 'Или ()' Функции, созданные ранее.

# Function to simulate AND Gate
def AND(A, B):
	return A & B;	

# Function to simulate NOT Gate
def NOT(A):
	return ~A+2	

# Function to simulate NAND Gate
def NAND(A, B):
	return NOT(AND(A, B))


print("Output of 0 NAND 0 is", NAND(0, 0))
print("Output of 0 NAND 1 is", NAND(0, 1))
print("Output of 1 NAND 0 is", NAND(1, 0))
print("Output of 1 NAND 1 is", NAND(1, 1))	

Мы получаем следующий вывод:

Output of 0 NAND 0 is 1
Output of 0 NAND 1 is 1
Output of 1 NAND 0 is 1
Output of 1 NAND 1 is 0

Ни ворота

«Ни» Ворота – это результат каскадирования 'Или' ворота следуют «Не» ворота. Вопреки 'Или' Ворота, он обеспечивает выход 1, когда все входы 0.

Похоже на «NAND ()» Функция, «Ни ()» Может быть реализован с использованием уже созданных функций.

# Function to calculate OR Gate
def OR(A, B):
	return A | B;	

# Function to simulate NOT Gate
def NOT(A):
	return ~A+2	

# Function to simulate NOR Gate
def NOR(A, B):
	return NOT(OR(A, B))


print("Output of 0 NOR 0 is", NOR(0, 0))
print("Output of 0 NOR 1 is", NOR(0, 1))
print("Output of 1 NOR 0 is", NOR(1, 0))
print("Output of 1 NOR 1 is", NOR(1, 1))	

Выход:

Output of 0 NOR 0 is 1
Output of 0 NOR 1 is 0
Output of 1 NOR 0 is 0
Output of 1 NOR 1 is 0

Эксклюзивные логические ворота в Python

Существует два специальных типа логических ворот, XOR и XNOR, которые сосредоточены на количестве входов 0 или 1, а не отдельных значений.

Хор ворот

Аббревиатура для эксклюзивных или, «Хор» Ворота обеспечивает выход 1, когда количество 1S на входе нечетным.

Мы можем четко видеть вывод для ворот XOR в таблице выше. Он обеспечивает выход 1, когда количество на входе составляет 1, это нечетное.

Мы можем реализовать «Хор ()» Функция легко в Python by:

# Function to simulate XOR Gate
def XOR(A, B):
	return A ^ B

print("Output of 0 XOR 0 is", XOR(0, 0))
print("Output of 0 XOR 1 is", XOR(0, 1))
print("Output of 1 XOR 0 is", XOR(1, 0))
print("Output of 1 XOR 1 is", XOR(1, 1))	

Мы получаем следующий вывод:

Output of 0 XOR 0 is 0
Output of 0 XOR 1 is 1
Output of 1 XOR 0 is 1
Output of 1 XOR 1 is 0

Ворота Xnor

Это формируется в результате комбинации «Хор» и «Не» ворота. Напротив «Хор» , он обеспечивает выход 1, когда количество 1s на входе даже.

«Xnor () ' Функция может быть реализована с помощью «Хор ()» и «Не ()» Функции в Python.

# Function to simulate XOR Gate
def XOR(A, B):
	return A ^ B

# Function to simulate NOT Gate
def NOT(A):
	return ~A+2	

# Function to simulate XNOR Gate
def XNOR(A, B):
	return NOT(XOR(A, B))


print("Output of 0 XNOR 0 is", XNOR(0, 0))
print("Output of 0 XNOR 1 is", XNOR(0, 1))
print("Output of 1 XNOR 0 is", XNOR(1, 0))
print("Output of 1 XNOR 1 is", XNOR(1, 1))	

Выход:

Output of 0 XNOR 0 is 1
Output of 0 XNOR 1 is 0
Output of 1 XNOR 0 is 0
Output of 1 XNOR 1 is 1

Заключение

Реализация логических ворот в Python очень легко. Как программист, вам нужно знать о логических воротах и операторах в Python. Мы надеемся, что эта статья просветила читателя о основах и выполнении логических ворот в Python.

Для дальнейшего чтения проверьте наши другие учебники Python.