Министерство сельского хозяйства



страница3/10
Дата09.08.2019
Размер2.88 Mb.
#127141
ТипЛекция
1   2   3   4   5   6   7   8   9   10

Кодирование чисел

В памяти компьютера числа хранятся в двоичной системе счисления.



Целые числа.

Есть две формы представления целых чисел в компьютере: целые без знака и целые со знаком.



Целые числа без знака — это множество положительных чисел в диапазоне [0, 2k–1] , где k — это разрядность ячейки памяти, выделяемой под число. Например, если под целое число выделяется ячейка памяти размером в 16 разрядов (2 байта), то самое большое число будет 1111111111111111 в двоичной системе счисления или 216-1=65535 в десятичной системе счисления.

Если во всех разрядах ячейки нули, то это будет ноль. Таким образом, в 16-разрядной ячейке помещается 216 = 65 536 целых чисел.



Целые числа со знаком — это множество положительных и отрицательных чисел в диапазоне [ 2k–1 , 2k–1–1]. Например, при k = 16 (2 байта) диапазон представления целых чисел: [–32 768, 32 767]. Старший разряд ячейки памяти хранит знак числа: 0 — число положительное, 1 — число отрицательное. Самое большое положительное число 32 767 имеет представление 0111111111111111.

Отрицательные целые числа представляются в дополнительном коде. Дополнительный код положительного числа N — это такое его двоичное представление, которое при сложении с кодом числа N дает значение 0. Например, дополнительный код числа 255 будет 1111111100000001. Это и есть представление отрицательного числа –255.



Вещественные числа

Формат представления вещественных чисел в компьютере называется форматом с плавающей точкой. Вещественное число R представляется в виде произведения мантиссы m на основание системы счисления n в некоторой целой степени p, которую называют порядком: R = m·np.

Представление числа в форме с плавающей точкой неоднозначно. Например, для десятичного числа 25,324 справедливы следующие равенства:

25,324 = 2,5324·101 25,324 = 0,0025324·104 25,324 = 2532,4·10–2 и т.п.

Чтобы не было неоднозначности, договорились в ЭВМ использовать нормализованное представление числа в форме с плавающей точкой. Мантисса в нормализованном представлении должна удовлетворять условию: 0,1n ≤ m < 1n. Иначе говоря, мантисса меньше единицы и первая значащая цифра — не ноль. В некоторых случаях условие нормализации принимают следующим: 1n ≤ m < 10n.

В памяти компьютера мантисса представляется как целое число, содержащее только значащие цифры (0 целых и запятая не хранятся). Следовательно, внутреннее представление вещественного числа сводится к представлению пары целых чисел: мантиссы и порядка.

В разных типах компьютеров применяются различные варианты представления чисел в форме с плавающей точкой.

Вещественные числа, разрядность мантиссы которых превышает число разрядов, выделенных под мантиссу в ячейке памяти, представляются в компьютере приближенно (с “обрезанной” мантиссой). Например, рациональное десятичное число 0,1 в компьютере будет представлено приближенно (округленно), поскольку в двоичной системе счисления его мантисса имеет бесконечное число цифр. Следствием такой приближенности является погрешность машинных вычислений с вещественными числами.

Вычисления с вещественными числами компьютер выполняет приближенно. Погрешность таких вычислений называют погрешностью машинных округлений.

Кодирование графических изображений

В видеопамяти находится двоичный код изображения выводимого на экран - битовая карта. Битовая карта считывается видеопроцессором не реже 60 раз в секунду (в зависимости от частоты обновления экрана).

Почти все создаваемые, обрабатываемые или просматриваемые с помощью компьютера изображения можно разделить на две большие части - растровую и векторную графику.

Растровая графика

Растровые изображения представляют собой набор точек; каждая такая точка может иметь какой-либо цвет, от белого до черного. Такая точка называется пиксель (pixel, от англ. picture element). Код пикселя содержит информацию о его цвете. Точность передачи рисунка зависит от количества точек и их размера.

