Регистр стека

Стековый регистр Определение стекового регистра Стековый регистр используется для отслеживания стека вызовов в процессоре.  В архитектуре с аккумулятором может быть […]

Стековый регистр

  • Определение стекового регистра

    • Стековый регистр используется для отслеживания стека вызовов в процессоре. 
    • В архитектуре с аккумулятором может быть выделенный регистр стека. 
    • В многорегистровых архитектурах может быть зарезервированный регистр или регистр, используемый для команд вызова и возврата. 
  • История и особенности стековых регистров

    • До конца 1960-х годов рекурсия не поддерживалась без значительных усилий со стороны программиста. 
    • Некоторые проекты, например Data General Eclipse, использовали аппаратный адрес памяти вместо стекового регистра. 
    • В ранних процессорах, таких как PDP-8 и HP 2100, стековые регистры отсутствовали, и подпрограммы сохраняли текущее местоположение в адресе перехода. 
  • Работа стековых регистров в x86

    • В 8086 стек вызовов хранится в регистре SP, а сегмент стека — в SS. 
    • PUSH и POP используются для помещения и извлечения значений из стека. 
    • Пример работы стековых регистров иллюстрирует, как они используются для хранения и восстановления значений. 
  • Стековый движок в современных процессорах

    • Более новые процессоры содержат стековый движок для оптимизации операций со стеком. 
    • Pentium M был первым процессором с стековым движком, который разделял указатель стека на ESPO и ESPd. 
    • В более поздних процессорах Intel ESPO был расширен до 64 бит, но микрооперации синхронизации остались. 
    • Аналогичный стековый движок используется в микроархитектуре AMD K8, а в Bulldozer микрооперации синхронизации были устранены, но внутренняя структура неизвестна. 

Полный текст статьи:

Регистр стека — Википедия

Оставьте комментарий

Прокрутить вверх