Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод КР ВТиИТ ДО.doc
Скачиваний:
47
Добавлен:
10.06.2015
Размер:
742.4 Кб
Скачать

2. Программный синтез

2.1. Постановка задачи

Блок данных из 8 слов (8 32-разрядных двоичных числа) со знаком размещен в памяти данных процессора TMS320C6x с ячейки памяти (ЯП) m2m1 по ЯП (m2m1 + 7) включительно (за исключением заданий 12 и ). После обработки весь блок «автоматически» обновляется. Требуется:

1. На языке ассемблера TMS320C6x разработать алгоритм и программу обработки блока данных в соответствии с задачей, выбранной из табл. 5 по значению числа

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

2. Определить число тактов, необходимое для выполнения разработанной программы.

Таблица 5. Техническое задание

М

Задача

0

Определить количество отрицательных слов блока. Результат разместить в ЯП m2m1+8.

1

В каждом слове определить количество нулевых старших разрядов, следующих после знакового разряда. Результаты разместить в ЯП, начиная с m2m1+8.

2

В каждой паре слов (1 и 2, 2 и 3, …) блока обнулить слово, меньшее по абсолютной величине.

3

В ЯП, начиная с m2m1+8, разместить слова, в которых хотя бы один и двух старших после знакового разрядов не нулевой.

4

Определить количество максимальных по абсолютной величине слов блока. Результат разместить в ЯП m2m1+8.

5

Определить номера трех наибольших по абсолютной величине слов блока. Результаты разместить в ЯП, начиная с m2m1+8.

6

В ЯП, начиная с m2m1+8, разместить положительные слова, а с m2m1+16 – отрицательные.

7

Определить номера слов, в которых хотя бы раз встречаются три, следующих подряд, единицы. Результаты разместить в ЯП, начиная с m2m1+8.

8

В ЯП, начиная с m2m1+8, сформировать блок, первое слово которого содержит только одну единицу и в старшем разряде; второе слово – только две единицы и в старших разрядах; третье – только три единицы и в старших разрядах; и т.д.

9

В ЯП, начиная с m2m1 + 8, разместить четные по номеру слова, а с m2m1 + 16 – нечетные по номеру слова.

10

Для каждой пары слов (1 и 2, 3 и 4, …) получить сумму, если оба они положительные, и разность в противном случае. Результаты разместить в ЯП, начиная с m2m1+8.

11

В ЯП, начиная с m2m1+8, сформировать новый блок, в котором двоичные слова исходного блока следуют в порядке: 1, 8, 2, 7, 3, 6, 4, 5.

12

В ЯП с m2m1 по m2m1+4 размещены ненулевые слова блока, в ЯП m2m1+5 – номер первого ненулевого слова блока, в ЯП с m2m1+6 по m2m1+9 – расстояния между номерами остальных ненулевых слов блока. В ЯП, начиная с m2m1+10, разместить слова восстановленного блока.

13

Определить наименьшее количество нулевых старших (за исключением знаковых) разрядов блока. Результат разместить в ЯП m2m1+8.

Продолжение таблицы 5

14

Определить номера положительных слов. Результаты разместить в ЯП, начиная с m2m1+8.

15

Определить максимальное по абсолютной величине слово. Результат разместить в ЯП m2m1+8.

16

В ЯП, начиная с m2m1+8, разместить четные по абсолютной величине слова, а с m2m1+16 – нечетные по абсолютной величине слова.

17

Обнулить слова, меньшие по абсолютной величине эталонного полуслова без знака. Эталонное полуслово размещено в ЯП m2m1+8.

18

С точностью до целого определить среднее (со знаком) значение блока. Результат разместить в ЯП m2m1+8.

19

В ЯП m2m1+8 размещено число N, определяющее наименьшее количество нулевых старших разрядов, за исключением знакового. В каждой из ЯП, начиная с m2m1+9, разместить знаковый и два старших после N разряда соответствующих слов исходного блока.

20

В ЯП m2m1+8 разместить сумму положительных и четных по номеру слов, а в ЯП m2m1+9 – сумму отрицательных и нечетных по номеру слов.

21

В ЯП, начиная с m2m1+8, разместить суммы каждой пары отрицательных слов (первого отрицательного слова и второго, третьего и четвертого и т.д.). В случае отсутствия пары сложить с нулем.

22

В ЯП с m2m1+8 по m2m1+15 размещены номера наибольших слов блока (нулевое содержимое первой же из этих ЯП означает окончание последовательности наибольших слов). Определить сумму абсолютных величин остальных слов блока. Результат разместить в ЯП m2m1+16.

23

В каждом слове установить в единицу 28-й разряд и обнулить остальные.

24

Определить номер слова, в котором структура старшего байта (включая знаковый разряд) имеет вид C8h. Результат разместить в ЯП m2m1+8.

25

В каждом слове определить количество единичных позиций. Результаты разместить в ЯП, начиная с m2m1+8.

26

В ЯП, начиная с m2m1+8, разместить номера слов, в которых 30-й и 0-й разряды имеют единичное значение.

Продолжение таблицы 5

27

Заменить младший байт первого слова величиной A3h, второго – величиной A2h, третьего – величиной A1h и т.д. Наконец, младший байт восьмого слова величиной 9Сh.

28

В ЯП, начиная с m2m1+8, расположить слова в порядке убывания их абсолютных величин.

29

В ЯП m2m1+8 размещено число N, определяющее наименьшее количество нулевых старших разрядов, за исключением знакового. В ЯП с m2m1+9 по m2m1+16 размещены знаковый и два старших после N разряда. В ЯП с m2m1 по m2m1+7 разместить слова блока восстановленной до 32 разрядности с нулевыми младшими разрядами.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]