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

Пример З



Разработать программу вычисления суммы элементов массива чисел С1, С2,..., Сn. Исходными данными в этой задаче являются: n — количество суммируемых чисел и С,, С2,..., Сп — массив суммируемых чисел. Заметим, что должно выполняться условие n > 1, т. к. алгоритм предусматривает, по крайней мере, одно суммирование. Кроме того, предполагается, что суммируемые числа записаны в ОЗУ подряд, т. е. в ячейки памяти с последовательными адресами. Результатом является сумма S.

Составим программу для вычисления суммы со следующими конкретными параметрами: число элементов массива— 10, элементы массива расположены в ячейках ОЗУ по адресам 040, 041, 042,..., 049. Используемые для решения задачи промежуточные переменные имеют следующий смысл: Аi адрес числа Сi, где I Î {l, 2,...,10}; ОЗУ(Аi) — число по адресу Аi S—текущая сумма; к — счетчик цикла, определяющий число повторений тела цикла.

Распределение памяти таково. Программу разместим в ячейках ОЗУ, начиная с адреса 000, примерная оценка объема программы — 20 команд; промежу­точные переменные: Аi — в ячейке ОЗУ с адресом 030, к — по адресу 031,

S — по адресу 032. ГСА программы показана на рис. 9.2, текст программы с комментариями приведен в табл. 9.7.

Таблица 9.7. Текст программы примера 3

Адрес Команда Примечание
  RD # 40 Загрузка начального адреса массива 040
  WR 30 в ячейку 030
  RD # 10 Загрузка параметра цикла к=10 в ячейку 031
  WR 31  
  RD # 0 Загрузка начального значения суммы S =0
  WR 32 в ячейку 032
  M1: RD 32 Добавление
  ADD @30 к текущей сумме
  WR 32 очередного элемента массива
  RD 30 Модификация текущего
  ADD #1 адреса массива
  WR 30 (переход к следующему адресу)
  RD 31 Уменьшение счетчика
  SUB #1 (параметра цикла)
  WR 31 на 1
  JNZ M1 Проверка параметра цикла и переход при к ¹ 0
  RD 32 Вывод
  OUT Результата
  HLT Стоп

Рис. 9.2. Граф-схема алгоритма для примера 3





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



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