Контрольная работа: Процес квантування сигналів по рівню

Контрольная работа: Процес квантування сигналів по рівню




🛑 👉🏻👉🏻👉🏻 ИНФОРМАЦИЯ ДОСТУПНА ЗДЕСЬ ЖМИТЕ 👈🏻👈🏻👈🏻




























































Міністерство освіти і науки України
Національний авіаційний університет
Тема: Процес квантування сигналів по рівню
Проаналізувати роботу алгоритму порозрядного зважування та визначити можливі коди, час і похибку перетворення при слідуючих умовах:
Програмно дане завдання реалізується за допомогою програми, написаною з допомогою пакту BorlandC++ Builder6. Вихідний текст програми знаходиться в Додатку 1.
Розглянемо використання даної програми.
До початку роботи вікно програми має наступний вигляд:
В поле вводу "Кількість розрядів" вводимо кількість розрядів, що задані в умові даного завдання.
Аналогічно, в поля "Крок квантування по рівню", "Рівень вхідного сигналу" і "Час перетворення" також вводимо відповідні дані, задані в умові завдання.
В групі полів під назвою "Похибки", а саме в полях "Максимальна абсолютна", "Максимальна відносна", "Середньоквадратична відносна" і "Середньоквадратична абсолютна" в результаті виконання програмою обчислень записуються результати визначення відповідних похибок.
В полі "Можливі коди" в результаті роботи програми записуються можливі двійкові коди, визначені програмою для конкретних даних введених раніше.
В полі "Час перетворення" записується значення часу перетворення, що визначається програмою на основі введених попередньо даних.
Розглянемо роботу програми, при натисканні відповідних кнопок.
В результаті натискання даної кнопки виконуються обчислення похибок, генерація можливих кодів і обчислення часу перетворення для введених даних. Результати обчислень, як уже було зазначено вище, виводяться у відповідних полях: "Максимальна абсолютна", "Максимальна відносна", "Середньоквадратична відносна", "Середньоквадратична абсолютна", "Можливі коди" і "Час перетворення".
При натисканні кнопки "Побудувати графіки" в полі форми виникають графіки епюрів напруг для введених спочатку даних.
В результаті натискання даної кнопки вікно програми повертається в початковий стан, тобто стираються всі введені дані, всі результати обчислень і побудовані графіки.
При натисканні даної кнопки виконується завершення програми, тобто вікно програми закривається.
Обгрунтувати структурну схему кодера та проаналізувати його роботу на прикладі генерації циклічного коректуючого коду при наступних умовах:
- створюючий поліном Р(х)=х 5
+х 3
+х 2
+1;
Програмно дане завдання реалізується за допомогою програми, написаною з допомогою пакту BorlandC++ Builder6. Вихідний текст програми знаходиться в Додатку 2.
Розглянемо використання даної програми.
До початку роботи вікно програми має наступний вигляд:
В полі "Створюючий поліном" відмічаються відповідні складові частини створюючого поліному, в яких в даному випадку цифра біля Х означає степінь. Наприклад, запис Х5 означає х 5
.
Введений таким чином створюючий поліном записується у пам'ять комп’ютера і передається в поле запису "Створюючий поліном"
при натисканні кнопки "Записати", що знаходиться в тому ж полі, для введення створюючого поліному.
Наприклад, при записі поліному наступного вигляду:
у відповідному полі "Створюючий поліном" отримаємо наступний запис:
вводимо число розрядів, з якого складається задана інформаційна частина.
У вікнах пронумерованих від "0" до "7" вводиться задана в умові інформаційна частина, де "0"-"7" - номери відповідних розрядів інформаційної частини, починаючи з молодшого.
відбувається запис введеної інформаційної частини у пам'ять комп’ютера і у відповідне поле "Інформаційна частина":
Наприклад, при введенні інформаційної частини вигляду:
після натискання кнопки "Записати" у відповідному полі зявляється наступний запис:
В результаті натискання цієї кнопки у полях
з'являться проміжні результати обчислень програми, а в полях
з'являться остаточні результати обчислень, що вимагаються в програмі.
Наприклад, при введенні створюючого поліному і інформаційної частини таких, що були наведені в попередніх прикладах, після натискання кнопки "Виконати обчислення" матимемо у відповідних полях такі результати:
повертає форму у початковий стан, тобто стирає всі записані раніше дані:
При натисканні даної кнопки програма виконує побудову кодера заданої комбінації циклічного коду.
Наприклад, при введенні циклічного коду, що був наведений у попередніх прикладах, виконується побудова кодеру вигляду:
Кнопка "Вихід": завершує роботу програми.
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
un=mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-3]*de*pow(2,n-c+3)+mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+
un=mas[l-4]*de*pow(2,n-c+4)+mas[l-3]*de*pow(2,n-c+3)+
mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-5]*de*pow(2,n-c+5)+mas[l-4]*de*pow(2,n-c+4)+mas[l-3]*de*pow(2,n-c+3)+
mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
Label11->Caption = Label11->Caption + IntToStr(mas[l]) + " " ;
un1=mas1[l1-1]*de*pow(2,n-c1+1)+mas1[l1]*de*pow(2,n-c1);
un1=mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-4]*de*pow(2,n-c1+4)+mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-5]*de*pow(2,n-c1+5)+mas1[l1-4]*de*pow(2,n-c1+4)+mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
Label12->Caption = Label12->Caption + IntToStr(mas1[l1]) + " " ;
Edit5->Text=FloatToStrF(map,ffFixed,2,2);
Edit6->Text=FloatToStrF(mvp,ffFixed,2,2);
Edit8->Text=FloatToStrF(skap,ffFixed,2,2);
Edit7->Text=FloatToStrF(skvp,ffFixed,2,2);
Label13->Caption=FloatToStrF(tp,ffFixed,2,2);
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
un=mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-3]*de*pow(2,n-c+3)+mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+
un=mas[l-4]*de*pow(2,n-c+4)+mas[l-3]*de*pow(2,n-c+3)+
mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un=mas[l-5]*de*pow(2,n-c+5)+mas[l-4]*de*pow(2,n-c+4)+mas[l-3]*de*pow(2,n-c+3)+
mas[l-2]*de*pow(2,n-c+2)+mas[l-1]*de*pow(2,n-c+1)+mas[l]*de*pow(2,n-c);
un1=mas1[l1-1]*de*pow(2,n-c1+1)+mas1[l1]*de*pow(2,n-c1);
un1=mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-4]*de*pow(2,n-c1+4)+mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
un1=mas1[l1-5]*de*pow(2,n-c1+5)+mas1[l1-4]*de*pow(2,n-c1+4)+mas1[l1-3]*de*pow(2,n-c1+3)+mas1[l1-2]*de*pow(2,n-c1+2)+mas1[l1-1]*de*pow(2,n-c1+1)+
Edit5->Text=FloatToStrF(map,ffFixed,2,2);
Edit6->Text=FloatToStrF(mvp,ffFixed,2,2);
Edit8->Text=FloatToStrF(skap,ffFixed,2,2);
Edit7->Text=FloatToStrF(skvp,ffFixed,2,2);
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button1Click(TObject *Sender)
Label10->Caption=Label10->Caption+"x7+";
Label10->Caption=Label10->Caption+"x6+";
Label10->Caption=Label10->Caption+"x5+";
Label10->Caption=Label10->Caption+"x4+";
Label10->Caption=Label10->Caption+"x3+";
Label10->Caption=Label10->Caption+"x2+";
Label10->Caption=Label10->Caption+"x+";
Label10->Caption=Label10->Caption+"1";
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
Label11->Caption = Label11->Caption + mas[i] ;
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
Label12->Caption = Label12->Caption +"x"+ mas[i]+"+" ;
Label12->Caption = Label12->Caption + mas[0] ;
Label13->Caption = Label13->Caption + r ;
Label14->Caption = Label14->Caption +"x"+ mas[i]+"+" ;
Label14->Caption = Label14->Caption +"x"+ (mas[0]) ;
Label17->Caption=Label17->Caption + masd[l];
//---------------------------------------------------------------------------
void __fastcall TForm1::Button6Click(TObject *Sender)
//---------------------------------------------------------------------------
void __fastcall TForm1::Button5Click(TObject *Sender)
//---------------------------------------------------------------------------

