Skip to content

4917: Machine Code For Kids - The Card Game

https://punkx.org/4917/

Это карточная игра для обучения детей чтению и написанию машинного кода, использующая простой 4-битный компьютер с очень простым набором инструкций, двумя регистрами общего назначения и всего 16 ячейками адресуемой памяти. Чтобы сразу управлять ожиданиями: это, по сути, 54 крошечные программы, на написание которых я потратил 2 месяца работы. В руководстве есть примеры игры, но в основном я просто прохожу по коду вместе с дочерью во время обеда или в автобусе.

КАК ИГРАТЬ

ЗАПУСТИТЬ ОТЛАДЧИК


Карты содержат 54 небольшие программы, иллюстрирующие различные низкоуровневые концепции, такие как:

  1. Цикл выборка-выполнение (fetch-execute cycle)
  2. Аргументы инструкций
  3. Переменные
  4. Указатели
  5. Самоизменяющиеся программы
  6. Самоповреждающиеся программы
  7. Код с самоссылками
  8. Переполнения и недополнения целых чисел
  9. Управление потоком и адресуемая память
  10. Код — это данные
  11. Данные — это код
  12. Отладка

ACD

Купить сейчас: €5,00 EUR [ распродано ]


Игра основана на 4-битном компьютере Ричарда Бакленда.

Примечание: Когда вы играете с ребёнком, установите x64dbg и покажите ему настоящий машинный код программы во время её выполнения. Также очень полезно написать небольшую программу на C, которая делает примерно то же самое, что и конкретная карта, чтобы лучше проиллюстрировать концепцию.


Примеры карт (6 из 55):

Card 001Card 002Card 003Card 018Card 043Back Card


Известные ошибки

  • Карта 25: ошибка найдена пользователем @mbkulik, исправлена в pull/32. Карта печатала 0,12,10,8... вместо ожидаемых 14,12,10.... В текущей печатной версии ошибка осталась на карте 25, но цифровая версия карты исправлена, если вы хотите распечатать колоду самостоятельно.

Контакты: bystrovno@basealt.ru