Реферат: Структурне програмування на асемблері

... (Ці команди будуть повторюватися 10 разів)

...

$ENDDO LOOP

Тут команда LOOP зменшує вміст регістра СХ на одиницю і повертає керування оператору $DO, якщо значення регістра СХ відмінне від нуля. Еквівалентом на мові Бейсік є оператори

FOR X=10 TO 1 STEP -1

...

...

NEXT X

СТРУКТУРА DO WHILE

Ця структура має загальний вигляд

$DO

$LEAVE умова

A

$ENDDO


де умова -- це умова завершення циклу. На мал. 2, б показана блок-схема структури DO WHILE.

Звернемо увагу на те, що в структурі DO WHILE умова перевіряється перед командами циклу, а не після них, як це відбувається в структурі DO UNTIL. Отже, якщо початкова умова істинна, то мікропроцесор обходить цикл, не виконавши його ні разу. Структура DO WHILE ніби сигналізує мікропроцесору: "Виконуй наступні команди, поки умова не виконується".

Потрібно користуватися структурою DO WHILE для обходу циклу, організованого за допомогою лічильника в регістрі СХ, якщо регістр СХ вже містить нуль, наприклад

$DO

$LEAVE CXZ

...

...

$ENDDO LOOP

СТРУКТУРА DO COMPLEX

Структура DO COMPLEX схожа на структуру DO WHILE, але дозволяє Вам виконати деякі дії як до перевірки в операторі LEAVE, так і після її. Тим самим забезпечується вихід із середини циклу. Ця структура має такий загальний вигляд:

$DO

А

$LEAVE умова

У

$ENDDO

Як і раніше, умова являє собою умову завершення циклу. На мал.2, в показана блок-схема структури DO COMPLEX.

Тут блок команд А підготовляє умову, а блок команд В виконує те, що потрібно зробити, якщо умова не виконується. Наприклад, для зупинки програми доти, поки користувач не введе правильний пароль, можна скористатися таким прийомом:

К-во Просмотров: 491
Бесплатно скачать Реферат: Структурне програмування на асемблері