Цвета всех точек, составляющих подобное изображение, записываются в массив, который, в свою очередь, вместе с некоторой служебной информацией сохраняется в файле. Такой массив называется растром.

В процессе растрового кодирования графического изображения производится его пространственная диск­ретизация. Дискретизацию изображе­ния можно сравнить с построением изображения из мозаики. Изображение разбивается на отдельные маленькие фрагменты (пиксели), для каждого фрагмента определяется единый цвет и присваива­ется числовое значение этого цвета, то есть код цвета.



  1. Пространственная дискретизация и определение цвета пикселя.

Цветовые модели

Для формального описания цвета придумано несколько цветовых моделей и соответствующих им способов кодирования.



Цветовая модель RGB

Название происходит от трех базовых цветов, используемых в модели — Red, Green, Blue. Цветовая модель RGB является аддитивной, то есть любой цвет представляет собой сочетание в различной пропорции трех основных цветов – красного (Red), зеленого (Green), синего (Blue). Разделение произвольного цвета на основные составляющие называется декомпозицией. Эта модель служит основой при создании и обработке компьютерной графики, предназначенной для электронного воспроизведения (на мониторе, телевизоре, проекторе). При наложении одного компонента основного цвета на другой яркость суммарного излучения увеличивается. Совмещение трех компонентов дает ахроматический серый цвет, который при увеличении яркости приближается к белому цвету. При 256 градационных уровнях тона черному цвету соответствуют нулевые значения RGB, а белому – максимальные, с координатами (255,255,255).



Таблица 1.1.

Основные цветовые комбинации модели RGB:

R

G

B

цвет

0

0

0

черный




0

0

1

синий




0

1

0

зеленый




0

1

1

голубой




1

0

0

красный




1

0

1

розовый




1

1

0

коричневый




1

1

1

белый




Цветовая модель CMYK.

Цветовую модель CMYK используют в полиграфии, при подготовке публикаций к печати. Эта модель использует субтрактивное цветовоспроизведение, характерное для отражающих объектов. Основные цвета модели CMY получаются вычитанием базовых цветов RGB из белого или сложением противоположных цветов:



голубой (cyan) = белый - красный = зеленый + синий;

пурпурный (magenta) = белый - зеленый = красный + синий;

желтый (yellow) = белый - синий = красный + зеленый.

Голубой, пурпурный и желтый цвета называются дополнительными, потому что они дополняют основные цвета до белого. Отсюда вытекает и главная проблема цветовой модели CMY – наложение друг на друга дополнительных цветов на практике не дает чистого черного цвета. Поэтому в цветовую модель был включен компонент чистого черного цвета. Так появилась четвертая буква в аббревиатуре цветовой модели CMYK (Cyan, Magenta, Yellow, blacK).



Цветовая модель HSB (HSL, HLV)

В этой цветовой модели палитра цветов формируется путём установки значений оттенка цвета, насыщенности и яркости. Палитру HSB можно представить в виде развернутого цветового круга. Цвет здесь определяются по цветовому тону (Н — Hue) в диапазоне от 0 до 360 градусов, насыщенности (S — Saturation) и яркости (В — Brightness) в диапазонах от 0 до 100%. У этой системы есть несколько вариантов, где вместо насыщенности и яркости используется хроматичность (chrome), светимость (luminance), светлота (Lightness), яркость (value) - HSV, HLV, HSL. Именно эта система соответствует тому, как человеческий глаз видит цвет.





  1. Варианты визуализации цветовой модели HSB.

Цветовая модель LAB

Цветовая модель LAB (еще ее называют CIELAB) была принята в качестве международного цветового стандарта Международной Комиссией по Освещению (CIE), Достоинством этой модели является ее независимость от способа производства цвета, в ее системе измерения можно описывать как цвета печати, так и цвета, излучаемые монитором. Для построения LAB модели также используются три компонента: яркость (Lightness) и интенсивность (Chrome), которые вместе составляют информацию об освещенности (Luminance) в изображении, содержащуюся в канале L. Канал А хранит информацию о тонах от зеленого до пурпурного, информация о тонах от голубого до желтого приходится на канал В.



