Hacker News Digest

06 августа 2025 г. в 15:17 • nicholas.carlini.com • ⭐ 75 • 💬 11

OriginalHN

#conways-game-of-life#turing-machine#assembly-language#computer-architecture#registers#alu#program-counter

A Simple CPU on the Game of Life (2021)

Схема простого процессора в «Жизни» — часть 4

Строим первый настоящий компьютер: 2-конвейерную машину неограниченных регистров (URM). Она факторизует 15 за несколько минут.

Что такое URM

  • Теория: бесконечное число регистров с неограниченными целыми.
  • Практика: 16 регистров по 4 бита.
  • Инструкции:
    1. INC Rx — увеличить.
    2. DEC Rx — уменьшить.
    3. JNZ Rx, Addr — переход, если не ноль.

Этого достаточно для полной Тьюринговой машины. Например, сложение:

ADD:
  jnz R1, END
  dec R1
  inc R2
  jmp ADD
END:

Архитектура

  • Верхний левый угол: тактовый генератор.
  • Рядом: регистровый файл (16×4 бит) — вся RAM.
  • Справа: АЛУ, умеет только инкремент.
  • Ниже: счётчик команд (PC) и ПЗУ на 128 4-битовых команд.
  • Слева от ПЗУ: конвейерные триггеры для одновременного чтения и исполнения.
  • Край справа: четыре семисегментных дисплея для вывода.

Особенности «Жизни»

В реальном железе минимизируют транзисторы; в «Жизни» главное — минимизировать площадь и задержку клеток.