Любое описание системы начинается с формулирования цели описания.
Цель описания поможет разграничить внешние структуры и внутренние.
Например, если для вас самоцель — программирования, то в описание достаточно включить
исполнитель (процессор); ресурсы, состояния которых он изменяет (флаги,регистры,стек,память,хард диск) и команды
для исполнителя.
Если Вы все же думаете пошире — то в описание надо включать заказчика, его цель, потребности, доступные для него ресурсы,
алгоритмы решения, структуры данных, сценарии разработки, тестирования, верификации, валидации,
изменения, обновления, отслеживания, короче по всему жизненному циклу.
Мы же все делаем ради какой-то цели, вот от этого и надо плясать.
AC>Данные это "оцифрованные" объекты мира(в контексте программирования).
Если опираться на 4Д онтологию (3д пространство и время), то данные это временные состояния (states)
конкретных физических (individual) объектов. Разные состояния — разная информация, то есть оцифровка реального мира.
А далее надо знать цель построения описания.
Если посмотреть на это все в общем, то структура описания будет как у матрешки — конструкция/функция = новая функция.
Физическая ячейка памяти/значение ячейки -> значение ячейки/смысл значения (переменная в алгоритме)
смысл значения (переменная в алгоритме)/количество чего-то(в предметной области).