Глубина цвета

Понятие глубины цвета позволяет определить, сколько цветов может быть реализовано в изображении в том или ином цветовом режиме, указывая на число битов, применяемых для представления цвета каждого пикселя. Глубина цвета обычно характеризуется одним из следующих трех способов:



  1. По числу битов на пиксель. Количество отображаемых цветов в этом случае может быть вычислено по формуле N=2k, где N – количество отображаемых цветов, k – глубина цвета. Наиболее распространенными значениями глубины цвета являются 4, 8, 16 или 24 бита на точку

  2. По максимальному числу реализуемых цветов. Типовой ряд определений в порядке возрастания выглядит так: 16-цветный режим, 256-цветный, режим тысяч цветов и режим миллионов цветов. Последние определения являются достаточно вольными и в ряде случаев используются для описания изображений, фактически содержащих меньшее число оттенков цвета.

  3. По названию. Большинство из нас проще запоминает сведения о каком-то предмете, если для него подобрано подходящее название. Такими названиями для режимов представления цвета с различной глубиной являются:

- Монохромный, или бинарный (всего два цвета, например белый и черный; один бит на пиксель).

- Полутоновый (Grayscale, градации серого). 256 цветов — и все из них являются оттенками серого; это максимально различимое глазом число оттенков серого цвета.

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

- Режим High Color (тысячи, от 16 000 до более чем 64 000 цветов, 15–16 бит на пиксель).

- Режим True Color (миллионы, 16,8 миллиона цветов, 24 бита на пиксель). При кодировании модели RGB в режиме True Color для каждого цвета отводится 8 бит, то есть составляющая каждого цвета может принимать значения от 0 до 255. 0 – цвет не используется, 255 – максимальная составляющая цвета. Таким образом, для кодирования одного пикселя необходимо 8*3=24 бита.


Количество бит на пиксель

Максимальное количество реализуемых цветов

Режим представления

цвета

1

21 = 2

Монохромный

8

28 = 256

Градации серого, индексный

12

212=4096

Используют простые устройства с цветными дисплеями (например, мобильный телефон)

16

216 = 65 536

High Color

24

224 = 16 777 216

True Color

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



Векторная графика

Векторное изображение представляет собой объект, состоящий из графических примитивов (точек, линий, прямоугольников, окружностей и т.д.) и описывающих их математических формул. В трехмерной компьютерной графике для создания сложных рисунков могут использоваться такие элементы как сферы, кубы. Положение и форма графического объекта задается в системе графических координат, связанных с экраном или листом бумаги. Например, графический примитив точка задаётся своими координатами (Х, У), линия - координатами начала (Х11) и конца (Х22), окружность - координатами центра (Х, У) и радиусом (R), прямоугольник – координатами диагонали (Х1, У1) (Х2, У2) и т.д. Кроме того, для каждой линии указывается ее тип (сплошная, пунктирная), толщина и цвет; для замкнутых изображений может быть указан способ заполнения внутренней области. Информация о векторном изображении кодируется как обычная буквенно-цифровая и обрабатывается специальными программами.

Как уже было сказано, благодаря тому, каким образом кодируется графическая информация векторного изображения, одним из преимуществ векторной графики является компактность представления, т.е. малый размер файла (порядка нескольких килобайт). Другим не менее важным достоинством является масштабирование без потери качества, так как это требует пересчета сравнительно небольшого числа координат узлов, в то время как увеличение растровой графики приводит к появлению зернистости изображения, а также к искажению линий и цвета. Что касается разработки векторных изображений, то здесь можно назвать еще одно преимущество – простота создания и редактирования объектов.

