Изменить цвет монитора RGB, используя язык ассемблера MIPS - PullRequest
0 голосов
/ 12 сентября 2018

Я хотел создать проект на языке ассемблера.Я изучал MIPS, используя MARS на Windows.Все, что мы узнали, было о самом языке и обо всех текстовых и числовых программах для его понимания.Теперь я хочу использовать его для экспериментов, меняя цвет RGB моего монитора.Я не веду на это.Я попытался выполнить поиск, например, управление цветами или программирование VGA, но ничего не нашлось для языка ассемблера MIPS.Пожалуйста, руководство, что можно сделать, используя его и как?

1 Ответ

0 голосов
/ 12 сентября 2018

Прежде всего вы должны понять разницу между MARS и настоящим процессором MIPS:

Реальные процессоры MIPS

Настоящий процессор MIPS выполняет инструкции машинного кода (которые представлены инструкциями ассемблера).

Как только инструкция syscall вызвана, центральный процессор переходит в какое-то «особое» состояние и начинает выполнять код операционной системы. ОС также состоит из инструкций MIPS.

ОС обычно будет что-то делать в зависимости от значений, хранящихся в регистрах. Однако ОС также может быть записана таким образом, что она игнорирует значения в регистрах ...

Читая и записывая данные с или на «специальные» адреса (например, используя инструкцию lw), ОС может получить доступ к периферийным устройствам (таким как клавиатура, экран и т. Д.). Это зависит от аппаратного обеспечения, какое значение имеет специальный адрес.

MARS, SPIM, ...

Эти эмуляторы имитируют только инструкции машинного кода.

Когда вызывается инструкция syscall, эти симуляторы не запускают код операционной системы, который состоит из инструкций MIPS. Вместо этого эти эмуляторы будут выполнять некоторые действия на основе значений в регистрах.

Пример: * * тысяча двадцать-восемь

Некоторые симулятор может выводить значение в регистре a0 на экран, если регистр v0 содержит значение 1.

Поскольку ОС не существует, как правило, нет «специальных» адресов для доступа к периферийным устройствам (например, к дисплею) с использованием инструкций, подобных lw.

Эффект

В отличие от кода MIPS на реальном процессоре, вы не можете делать все, что можно сделать с компьютером, используя такой эмулятор.

Эти эмуляторы обычно написаны для тестирования программ MIPS для студентов, изучающих сборку MIPS. Они написаны не для того, чтобы программисты могли писать мощные программы.

Поэтому эти эмуляторы обычно не имеют очень мощных функций.

МОЖЕТ, ваш эмулятор разрешает цветной вывод; однако весьма вероятно, что ваш эмулятор не имеет этой функции ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...