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

Блок – схема разветвления



//рисунок

Реализация алгоритма требует двух команд перехода, это связано с тем, что оперативная память линейна, и ветви алгоритма располагаются последовательно.

ОП

 
 
 
 
 
 
 
 
 
 

Общая часть 1

Команда условного перехода

Команда безусловного перехода
Ветвь 1

Общая часть 2
Ветвь 2

Имеют место алгоритмы в которых ветвь 2 отсутствует, тогда команда безусловного перехода не нужна.

Команда безусловного перехода - простейшая из команд передачи управления. Состоит из кода операции и адреса перехода.

Р А

Этапы выполнения команды:

1. ((УК)) → РК

2. (УК)+L → УК

3. Дешифратор Р.

4. А→УК

5. Перейти к пункту 1

Большинство команд передачи кправления - условного перехода используется, как правило, трехадресные команды. Одна из схем выполнения: при выполнении условия – переход к следующей команде. Условие может быть:

1. Если (А) < (В), то С→УК

2. Если (А)>(В), то С→УК

3. Если (А)=(В), то С→УК

4. Если (А)≠(В), то С→УК

Организация перехода разделена на 2 стадии: подготовка условия и проверка. Формирование условия готовит предыдущая команда.

Для передачи значения истинности условия в процессоре существует регистр флагов (РФ). Часть разрядов РФ не используется(резерв), а остальные делятся на управляющие, системные, разряды состояний. Совокупность разрядов состояния называют регистром признаков результата. (РПр) Многие команды арифметико-логического типа вырабатывают признак результата - бит, записывающийся в один из разрядов РФ. Разрядность флагов состояния от 4 до 6: флаг нуля, флаг знака, флаг переполнения, флаг отрицания результат и т.д.

То есть команды, не вырабатывают признак результата, сохраняют первое значение в регистре флага.

Каждой команде условного перехода ставится в соответствие определенный набор флагов. На команду условного перехода влияет предшествующая команда, последней выработавшей признак результата. Конечной командой блока подготовки проверки условие, является команда сравнения. Выполняется как вычитание, в память результат не записывается, а записывается в регистр признаков.

Схема алгоритма:

1. ((УК))→РК

2. (УК)+L→РК

3. Дешифрация р.

4. Если [(РПр) and (Np)]≠0, то А2 → УК

5. Переход к пункту 1

Np-набор признаков

Циклы

Цикл- участок программы, обеспечивающее многократное выполнение некоторой части алгоритма до тех пор, пока не выполнится условие окончания. Цикл состоит из внутренней части, выполняемой многократно, и внешней – команд подготовки и команд завершения. Многократность обеспечивается командой условия передачи.

 
 
 
 
 
 
 
 

Первая команда внутреннего цикла - та, на которую указывает стрелка. Последняя – та, откуда выходит стрелка. Между ними - тело цикла.

Классификация циклов:

-По расположению проверки условия перехода бывают: с предшествующей и с последующей (например untile и repeat)

-По типу алгоритма (цикл с заданным числом повторений, цикл итерационного типа, цикл смешанного типа)

1. Цикл с заданным числом повторов(со счетчиком)

Управление осуществляется с помощью специальной переменной – счетчик. С этим связаны задачи, когда надо программировать элементы, найти максимум и т.д

Схема:

Инициализация
I = 1,3

Основные вычисления
N-i=0?
I = i+1
I, s = s +i

Условие перехода
Подготовка перехода

2. Цикл итерационного типа – по имеющемуся приближенному значению строят более точное для решения с нужной точностью. Количество повторов заранее неизвестно. Цикл можно посчитать отдельным блоком программы, решающим некоторою логическую законченную задачу, т.е цикл можно считать элементом программы, как их команды.





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



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