Команды, описывающие векторные объекты, большинству пользователей, возможно, никогда не придется увидеть. Определять, как описывать объекты, будет компьютерная программа, которая используется для создания векторной графики. Значительным недостатком векторной графики является программная зависимость: каждая программа сохраняет данные в своем собственном формате, Поэтому изображение, созданное в одном векторном редакторе, как правило, не конвертируется в формат другой программы без погрешностей

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

Фрактальная графика

Фрактальная графика основывается на математических вычислениях, как и векторная. Но в отличии от векторной ее базовым элементом является сама математическая формула. Это приводит к тому, что в памяти компьютера не хранится никаких объектов и изображение строится только по уравнениям. При помощи этого способа можно строить простейшие регулярные структуры, а также сложные иллюстрации, которые имитируют ландшафты.



Кодирование текста

Текст – это информация, представленная с помощью ограниченного набора символов - алфавита. При кодировании текста каждому символу ставится в соответствие его двоичный код.

Для того чтобы программа могла понять и правильно отобразить символы, была придумана таблица символов, в которой хранятся символы и соответствующие им двоичные коды. Таблицу символов также иногда называют кодовой таблицей. Она может храниться как в самой программе, работающей с текстом, так и быть встроенной в операционную систему. Во втором случае она автоматически предоставляется при каждом запросе программы.

Любой двоичный код символа можно представить в десятичной системе счисления. Десятичное число, в свою очередь, будет указывать на положение символа в кодовой таблице.

Для записи одного символа в памяти компьютера может быть выделено 1 или 2 байта.

Кодирование 1 байт на символ

При кодировании 1 байт на символ можно использовать 28=256 различных символов, имеющих коды от 00000000 до 11111111. Для разных типов компьютеров и операционных систем используются различные таблицы кодировки, отличающиеся порядком размещения символов алфавита в кодовой таблице. Международным стандартом на персональных компьютерах является таблица ASCII (American Standard Code for Information Interchange), опубликованная как стандарт в 1963 г. американской организацией по стандартизации American Standards Association (ASA), которая позднее стала именоваться ANSI (American National Standards Institute), поэтому данную кодовую таблицу называют также и ANSI. В последующем данная таблица ASCII была принята как стандарт ведущими международными организациями по стандартизации.

Вначале использовалась 7-разрядная кодовая таблица ASCII

Таблица содержала 32 кода команд или управляющих символов (от 0 до 31), большая часть которых сегодня не используется, и 95 кодов (от 33 до 127) для различных знаков, достаточных для работы с английскими текстами (знаки препинания, цифры, прописные и строчные буквы английского алфавита).

Однако для нашей страны и многих других стран необходимо было добавить в кодовую таблицу символы национальных алфавитов (для русского алфавита – кириллицы). Для этого было предложено использовать 8-битную кодовую таблицу, которая могла содержать дополнительно ещё 128 символов (с 128 по 255).

В дальнейшем был принят стандарт на 8-битную таблицу ASCII, в которой первые 128 символов оставались те же, что и в 7-битной таблице, а символы с 128 по 255 отводились для неанглийских символов. В этой части размещались буквы национального алфавита, символы псевдографики и некоторые другие символы. Вторая половина кодовой таблицы получила название кодовая страница. Существует несколько вариантов стандарта кодовой страницы, которые отличаются друг от друга кодами русских букв.





  1. Кодовая таблица.

Кодирование 2 байта на символ

С 1997 года появился новый международный стандарт Unicode, который отводит для кодировки одного символа 2 байта (16 бит), соответственно можно закодировать 216=65536 различных символов. Unicode включает в себя все существующие, вымершие и искусственно созданные алфавиты мира, в том числе буквы европейских алфавитов - латинского, кириллического, греческого, буквы арабского и грузинского языков, и даже большую часть японских и китайских иероглифов, а также множество математических, музыкальных, химических и прочих символов.

В настоящее время при работе в Интернете и с текстовыми файлами чаще всего Вы можете встретить следующие кодовые страницы русских букв:

