Я знаю общую теорию, но я не могу вписаться в детали.
Я знаю, что программа находится во вторичной памяти компьютера. После запуска программы она полностью копируется в ОЗУ. Затем процессор извлекает несколько инструкций (это зависит от размера шины) за раз, помещает их в регистры и выполняет их.
Я также знаю, что компьютерная программа использует два типа памяти: стек и кучу, которые также являются частью первичной памяти компьютера. Стек используется для нединамической памяти, а куча для динамической памяти (например, все, что связано с оператором new
в С++)
Я не могу понять, как эти две вещи соединяются. В какой момент используется стек для выполнения инструкций? Инструкции переходят из ОЗУ в стек, в регистры?