Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

DSP / cos_lab3

.pdf
Скачиваний:
29
Добавлен:
10.02.2015
Размер:
750.44 Кб
Скачать

2.4 Организация ветвлений с помощью оператора if

IF [условие]{[операторы]

}

ELSE {[операторы]

}

Логический оператор

Его обозначение

Равно

==

Не равно

!=

Больше

>

Меньше

<

Больше или равно

>=

Меньше или равно

<=

Логическое И

&&

Логическое ИЛИ

||

2.5 Побитовые операции

&Побитовое И

| Побитовое ИЛИ << сдвиг влево на указанное количество бит

>>сдвиг вправо на указанное количество бит

2.6 Создание функций

Рассмотрим создание функции возведения числа в целую положительную степень:

main() /* TEST POWER FUNCTION */

{

int I;

for(I = 0; I < 10; ++I)

printf("%D %D %D\N",I,POWER(2,I),POWER(-3,I));

}

POWER(X,N) /* RAISE X N-TH POWER; N > 0 */ int X,N;

{

int I, P; P = 1;

for (I =1; I <= N; ++I) P = P * X;

return (P);

}

2.7 Указатели

Указатель - это переменная, содержащая адрес другой переменной. Указатели очень широко используются в языке "C". Это происходит отчасти потому, что иногда они дают единственную возможность выразить нужное действие, а отчасти потому, что они обычно ведут к более компактным и эффективным программам, чем те, которые могут быть получены другими способами.

Так как указатель содержит адрес объекта, это дает возможность "косвенного" доступа к этому объекту через указатель. Предположим, что х - переменная, например, типа INT, а рх - указатель, созданный неким еще не указанным способом. Унарная операция & выдает адрес объекта, так что оператор

рх = &х;

присваивает адрес х переменной рх; говорят, что рх "указывает" на х. Операция & применима только к переменным и элементам массива, конструкции вида &(х-1) и &3 являются незаконными. Нельзя также получить адрес регистровой переменной.

Унарная операция * рассматривает свой операнд как адрес конечной цели и обращается по этому адресу, чтобы извлечь содержимое. Следовательно, если Y тоже имеет тип INT, то

Y = *рх;

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

рх = &х; Y = *рх;

присваивает Y то же самое значение, что и оператор

Y = X;

Задание 1. Разработать программу, выводящую на экран “Hello world!”.

Вклеить разработанную Вами программу

Задание 2. Разработать программу инициализации массива с числом элементов кратным 2.

Вклеить разработанную Вами программу

Задание 3. Произвести двоично-инверсную перестановку проинициализированного массива.

Вклеить разработанную Вами программу

Задание 4. Вывод отсортированного массива на экран.

Вклеить разработанную Вами программу

Задание 5. Написать функцию, вычисляющую поворотные коэффициенты.

Вклеить разработанную Вами программу

Выводы

Задание 6. Разработать программу, реализующую один из алгоритмов БПФ с числом элементов не менее 256

Листинг программы

Запишите ваши итоговые выводы:

Контрольные вопросы

1.В чем заключается цифровая обработка сигналов?

2.Что такое дискретный сигнал?

3.Что такое частота дискретизации?

4.Принципы построения устройств ЦОС.

5.Теорема Котельникова.

Литература

1.Б.В. Керниган, Д.М. Ричи – Язык С

2.Материалы сайта http://www.dsplib.ru

3.Материалы сайта http://ru.wikipedia.org/

Соседние файлы в папке DSP