Cyrillic (Windows) – CP1251 – Microsoft Windows;

Cyrillic (DOS)CP866 – MS-DOS (встречается крайне редко);

Cyrillic (ISO)ISO 8859-5 – 8-ми битная таблица ASCII;

Cyrillic KOI8-R – используется среди ортодоксальных пользователей операционных систем Linux, по-прежнему не желающих переходить на Unicode, и среди html-программистов "старой закалки";

CP10007 Mac OS (в настоящее время - переход на Unicode);

UTF-8 – универсальная кодировка Unicode (используется в большинстве Linux и последних версиях Windows).

Кодировки на базе EBCDIC (например, ДКОИ-8) используются только на некоторых мейнфреймах.



Кодирование звука

Из физики известно, что звук – это колебания воздуха. Если преобразовать звук в электрический сигнал (например, с помощью микрофона), то видно плавно изменяющееся с течением времени напряжение. Для компьютерной обработки такой – аналоговый – сигнал нужно каким-то образом преобразовать в последовательность двоичных чисел.

Делается это, например, так – измеряется напряжение через равные промежутки времени и полученные значения записываются в память компьютера. Этот процесс называется дискретизацией (или оцифровкой), а устройство, выполняющее его – аналого-цифровым преобразователем (АЦП).


  1. Кодирование звука.

Чтобы воспроизвести закодированный таким образом звук, нужно сделать обратное преобразование (для этого служит цифро-аналоговый преобразователь – ЦАП), а затем сгладить получившийся ступенчатый сигнал.

Чем выше частота дискретизации и чем больше разрядов отводится для каждого отсчета, тем точнее будет представлен звук, но при этом увеличивается и размер звукового файла. Поэтому в зависимости от характера звука, требований, предъявляемых к его качеству и объему занимаемой памяти, выбирают некоторые компромиссные значения.

Основное отличие реального звука состоит лишь в том, что он получается в результате наложения и взаимодействия большого числа колебаний разной частоты, фазы и амплитуды. Так возникают обертона, характеризующие, например, тембр голоса.

Необходимая частота измерений (выборки) зависит от частотного диапазона преобразуемого сигнала. В самом деле, незачем использовать частоту дискретизации, скажем, 1 MHz, если сигнал изменяется не чаще 5000 раз в секунду, и наоборот, при слишком низкой частоте оцифровки часть звуковых частот будет безвозвратно потеряна. Теоретически по теореме Котельникова-Найквиста частота дискретизации должна быть как минимум в два раза больше верхнего предела частоты звуковых колебаний. Обычно применяется частота 44.1 KHz, что соответствует стандарту Audio CD и обеспечивает воспроизведение частот приблизительно до 22.05 KHz. Напомню, что человек слышит звуки в диапазоне примерно от 20 до 20000 Hz, хотя эти данные не очень корректны. Например, младенец может слышать и 16 Hz, и даже 21 KHz, а уже поближе к совершеннолетию он будет с трудом различать звуки с частотой выше 18 KHz. В преклонном возрасте верхний порог чувствительности нередко снижается до 14 KHz, правда, ухудшение слуха с возрастом более заметно у мужчин.

Описанный способ кодирования звуковой информации достаточно универсален, он позволяет представить любой звук и преобразовывать его самыми разными способами. Но бывают случаи, когда выгодней действовать по-иному.

Издавна используется довольно компактный способ представления музыки – нотная запись. В ней специальными символами указывается, какой высоты звук, на каком инструменте и как сыграть. Фактически, ее можно считать алгоритмом для музыканта, записанным на особом формальном языке. В 1983 году ведущие производители компьютеров и музыкальных синтезаторов разработали стандарт, определивший такую систему кодов. Он получил название MIDI.

