Насколько я понимаю, компьютер просто следует инструкциям. Итак, мой вопрос заключается в том, что когда вы включаете компьютер, как это точно, что инструкции загружаются в процессор? Разве вы не должны инструктировать компьютер о том, как загрузить инструкции? Это кажется парадоксом для меня. Я провел много исследований, но все еще застрял в одном и том же вопросе.
Итак, кто-то сказал:
«При перезагрузке процессора (например, после включения питания) ПК автоматически загружается с предопределенным адресом, который, как ожидается, будет местом расположения первой инструкции программы начальной загрузки».
Итак, снова мой вопрос. Как именно ПК "автоматически загружается с предопределенным адресом?"
Я не верю, что на этот вопрос можно ответить с точки зрения программного обеспечения. Потому что на самом деле мой вопрос в значительной степени спрашивает: «Какое-либо из аппаратных средств следует инструкциям программного обеспечения / прошивки?"
Кто-то еще задал очень похожий вопрос, в котором ответ только дал мне больше вопросов:https://stackoverflow.com/questions/696378/where-and-how-does-software-meet-hardware
Ответ был
«Процессор работает так называемым циклом выборки-декодирования-выполнения. Инструкции машинного кода являются довольно низкоуровневыми (то есть они не делают все это в одной инструкции). Например, добавление двух чисел будет иметь последовательность инструкций с семантикой, например:
- Загрузить указатель на адрес операнда 1 в регистр 1
- Загрузить значение, хранящееся по адресу, сохраненному в регистре 1, в регистр 2
- Загрузить указатель на адрес операнда 2 в регистр 1
- Загрузить значение, хранящееся по адресу в регистре 1, в регистр 3
- Добавьте содержимое регистра 2 и регистра 3 и сохраните его в регистре 4
- Загрузить указатель на пункт назначения в регистр 1 Сохраните содержимое регистра 4 по адресу, указанному в регистре 1
Итак, снова мой вопрос:
Как работает компьютер "Загрузить указатель на адрес операнда 1 в регистр 1"?