Программа Python для реализации мультиплексора 2:4
Предварительное условие: мультиплексоры в цифровой логике.
Введение :
Это комбинационная схема, которая имеет много входов данных и один выход в зависимости от управления или выбора входов. Мультиплексоры также известны как «селектор данных n, параллельный последовательный преобразователь, схема «многие в одну», универсальная логическая схема». Мультиплексоры в основном используются для увеличения объема данных, которые могут быть отправлены по сети в течение определенного времени и полосы пропускания.
Здесь, если у нас есть четыре входа, как упоминалось выше, у нас будет log 4 (основание 2) = 2 входных строки. поэтому для каждого уникального значения выбора мультиплексора S0 и S1 мы выберем входную линию и дадим ее в качестве вывода. Приведенная ниже таблица истинности объясняет выбор входного порта.
Обычно десятичное значение S0S1 дает порт выбора. нам даны s[] (селекторы) и I[](входы), наша задача состоит в том, чтобы выбрать входной порт на основе селекторов и напечатать значение в этом порту в качестве вывода.
Для преобразования двоичного кода в десятичный см. — Преобразование двоичного кода в десятичный.
Пример -
Input : I[ ]={0,1,1,1]
s[ ]={1,0}Output : 1
Explanation : Here s[0]=1,s[1]=0, so its decimal value will be (1*(2**1))+(0*(2**0))=2. so we have to output the value given at pin I2. That is I[2]=1 so the output is 1.
Input : I[ ]={1,1,1,0}
s[ ]={1,1}Output : 0
Explanation : Here s[0]=1,s[1]=1, so its decimal value will be (1*(2**1))+(1*(2**0))=3. so we have to output the value given at input I3. That is I[3]=0 so the output is 0.
Input : I[ ]={0,1,1,0}
s[ ]={0,1}Output : 1
Explanation : Here s[0]=0,s[1]=1, so its decimal value will be (0*(2**1))+(1*(2**0))=1. so we have to output the value given at input I1. That is I[1]=1 so the output is 1.
Подход :
- Здесь мы должны преобразовать селекторы в десятичное значение.
- поэтому, чтобы преобразовать строки селектора в десятичное число, мы должны умножить (s[0]*(2**1))+(s[1]*(2**0)).
- Получение этого индекса десятичного значения из входного массива I[] дает результат.