Значення - лічильник - команда - Велика Енциклопедія Нафти та Газа

Значення – лічильник – команда

Значення лічильника команд у разі не збільшується. [1]

При обробці переривань значення лічильника команд зберігається у стіковій пам'яті, керування програмою переходить по команді JMP, що формується транслятором. [2]

У разі переривання у пам'яті зберігається лише значення лічильника команд ( 1C), й у цей лічильник записується нове значення. [3]

При виконанні команди ПОВЕРНЕННЯ З ПІДПРОГРАМИ мікропроцесор витягує зі стека значення лічильника команд , при якому відбувся вихід із програми попереднього рівня, і завантажує це значення в лічильник команд. Команді ПОПЕРЕДЖЕННЯ З ПІДПРОГРАМИ нічого не повідомляється щодо того, якого рівня вкладення виконується підпрограма і скільки разів відбувався виклик цієї підпрограми. [9]

При надходженні запиту на переривання лінією FIRQ в стек записується лише значення лічильника команд і розрядів регістру стану; при цьому зменшується час виконання програм обробки переривання, в яких не використовуються багато або взагалі регістри. Розряд Е (Повний стан у стеку) в регістрі СС, що зберігається, містить інформацію про те, чи вміст всіх регістрів було занесено в стек. [12]

Перервана команда повертається до того стану, з якого вона починалася, і значення лічильника команд призупиненого процесу (у стеку або системній комірці пам'яті) коригується так, щоб вказувати на цю команду. [13]

Команди виконуються в часі послідовно, в порядку, визначеному інформацією, що міститься в них, або відповідно до значення лічильника команд . У найбільш досконалих машинах допускається можливість поєднання виконання даної команди з вибіркою з наступної пам'яті, алереалізація цієї функції відбувається поза сферою діяльності програміста. [14]

У багатьох процесорах передбачені переривання, аналогічні перериванням по лінії FIRQ, коли прийому запиту на переривання в стек завантажується лише значення лічильника команд і розрядів стану. Вміст інших регістрів, стан яких може бути порушений, повинен зберігатися в стіковій пам'яті за допомогою команди PUSH на початку програми обробки переривання і відновлюватися за допомогою команди POP після її закінчення. [15]