Мультиплексор: стрелка для сигнала

Девятое вступление знакомит с цифровым переключателем: тумблер Sel решает, какой из двух сигналов — A или B — доедет до лампы.

Опыт: стрелочный перевод

Перед тобой стрелка на железной дороге: два сигнала A=1 и B=0, а тумблер Селектор (Sel) решает, какой из них доедет до лампы Q. Щёлкай Sel и следи за лампой: она повторяет один из двух сигналов — какой, решает Sel. Sel сам не светит: он не сигнал, а стрелка, переводящая путь.

Прогноз: чей сигнал до лампы

Проверь себя: A=0, B=1, Sel=0 — загорится ли Q? Нет: Sel=0 направляет к лампе канал A, а там 0. Единица на B не «проталкивается» сама — её путь перекрыт. Значение сигнала и номер выбранного канала — разные вещи, и именно их путают новички.

Правило выбора

Такой переключатель называется мультиплексор (MUX) — цифровой переключатель 2-в-1: Sel=0 → выход=A; Sel=1 → выход=B. Внутри два вентиля И и один ИЛИ: когда Sel=0, линия A открыта (A AND 1 = A), линия B закрыта (B AND 0 = 0); при Sel=1 — наоборот.

ABSelQ
0000
0010
0100
0111
1001
1010
1101
1111

Формула: Q = (A AND NOT Sel) OR (B AND Sel). NOT Sel — «открытость» линии A, Sel — открытость линии B, а ИЛИ собирает тот сигнал, чья линия открыта.

Зачем это нужно

На этом уровне ты соберёшь мультиплексор из вентилей — и получишь его как готовый чип MUX. Дальше чипы соединяются в каскады: BusMUX выбирает, чей результат операции показать (уровень 13, АЛУ). В процессоре мультиплексор решает, откуда взять адрес следующей команды — из счётчика команд или из перехода: тот же диспетчер на стрелке.

Пройти вступление в игре · Гайд уровня 9 · Все вступления