Как работает эмулятор ris c -v c? - PullRequest
0 голосов
/ 09 мая 2020

Я использую виртуальную машину Linux на базе x86. и я выполняю кросс-компиляцию (цель: RIS C -V) с помощью компилятора и эмулятора RIS C -V. Я хочу знать, как эмулятор RIS C -V (C файл) эмулирует инструкции RIS C -V без реального процессора RIS C -V.

1 Ответ

0 голосов
/ 12 мая 2020

Симулятор ЦП - это программа, которая принимает на вход двоичный исполняемый файл и выполняет те же шаги для его выполнения, что и собственный ЦП. В случае RIS C -V он выбирает память, на которую указывает счетчик программ (P C), и декодирует 32-битное слово в соответствии со спецификацией набора команд RIS C -V. Затем, в зависимости от того, какая это инструкция (операция загрузки, сохранения, регистрации), он выполняет эту операцию в программном обеспечении, затем увеличивает P C (или устанавливает его, если инструкция является переходом или возвратом) и выбирает следующую инструкцию. выполнить. Регистры и память в моделируемом ЦП - это просто массивы 32-битных (или 64-битных для RIS C -V 64) целых чисел в симуляторе.

Если вам интересно, как работает ЦП , написание симулятора basi c для одного - забавное (и поучительное!) упражнение. Вы можете написать симулятор ЦП на любом языке программирования.

...