Программа компилируется в основную память или память программы при компиляции? - PullRequest
0 голосов
/ 29 декабря 2018

Предположим, есть код на С ++.Он компилируется в двоичный код во время компиляции. Мой вопрос - где мой компьютер хранит двоичный код в основной памяти (DRAM) в памяти программ (внутри ЦП).И я также хочу знать, может ли пользователь программы изменять содержимое памяти программы?

1 Ответ

0 голосов
/ 30 декабря 2018

Если у вас есть память, предназначенная для хранения X , вот куда вам нужно поместить X in.

Если процессор вашей эталонной архитектуры выбирает инструкции извыделенная программная память, где должны храниться инструкции, поскольку ЦП будет искать их только там.

Стоит сказать, что современные процессоры von Neumann , они имеют унифицированную программу ипамять данных ( внутренне нет, например, кеши разделены ), в то время как микроконтроллер часто Гарвард .

Я замаскирую преимущества каждого из них и просто скажу, что каждая комбинация атрибутов существует: у вас может быть центральный процессор, где память программы имеет значение RO и запрограммирована на заводе, где она программируется через внешний интерфейсгде он не может быть прочитан самой программой, где он может быть и где он может быть записан самой программой.

...