Сборщик шины (Maker)
Входы (Inputs)
| Пин | Тип | Описание |
|---|---|---|
| Bit0 | bit | Бит 0 (младший, вес 1) |
| Bit1 | bit | Бит 1 (вес 2) |
| Bit2 | bit | Бит 2 (вес 4) |
| Bit3 | bit | Бит 3 (вес 8) |
| Bit4 | bit | Бит 4 (вес 16) |
| Bit5 | bit | Бит 5 (вес 32) |
| Bit6 | bit | Бит 6 (вес 64) |
| Bit7 | bit | Бит 7 (старший, вес 128) |
Выходы (Outputs)
| Пин | Тип | Описание |
|---|---|---|
| OUT | bus8 | 8-битное число |
Логика работы
Maker — собиратель: восемь отдельных проводков сворачиваются обратно в жгут. Если Splitter вскрывает байт, то Maker запечатывает его. Именно через него битовая логика возвращается в мир шин: что бы ты ни делал с отдельными битами, чтобы результат снова стал байтом, его нужно собрать.
Главное свойство: выход — это взвешенная сумма входов, OUT = Bit0 + Bit1×2 + Bit2×4 + … + Bit7×128. Подай единицы на Bit0, Bit2, Bit4 и Bit6 — получишь 1 + 4 + 16 + 64 = 85, то есть 01010101. Каждый бит вносит свой вклад по весу, а остальные просто прибавляют ноль.
Нюанс: порядок входов критичен. Входы подписаны весами, и Bit0 — всегда младший бит: перепутаешь его с Bit7 — вместо 85 получишь 170. Вместе со Splitter Maker образует мост: Splitter — байт в биты, Maker — биты в байт, и почти любая побитовая схема проходит через эту пару.
Примеры
| Bit7 | Bit6 | Bit5 | Bit4 | Bit3 | Bit2 | Bit1 | Bit0 | OUT (bin) | OUT (dec) |
|---|---|---|---|---|---|---|---|---|---|
| 0 | 1 | 0 | 1 | 0 | 1 | 0 | 1 | 01010101 | 85 |
| 1 | 0 | 1 | 0 | 1 | 0 | 1 | 0 | 10101010 | 170 |
| 0 | 0 | 0 | 0 | 1 | 1 | 1 | 1 | 00001111 | 15 |
| 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 11111111 | 255 |
Сравни первую и вторую строки: те же четыре единицы, но на других весах — и значение выросло вдвое. Позиция бита значит не меньше, чем сам бит.
Применение
На уровне 8 Maker замыкает сумматор: биты суммы, посчитанные цепочкой Full Adder, он собирает обратно в шину Sum. В процессоре без него тоже никуда: из кода операции и операнда собирается полный байт команды, из битов — новое значение счётчика команд, а управляющие сигналы декодера упаковываются в шину, чтобы их удобно было смотреть на LED8.
Конкретное правило: после любой побитовой схемы — AND, OR, XOR над отдельными битами, проверки флагов, чтения кнопок — результат возвращается в «байтовый» мир через Maker. Пока сигналы ходят по одиночным проводам, шинные компоненты (ADDER8, BusAND, RAM) их не видят; Maker переводит их на язык шин.
Смежные компоненты
Статьи по теме
Частые вопросы
Когда нужен Maker?
Чтобы собрать 8 отдельных однобитных сигналов в одну 8-битную шину.
Чем Maker отличается от Splitter?
Только направлением: Splitter превращает байт в восемь битов, Maker — восемь битов обратно в байт. Весовые позиции у обоих одинаковы: Bit0 — младший, Bit7 — старший.
Что будет, если оставить часть входов неподключёнными?
Неподключённый бит читается как 0, поэтому байт соберётся без вклада этих разрядов — число получится меньше ожидаемого. Проверяй, что все восемь входов поданны.