Обработка массивов данных с использованием — КиберПедия 

История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...

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

Обработка массивов данных с использованием

2017-10-16 215
Обработка массивов данных с использованием 0.00 из 5.00 0 оценок
Заказать работу

Относительной адресации с индексированием

И косвенной регистровой адресации

Для перебора элементов массива данных при его обработке могут быть применены следующие способы адресации: косвенная регистровая совместно с автоинкрементной (автодекрементной) и относительная с индексированием. Использование того или иного способа зависит от форматов данных, обрабатываемых процессором, адресацией данных в ОЗУ. Наиболее просто эта задача решается первым способом. Автоинкрементная адресация самостоятельного значения не имеет, но эффективно применяется совместно с регистровой, обеспечивая автоувеличение содержимого РОН, указанного в адресном поле команды, на единицу. Автодекрементный способ выполняет те же задачи, но уменьшает
 
 

содержимое РОН на единицу. Из выше сказанного вытекает, что адреса элементов массива должны отличаться на «1».

 

На рис. 67 представлен массив а0, а1, а2 … данных в ОЗУ, который циклически обрабатывается одним и тем же участком программы.

Процессор должен выполнить следующую процедуру РОН[R]:=РОН[R]+1. В следующем цикле работы программы процессор выберет элемент а1 из следующей ячейки ОЗУ. Это отражено в ниже приведенной таблице.

 

  РОН[R] Данные Следующий адрес
1ц. α а0 α+1
2ц. α+1 а1 α+2
3ц. α +2 а2 α +3

 

В этом случае, каждый регистр должен быть организован таким образом, чтобы выполнять функции инкремента (работать в режиме счетчика).

Если процессор обрабатывает данные переменной длины, то необходимо применять более универсальный инструмент модификации адреса элементов массива.

Предположим, что процессор работает с данными разрядностью в 2, 4 и 6 байтов; в ОЗУ адресуется каждый байт. Тогда при обработке массива, состоящего из 2-х байтных слов, адреса элементов будут различаться на 2; для 4-х байтных слов – на 4; для 6-ти байтных слов – на 6. То есть приращение адреса в этих случаях отличается от единицы. Относительная адресация с индексированием позволяет решить эту задачу.

На рис. 68 показано размещение в ОЗУ слов размером в 2, 4 и 6 байт. Если массив данных имеет разрядность слов по 6 байт, то значение индекса в каждом цикле должно увеличиваться на 6. В исходном состоянии в РОН[X] записывается код нуля, а в поле D адрес первого байта первого элемента массива (α). Далее в каждом следующем цикле (смотри таблицу) индекс будет приобретать значения 6, 12, 18 и т.д.

 

Рис. 68

 

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

 

  Текущее значение индекса РОН[X] Следующее значение индекса POH[X]+ Δ АИСП
1ц.   0+ Δ=6 0+ α→ α
2ц.   6+ Δ=12 6+ α
3ц.   12+ Δ=18 12+ α

Пример организации процессора,


Поделиться с друзьями:

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...

Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.009 с.