Название: Процес квантування сигналів по рівню
Раздел: Рефераты по информатике, программированию
Тип: контрольная работа
Добавлен 14:29:48 07 декабря 2010 Похожие работы
Просмотров: 43
Комментариев: 15
Оценило: 2 человек
Средний балл: 5
Оценка: неизвестно   Скачать

Срочная помощь учащимся в написании различных работ. Бесплатные корректировки! Круглосуточная поддержка! Узнай стоимость твоей работы на сайте 64362.ru
Привет студентам) если возникают трудности с любой работой (от реферата и контрольных до диплома), можете обратиться на FAST-REFERAT.RU , я там обычно заказываю, все качественно и в срок) в любом случае попробуйте, за спрос денег не берут)
Да, но только в случае крайней необходимости.

Контрольная работа: Процес квантування сигналів по рівню
Реферат: Страдание и сострадание. Скачать бесплатно и без регистрации
Межличностные Отношения Подростков Курсовая Работа С Практикой
Разумный Туризм Эссе
Полное Собрание Сочинений И Писем Чехова
Реферат: КЭС 6х300 МВт электрическая станция
Дипломная работа: Законодательная власть в зеркале СМИ на примее общефедеральных печатных изданий. Скачать бесплатно и без регистрации
Реферат: Инвестиционная привлекательность проекта
Реферат: Работа с неблагополучной семьей
Полное Собрание Сочинений В 12 Томах
Курсовая Работа На Тему Лишайники
Дипломная Работа На Тему Анализ Рекламной Практики На Материалах Оао "Комитекс"
Реферат по теме Рак желудка и ободочной кишки
Сочинение Моя Школа
Контрольная работа: Изменение структуры жидкости около твердой поверхности
Реферат по теме Характер и особенности философии Средневековья
Реферат: Понятие о чувствах
Реферат На Тему Печени
Эссе Образованный Человек
Курсовая работа: Расчет и анализ системы обслуживания робототехнического комплекса производства деталей ЭВА
Реферат: Механизм кредитования с использованием кредитной линии
Реферат: Демонизация геев
Контрольная работа: Стеганография. Использование программ скрытого шифрования
Отчет по практике: Проведение скрытого наблюдения за работниками магазинов компании "Альянс"

Report Page