Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Лічильник команд



Часто використовуються і інші назви, такі як вказівник інструкцій, програмний лічильник, або PROGRAM COUNTER.

Називається даний пристрій лічильником, але насправді - це регістр, який використовується як лічильник.

Так як програма – це послідовність команд, які зберігаються в пам¢яті мікро-ЕОМ та призначені для того, щоб інструктувати машину як вирішувати поставлену задачу, для коректного виконання цієї програми команди повинні поступати в строго визначеному порядку. Лічильник команд (ЛК) призначений для вказування адреси наступної команди, що вибирається із пам¢яті. Часто ЛК володіє набагато більшою кількістю розрядів ніж довжина слова даних МП. Наприклад, у більшості 8-ми розрядних МП число розрядів ЛК - 16, що дає змогу записувати дані у кількості 64 К.

Програма може починатися та закінчуватися в любому місці діапазону від 0 до 65535. Щоб звернутися до будь-якої із цих адрес ЛК повинен володіти 16 двійковими розрядами. Де б не розміщувались команди програми, вони слідують одна за одною в строго визначеному порядку, тому коли програма починає виконуватися, першим вмістом ЛК є початкова адреса програми (адреса першої команди). Потім в лічильник команд добавляється по 1 (2 або 3), в залежності від довжини команди в байтах, тобто вибираються адреси наступних команд.

Можливий випадок, коли наступна команда зберігається не в наступній чарунці, а в іншому місці; в цьому випадку ЛК перезавантажується адресою наступної команди (перезавантажується початковою адресою підпрограми) та отримує приріст до цієї адреси поки не зустрінеться команда повернення в головну програму.

Лічильник команд з¢єднаний з внутрішньою ШД МП. Теоретично цей лічильник може отримувати будь-які дані про адреси програми із будь-якого блоку МП, що під¢єднаний до ВШД, але на практиці дані поступають в ЛК із пам¢яті мікро-ЕОМ.

На відміну від акумулятора ЛК не може виконувати операції різного типу. Набір команд, що його використовують досить обмежений в порівнянні з акумулятором.

Адреса області пам¢яті, що містить першу команду програми пересилається із ЛК в регістр адреси пам¢яті (РАП), після чого вміст обох регістрів стає однаковим, відповідно, довжина РАП – 16 розрядів n-розрядного процесора). Адреса місця розташування першої команди передається по адресній шині до схем керування пам¢ятю, в результаті чого зчитується вміст області пам¢яті з вказаною адресою. Вміст цієї чарунки є ніщо інше ніж команда, яка поступає в регістр команд (РК), мова про який буде йти далі. Після отримання команди із пам¢яті МП автоматично дає приріст вмісту ЛК. Цей приріст ЛК отримує тоді, коли МП починає виконувати команду тільки що отриману із пам¢яті. Починаючи із цього моменту ЛК вказує адресу наступної команди, яка зберігається на весь період виконання поточної команди.





Дата публикования: 2014-11-28; Прочитано: 423 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...