В целях обучения я намереваюсь приступить к созданию эмулятора микроконтроллера 8051. Мне удобно программировать на C/C++/C#. Это не классный проект и т. Д., А инициатива обучения с моей стороны.Как сделать эмулятор 8051
Я нашел довольно много вопросов, обсуждая это. Тем не менее, я хотел разбить его немного на гранулированном уровне, чтобы я мог знать, в каких областях мне нужно сосредоточиться, прежде чем я начну писать код.
Мои первоначальные требования:
текстовый редактор (можно использовать управление EditBox), где пользователь может написать код сборки
Validate, если синтаксис является правильным
Есть небольшое окно который показывает значения регистра во время выполнения.
Когда пользователь запускает программу, инструкции должны быть шаг за шагом обновлять окна регистра.
Больше, чем элемент GUI, мне больше интересно узнать, как эмулировать микроконтроллер.
Я так понимаю, я могу дополнительно разбить его:
мне нужно иметь справочную таблицу для получения инструкций или какой-либо другой способ хранения доступные инструкции и проверки синтаксиса. Любые указатели, как реализовать это, пожалуйста, дайте мне знать.
Как эмулировать каждую инструкцию для 8051?
Для регистров я могу использовать un/signed integers на основе типа и обновлять таблицу.
Поскольку микроконтроллер имеет ограниченную оперативную память, как я могу проверить длину кода или, скорее, код, который выполняется в памяти, чтобы избежать переполнения буфера или других проблем.
Если есть какие-то проекты с открытым исходным кодом, которые подробно описывают, как эмулятор строится на земле, оценят.
@Kavitech Singh. Как ваш проект сейчас? –