- •Информационно-логические основы эвм
- •Системы счисления1
- •Происхождение систем счисления
- •Экономичность системы счисления
- •Перевод чисел из одной системы в другую
- •Перевод из 2-й в 8-ю и 16-ю и обратно
- •Представление информации в эвм
- •Представление информации
- •Числовые данные
- •Целые числа (чила с фиксированной точкой)
- •Вещественные числа (числа с плавающей точкой)
- •Символьные данные
- •Альтернативная кодировка русского языка (cp866)
- •Unicode (2-х байтовая кодировка) – для одновременного существования нескольких языков
- •Предпосылки создания и развитие Юникода
- •Версии Юникода
- •Кодовое пространство
- •Система кодирования
- •Модифицирующие символы
- •Двунаправленное письмо
- •Представленные символы
- •Способы представления
- •Порядок байтов
- •Реализации
- •Графические данные Растровая графика
- •Достоинства
- •Недостатки
- •Форматы
- •Сжатие с потерями
- •Векторная графика
- •Способ хранения изображения
- •Преимущества векторного способа описания графики над растровой графикой
- •Недостатки векторной графики.
- •Типичные примитивные объекты
- •Векторные операции
- •Мультимедиа (звук, изображение)
- •Параметры, влияющие на качество цифровой звукозаписи
- •Некоторые виды цифрового звука в сравнении
- •Деревья
Мультимедиа (звук, изображение)
Цифровой звук — представление аналогового звукового сигнала в виде битовой последовательности, которая соответствует уровням электрических звуковых колебаний в определенные промежутки времени. Для преобразования звука в цифровой вид, применяется импульсно-кодовая модуляция или, реже, сигма-дельта-модуляция. Кроме описания звуковых колебаний в цифровом виде, применяется также создание специальных команд для автоматического воспроизведения на электронных музыкальных инструментах, ярчайшим примером такой технологии является MIDI.
Цифровая звукозапись — технология преобразования аналогового звука в цифровой с целью сохранения его на физическом носителе для возможности последующего воспроизведения записанного сигнала.
Представление аудиоданных в цифровом виде, позволяет очень эффективно изменять исходный материал при помощи специальных устройств или компьютерных программ - звуковых редакторов, что нашло широкое применение в промышленности, медиа-индустрии и быту.
Для воспроизведения цифрового звука применяют специальное оборудование, например музыкальные центры, цифровые плееры, компьютеры с звуковой картой и установленным программным обеспечением аудиоплеером или медиаплеером.
Параметры, влияющие на качество цифровой звукозаписи
Основными параметрами, влияющими на качество цифровой звукозаписи, являются:
Разрядность АЦП и ЦАП.
Частота дискретизации АЦП и ЦАП.
Передискретизация (англ. resampling) — изменение частоты дискретизации цифрового сигнала.
Некоторые виды цифрового звука в сравнении
Название формата |
Квантование, бит |
Частота дискретизации, кГц |
Число каналов |
Величина потока данных с диска, кбит/с |
Степень сжатия/упаковки |
CD |
16 |
44,1 |
2 |
1411,2 |
1:1 без потерь |
Dolby Digital (AC3) |
16-24 |
48 |
6 |
до 640 |
~12:1 с потерями |
DTS |
20-24 |
48; 96 |
до 8 |
до 1536 |
~3:1 с потерями |
DVD-Audio |
16; 20; 24 |
44,1; 48; 88,2; 96 |
6 |
6912 |
2:1 без потерь |
DVD-Audio |
16; 20; 24 |
176,4; 192 |
2 |
4608 |
2:1 без потерь |
MP3 |
плавающий |
до 48 |
2 |
до 320 |
~11:1 с потерями |
AAC |
плавающий |
до 96 |
до 48 |
до 529 |
с потерями |
AAC+ (SBR) |
плавающий |
до 48 |
2 |
до 320 |
с потерями |
Ogg Vorbis |
до 32 |
до 192 |
до 255 |
до 1000 |
с потерями |
WMA |
до 24 |
до 96 |
до 8 |
до 768 |
2:1, есть версия без потерь |
Цифровое видео бывает двух видов: сжатое и несжатое. Первое нынче используется, в основном, для записи на цифровые кассеты видеокамер, например, в формате DV, miniDV, Digital8. О сжатом поговорим подробнее.
Сжимается видео так. Через некоторые интервалы (обычно в начале каждой новой сцены) устанавливаются ключевые кадры, являющиеся полноценными картинками. Далее, вплоть до следующего ключевого кадра, — только данные о том, как картинка меняется. Описание движения, попросту говоря.
При воспроизведении программа, основываясь на таких данных, вырисовывает каждый кадр на лету, воспроизводя изменения, следующие за ключевыми кадрами.
(Исключением является MJPEG, у которого каждый кадр — изображение в формате JPEG. Но это занимает очень много места, да и технология уже малость устарела.)
Чем больше данных отводится для отрисовки кадров (чем выше битрейт, количество килобит в секунду), тем выше качество видео, тем меньше артефактов сжатия — ряби.
Итак, сжатое цифровое видео — это фильм, состоящий из ключевых кадров и их изменений. Плюс дорожки сжатого аудио, конечно.
Экономичность мультимедийных потоков. Кодеки.
Дополнительно
Структуры данных
Мы рассмотрели, как различные данные представляются в двоичном виде. Но, как правило, компьютер обрабатывает не одиночные данные, а их большие совокупности. Естественно встает вопрос об организации совокупности данных и удобства их обработки.
Рассмотрим основные структуры данных.
Списки
(Кнут т.1 гл.2)
Линейный список — это множество, состоящее из п >= 0 элементов Х [1], Х [2], ..., Х [n], структурные свойства которого по сути ограничиваются лишь линейным (одномерным) относительным положением элементов, т. е. теми условиями, что если п > 0, то Х [1] является первым элементом; если 1 <: k <: п, то за k-м элементом Х [k] следует Х [k + 1]; Х [n] является последним элементом. Т.е., вообще говоря, элементы могут иметь различную структуру, размеры и т.д.
Операции, которые мы имеем право выполнять с линейными списками, включают, например, следующие:
Получить доступ к k-му элементу списка, чтобы проанализировать и/или изменить содержимое его полей.
Включить новый узел непосредственно перед k-м элементом.
Исключить k-й. узел.
Объединить два (или более) линейных списка в один список.
Разбить линейный список на два (или более) списка.
Сделать копию линейного списка.
Определить количество элементов в списке.
Выполнить сортировку элементов списка в возрастающем порядке по некоторым полям в элементах.
Найти в списке узел с заданным значением в некотором поле.
В машинных приложениях редко требуются все девять из перечисленных выше операций в самом общем виде. По-видимому, трудно спроектировать единственный метод представления для линейных списков, при котором все эти операции выполняются эффективно; например, сравнительно трудно эффективно реализовать доступ к k-му узлу в длинном списке для произвольного k, если в то же время мы включаем и исключаем элементы в середине списка. Следовательно, мы будем различать типы линейных списков по главным операциям, которые с ними выполняются.
Очень часто встречаются линейные списки, в которых включение, исключение или доступ к значениям почти всегда производятся в первом или последнем узлах, и мы дадим им специальные названия:
Стек — линейный список, в котором все включения и исключения (и обычно всякий доступ) делаются в одном конце списка (LIFO).
Очередь — линейный список, в котором все включения производятся на одном конце списка, а все исключения (и обычно всякий доступ) делаются на другом его конце(FIFO).
Дек (double ended queue - очередь с двумя концами) — линейный список, в котором все включения и исключения (и обычно всякий доступ) делаются на обоих концах списка.
циклические списки. Иногда удобно использовать циклические списки – это списки, в которых последний элемент ссылается на 1-й.
Двунаправленные списки. Все рассмотренные выше списки имеют строгую упорядоченность в одном направлении: вперед. Для удобства поиска строят двунаправленные списки, для которых существует не только «следующий», но и «предыдущий» элемент. Двунаправленность, естественно, требует дополнительных затрат как по памяти, так и по дополнительным операциям (надо менять две ссылки вместо одной).
Одним из простейших обобщений списков являются массивы. Массивы представляют собой упорядоченную совокупность однородных элементов. Как правило, элементы массива располагаются в памяти последовательно. Т.о. для одномерного массива а0, а1, …, аn положение к-го элемента определяется по формуле а[0]+к. Для двумерного a[i,j] = a[0,0]+n*i+j.