Конечно, такая система кодирования позволяет записать далеко не всякий звук, она годится только для инструментальной музыки. Но есть у нее и неоспоримые преимущества: чрезвычайно компактная запись, естественность для музыканта (практически любой MIDI-редактор позволяет работать с музыкой в виде обычных нот), легкость замены инструментов, изменения темпа и тональности мелодии.

Есть и другие, чисто компьютерные, форматы записи музыки. Среди них – формат MP3, позволяющий с очень большим качеством и степенью сжатия кодировать музыку, при этом вместо 18–20 музыкальных композиций на стандартном компакт-диске (CD-ROM) помещается около 200. Одна песня занимает примерно 3,5 Mb, что позволяет пользователям сети Интернет легко обмениваться музыкальными композициями.



    1. Вычислительная техника.

      1. Принципы фон Неймана работы компьютера.

Архитектура ЭВМ включает в себя как структуру, отражающую состав ПК, так и программно – математическое обеспечение. Структура ЭВМ - совокупность элементов и связей между ними. Основным принципом построения всех современных ЭВМ является программное управление.

Основы учения об архитектуре вычислительных машин были заложены Джон фон Нейманом. Совокупность этих принципов породила классическую (фон-неймановскую) архитектуру ЭВМ.

В 1945 году английский математик Джон фон Нейман распространил доклад, в котором сформулировал общие принципы работы универсального электронного вычислительного устройства (ЭВМ). Согласно этому докладу, компьютер должен включать в себя следующие устройства:


  • АЛУ (арифметико-логическое устройство), выполняющее все арифметические и логические операции;

  • УУ (устройство управления), организующее общее руководство работой компьютера и управляющее процессом выполнения программы;

  • ОЗУ (оперативное запоминающее устройство, или оперативная память), представляет собой пронумерованные ячейки, в которых хранятся программы, данные и результаты работы;

  • ВУ (внешние устройства), с которых осуществляется ввод информации (клавиатура, перфокарты) или ее вывод (экран монитора, печатающее устройство).



  1. Архитектура ЭВМ по принципам Д. фон Неймана.

Программа из внешнего устройства считывается в оперативную память. Программа состоит из команд, а команда – из кода команды (что сделать) и кода операндов (указывают ячейки, в которых находятся данные для этой команды). После выполнения одной команды АЛУ переходит к выполнению следующей (если только предыдущая команда не содержала переход в другое место программы).
Работа современных компьютеров в основном подчинена этим принципам.

Арифметико-логическое устройство и устройство управления в современных компьютерах образуют процессор ЭВМ. Процессор, который состоит из одной или нескольких больших интегральных схем называется микропроцессором или микропроцессорным комплектом.

В качестве устройства ввода информации служит, например, клавиатура. В качестве устройства вывода – дисплей, принтер и т.д.


      1. Виды современных компьютеров.

Существуют различные классификации компьютеров:

  • по назначению (домашние, офисные, мобильные);

  • по уровню специализации (универсальные, проблемно-ориентированные, специализированные);

  • по размеру (большие: суперкомпьютеры и мейнфреймы, серверы, рабочие станции, персональные, носимые, встроенные)

  • по совместимости (платформа IBM PC и Apple Macintosh; совместимость на уровне операционной системы; совместимость на уровне программного обеспечения и на уровне данных);

  • по производительности.

Следует заметить, что любая классификация является в некоторой мере условной, поскольку развитие компьютерной науки и техники настолько бурное, что, например, сегодняшние персональные компьютеры не уступает по мощности суперкомпьютерам недавнего прошлого. Кроме того, зачисление компьютеров к определенному классу так же условно, поскольку нет четких границ между группами. Например, персональный компьютер может выполнять функции как рабочей станции, так и сервера. Стремительный рост компьютерной техники приводит к заметному улучшению основных параметров компьютеров, что еще более стирает границы между классами.




Поделитесь с Вашими друзьями:
1   2   3   4   5   6   7   8   9   10




База данных защищена авторским правом ©vossta.ru 2022
обратиться к администрации

    Главная страница