Емуляция процессора, как сделать ОП?

Делаю что-то вроде эмулятора, процессора, или что сам не знаю.
1) Есть регистры, это переменные типа char, а значит 256 значений, а значит 8 битный процессор?
2) Есть ОП, ну тут так-же одна ячейка это байт, как мне кажется... Массив char-ов 65535, так вот как с помощю 8 битных регистров адресовать всю ОП, Zilog Z80 — 8-битный процессор аддресует 16 битную шину... Как ведь нету 16 битных регистров, mov al,[ax] не получиться... Не могу понять.
3) Может подскажете ключевые аспекты создание эмулятора процессора, ну что-то в том роде, моя идея такова, что есть кучка команд они в типе данных char, допустим команда 01 это movrr, это rr это переместить из регистра данные в другой регистр так-же есть movrn переместить в регистр число константу и так далее.
Как реализовать разные там порты итд. Все в тому духе что знаете
  • Вопрос задан
  • 98 просмотров
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Zilog Z80 — 8-битный процессор аддресует 16 битную шину... Как ведь нету 16 битных регистров, mov al,[ax] не получиться... Не могу понять.

Привет, в z80 8-битные регистры b, c, d, e, h и l могут использоваться как 16-битные пары bc, de и hl. Кроме того, есть регистры sp, IX и IY, 16-битные.

Может подскажете ключевые аспекты создание эмулятора процессора, ну что-то в том роде, моя идея такова, что есть кучка команд они в типе данных char, допустим команда 01 это movrr, это rr это переместить из регистра данные в другой регистр так-же есть movrn переместить в регистр число константу и так далее.
Как реализовать разные там порты итд. Все в тому духе что знаете


Если Z80 для тебя ок, вот порт QEMU для z80.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы