37012

Команди виклику підпрограм і повернення з підпрограм

Лабораторная работа

Информатика, кибернетика и программирование

Коли здійснюється звернення до підпрограми то на початку виконання вона реалізує запамятовування поточного значення лічильника команд точка повернення. Коли виконання підпрограми закінчується то за допомогою команди повернення мікропроцесору вказується що початкове значення лічильника команд потрібно взяти з памяті. Для запамятовування точки повернення використовується стек куди записується адреса команди слідуюча за адресою команди виклику підпрограми. Безумовний виклик підпрограми При виконанні даної команди виклик підпрограми...

Украинкский

2013-09-23

194 KB

10 чел.

Лабораторна робота №5

Команди виклику підпрограм і повернення з підпрограм

За допомогою команд переходів послідовність виконання команд програми може бути змінена, шляхом переходу до нової послідовності. Однак команда переходу сама по собі не дозволяє повернутись в те місце звідки був здійснений перехід. Це можна легко здійснити за допомогою команд виклику підпрограм. Підпрограма представляє собою фрагмент програми, звернення до якої може бути здійснено в любій точці головної програми. Коли здійснюється звернення до підпрограми, то на початку виконання вона реалізує запам’ятовування поточного значення лічильника команд (точка повернення). Коли виконання підпрограми закінчується, то за допомогою команди повернення мікропроцесору вказується, що початкове значення лічильника команд потрібно взяти з пам’яті. Для запам’ятовування точки повернення використовується стек, куди записується адреса команди слідуюча за адресою команди виклику підпрограми.

Команди даної групи не змінюють  вмісту регістра ознак.

  1.  Безумовний виклик підпрограми

При виконанні даної команди виклик підпрограми виконується в любому випадку. Команда займає 3 байти і виконується 5 машинних циклів.

  1.  Умовний виклик підпрограми

Перехід до підпрограми виконується тільки в тому випадку, якщо виконується умова, що провіряється.

При цьому

Якщо умова, що провіряється не виконується, то і не виконується перехід до підпрограми, а виконується слідуюча команда програми.

Значення розрядів ССС вибирається в залежності від умови, що провіряється.

  1.  Повернення з підпрограми безумовне

  1.  Повернення із підпрограми умовне.

 Якщо умова, що провіряється виконується, то    і виконується вихід з підпрограми в точку адреса якої знаходиться в стеці. Якщо умова не виконується, то повернення не здійснюється і виконується слідуюча команда підпрограми.

Значення розрядів ССС вибирається в залежності від умови, що провіряється.

При виконанні команд повернення з підпрограми МП дістає зі стеку значення програмного лічильника, при якому виник перехід із програми попереднього рівня і завантажує це значення в лічильник команд. Команді «повернення із підпрограми»  не   повідомляється якого рівня вкладення  виконується програма і скільки разів виникав виклик цієї підпрограми . Виконуючи цю команду, МП просто повертається до того значення програмного лічильника , яке було останнім завантажене у стек.

Завдання

 Використовуючи завдання відповідно до варіанту минулої ЛБ написати програму вирішення даного завдання з використанням підпрограм.


 

А также другие работы, которые могут Вас заинтересовать

7683. Призначення та класифікація нормативів праці 61.25 KB
  Призначення та класифікація нормативів праці. Під час нормування праці важливим завданням є забезпечення більш-менш рівної інтенсивності праці на різних за змістом та складністю роботах. Це досягається використанням єдиної методологічної (зага...
7684. Компенсаторно-приспособительные процессы 50 KB
  Компенсаторно-приспособительные процессы Определение. Приспособление (адаптация) - это процессы, с помощью которых организм реагирует на изменения условий жизни. Компенсация - это вид приспособления (адаптации) для восстановления нар...
7685. Опухоли системы крови (гемобластозы) 53.5 KB
  Опухоли системы крови (гемобластозы) Гемобластозы - опухолевые процессы кроветворной ткани. Разделяют две группы гемобластозов: лейкозы (лейкемия) - системные опухолевые заболевания кроветворной ткани. лимфомы - регионарны...
7686. Онкология. Теоретические особенности 49 KB
  Онкология Опухоль (tumor, neoplasma, blastoma) - патологический процесс, характеризующийся бесконтрольным размножением и ростом клеток, что связано с изменениями в генетическом аппарате клеток. Свойства опухоли: автономный рост опухоли...
7687. Эпителиальные органоспецифические опухоли 41 KB
  Эпителиальные органоспецифические опухоли Определение. Органоспецифические опухоли - это большая группа доброкачественных и злокачественных опухолей, которые развиваются только в определенном органе или происходят из клеток определенного органа...
7688. Мезенхимальные опухоли 49 KB
  Мезенхимальные опухоли Мезенхимальные опухоли происходят из тканей мезенхимального происхождения. Это группа включает опухоли из фиброзной, жировой, мышечной, синовиальной, мезотелиальной, костной, хрящевой тканей, а также опухоли сосудов (кро...
7689. Раки важнейших локализаций 91 KB
  Раки важнейших локализаций Актуальность темы Ежегодно число новых случаев выявления рака во всех странах мира составляет около 6 млн. человек. Уровни заболеваемости и смертности от злокачественных опухолей в разных странах и даже регионах этих стран...
7690. Акселерация и ретардация 35 KB
  Акселерация и ретардация. Акселерация (от лат. acceleration - ускорение) - это ускоренное физическое и отчасти психическое развитие в детском и подростковом возрасте...
7691. Предмет и задачи дидактики 35.11 KB
  ТЕМА: Предмет и задачи дидактики. План Общее понятие о дидактике. Возникновение и развитие теории обучения и образования. 1.Общее понятие о дидактике. Дидактика - раздел педагогической науки. Педагогика и дидактика находятся в соотн...