Сжатие изображений


Разработка программно-аппаратного модуля на языке С++



Download 1,9 Mb.
bet11/14
Sana24.02.2022
Hajmi1,9 Mb.
#250751
TuriПояснительная записка
1   ...   6   7   8   9   10   11   12   13   14
3.2 Разработка программно-аппаратного модуля на языке С++


Язык программирования часто можно определить, просто взглянув на исходный текст программы. Так, программа на языке APL напоминает иероглифы, текст на языке ассемблера представляется столбцами мнемоник, язык Pascal выделяется своим читабельным синтаксисом. А что можно сказать о языке С? Многие программисты, впервые столкнувшиеся с ним, находят его слишком замысловатым и пугающим. Конструкции, напоминающие выражения на английском языке, которые характерны для многих языков программирования, в С встречаются довольно редко. Вместо этого программист сталкивается с необычного вида операторами и обилием указателей. Многие возможности языка уходят своими корнями к особенностям программирования на компьютерах, существовавших на момент его появления.
В основу С положено значительно меньше синтаксических правил, чем у других языков программирования. В результате для эффективной работы компилятора языка достаточно всего 256 Кб оперативной памяти. Действительно, список операторов и комбинаций в языке С обширнее, чем список ключевых слов.
Программы, написанные на С, отличаются высокой эффективностью. Благодаря небольшому размеру исполняемых модулей, а также тому, что С является языком достаточно низкого уровня, скорость выполнения программ на языке С соизмерима со скоростью работы их ассемблерных аналогов.
Язык С содержит все управляющие конструкции, характерные для современных языков программирования, в том числе инструкции for, if/else, switch/case,while и другие. На момент появления языка это было очень большим достижением.
Язык С также позволяет создавать изолированные программные блоки, в пределах которых переменные имеют собственную область видимости. Разрешается создавать локальные переменные и передавать в подпрограммы значения параметров, а не сами параметры, чтобы защитить их от модификации.
Язык С поддерживает модульное программирование, суть которого состоит в возможности раздельной компиляции и компоновки отдельных частей программы.
Большинство компиляторов С позволяет обращаться к подпрограммам, написанным на ассемблере. В сочетании с возможностью раздельной компиляции и компоновки это позволяет легко создавать приложения, в которых используется код как высокого, так и низкого уровня. Кроме того, в большинстве систем из ассемблерных программ можно вызывать подпрограммы, написанные на С.
В разработанной программе реализуется сжатие и восстановление изображений на основе дискретного косинусного преобразования. В качестве исходных изображений для сжатия используются 24-х разрядные файлы изображения.
Текст программы приведён в Приложении Б.

Суть данной программы заключается в том, что входным файлом к программе является файл изображения в формате BMP от которого отделяется заголовок и данные о цвете переводятся из RGB представления в цветовую модель YCRCb, далее программа работает по стандартному алгоритму который описан выше. Результатом работы части программы которая отвечает за компрессию является текстовый файл в котором записано числовое представление сжатого изображения. Та часть программы которая отвечает за декомпрессию читает полученный на предыдущем этапе файл и перекодирует его обратно в BMP файл (это необходимо для того чтобы увидеть получившийся результат)


В качестве входных данных используется графический файл.
Выходные данные представлены изображение исходное и изображение сжатое.


Download 1,9 Mb.

Do'stlaringiz bilan baham:
1   ...   6   7   8   9   10   11   12   13   14




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish