Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
информатика.pdf
Скачиваний:
87
Добавлен:
23.02.2015
Размер:
2.15 Mб
Скачать

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

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

Вчисловой системе без знака эта проблема возникает при увеличении слова 1111, при этом имеет место перенос единицы из знакового бита. В случае системы чисел со знаком перенос из старшего бита даёт верный результат: 1111 + 0001 = 0000 (что правильно: -1 + 1 = 0 ). Но в этой системе увеличение слова 0111 приводит к ошибочной ситуации: 0111 + 1 = 1000 (7 + 1 = - 8), при этом имеет место перенос

взнаковый бит.

Впроцессоре ЭВМ (точнее в АЛУ, в котором выполняются арифметические операции) содержатся два индикатора — индикатор переноса и индикатор переполнения. Каждый индикатор содержит 1 бит информации и может быть процессором установлен (в этом случае ему придается значение, равное 1) или сброшен (равен 0).

Индикатор переноса указывает на перенос из знакового бита, а индикатор переполнения — на перенос в знаковый бит. Таким образом, после завершения операции, в которой происходит перенос в старший бит, процессор устанавливает индикатор переполнения, если такого переноса нет, то индикатор переполнения сбрасывается. Индикатор переноса обрабатывается аналогичным образом.

Операция вычитания положительных чисел

Операцию вычитания можно свести к операции сложения в силу того, что

А - В = А + (- В).

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

Коды представления чисел в ЭВМ

 

Прямой код

0101

5

Обратный код

1010

 

Дополнительный код

1011

- 5

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

Раздел 4 (Лекция 6)

Представление символьной информации в ЭВМ

Страница 16 из 45

Символьная информация обрабатывается в памяти ЭВМ в форме цифрового кода.

Например, можно обозначить каждую букву числами, соответствующими ее порядковому номеру в алфавите: А - 01, Б - 02, В - 03, Г - 04, ... , Э - 30, Ю - 31, Я - 32. Точно так же можно договориться обозначать точку числом 33, запятую - 34

Так как в ЭВМ используются двоичные коды, то обозначения букв надо перевести в двоичную систему. Тогда буквы будут обозначаться следующим образом: А - 000001, Б - 000010, В - 000011, Г -

000100, ... , Э - 011110, Ю - 011111, Я - 100000.

При таком кодировании любое слово можно представить в виде последовательности кодовых групп, составленных из 0 и 1.

Например, код слова «БАБА» имеет вид: 000010 000001 000010 000001

Требования к построению схем преобразования

Между множествами символов и кодов должно иметь место взаимно-однозначное соответствие, т.е. разным символам должны быть назначены разные цифровые коды, и наоборот.

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

Другим важным моментом при организации кодировки символьной информации является

эффективное

использование

оперативной

памяти

(28=256 поэтому слова в 1 байт достаточно)

 

 

Распространенные схемы кодирования

BCD (Binary-Coded Decimal) – двоично-десятичный код используется для представления чисел, при котором каждая десятичная цифра записывается своим четырехбитовым двоичным эквивалентом

EBCDIC (Extended Binary-Coded Decimal Interchange Code) – расширенный двоично-десятичный код обмена информацией, который преобразует как числовые, так и буквенные строки.

Эти коды могут оказаться полезными, когда нужно преобразовать строку числовых знаков, например, строку из числовых знаков «565» в число 565, над которым затем будут производиться арифметические действия.

Код ASCII

ASCII (American Standard Code for Information Interchange) – американский стандартный код обмена информации. Этот код генерируется некоторыми внешними устройствами (принтером, АЦПУ) и используется для обмена данными между ними и оперативной памятью ЭВМ. Стандарт: диапазон 0-127 (00-7F) международный стандарт кодировки управляющих символов и букв латинского алфавита. Расширение стандарта: диапазон 128-255 (80-FF) для кодов псевдографики и букв национальных алфавитов.

КОИ-7 – отечественная версия кода ASCII (двоичный семибитовый код обмена информацией), которая совпадает с ним, за исключением букв русского алфавита

Кодирование графической информации

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

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

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

Особенно интенсивно технология обработки графической информации с помощью компьютера стала развиваться в 80-х годах

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

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

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

Страница 17 из 45

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

Виды представления графических изображений (растровое, векторное, фрактальное, 3D графика)

Создание и хранение графических объектов возможно в нескольких видах - в виде векторного, фрактального или растрового изображения.

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

Растровая графика Самый простой способ представления изображения в цифровом виде состоит в том, чтобы

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

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

"picture element" - элемент рисунка).

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

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

Векторная графика Векторное изображение - это графический объект, состоящий из элементарных отрезков и дуг.

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

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

К программным средствам создания и обработки векторной графики относятся следующие: CorelDraw, Adobe Illustrator, а также векторизаторы (трассировщики) - специализированные пакеты преобразования растровых изображений в векторные.

Фрактальная графика Фрактальная графика основывается на математических вычислениях, как и векторная. Но в

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

Системы кодирования цветных изображений: HSB, RGB и CMYK

Применяют несколько систем кодирования: HSB, RGB и CMYK. Первая система проста, интуитивно понятна и удобна для человека, вторая наиболее удобна для компьютера, а последняя система CMYK - для типографий.

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

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

Страница 18 из 45

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

Система RGB

Известно, что любой цвет можно представить в виде комбинации трех цветов: красного (Red, R), зеленого (Green, G), синего (Blue, B). Другие цвета и их оттенки получаются за счет наличия или отсутствия этих составляющих.

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

Если совместить все три компоненты, то получим ахроматический серый цвет, при увеличении яркости которого происходит приближение к белому цвету.

При 256 градациях каждого цвета (точка изображения кодируется 3 байтами – 24-х битный цвет) минимальные значения RGB (0,0,0) соответствуют черному цвету, а белому - максимальные с кодами

(255, 255, 255).

Чем больше значение байта цветовой составляющей, тем этот цвет ярче. Например, темно-синий кодируется тремя байтами ( 0, 0, 128), а ярко-синий (0, 0, 255).

Система CMYK

Эта цветовая модель используется при выводе изображений на печать. Каждому из основных цветов ставится в соответствие дополнительный цвет (дополняющий основной до белого). Получают дополнительный цвет за счет суммирования пары остальных основных цветов. Дополнительным цветом для красного является голубой (Cyan,C) = зеленый + синий = белый - красный, для зеленого - пурпурный (Magenta, M) = красный + синий = белый - зеленый, для синего - желтый (Yellow, Y) = красный + зеленый = белый - синий.

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

В этой системе используют еще черный цвет (BlacК, так как буква В уже занята синим цветом, то обозначают буквой K). Это связано с тем, что наложение друг на друга дополнительных цветов не дает чистого черного цвета.

Система HSB

Эта система характеризуется тремя компонентами: оттенок цвета (Hue) (длина волны), насыщенность цвета (Saturation) (амплитуда волны) и яркость цвета (Brightness) (освещенность).

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

Эта система хорошо согласуется с моделью восприятия цвета человеком, недостаток ее в том, что ее необходимо преобразовывать в систему RGB, если ее планируется использовать в качестве экранной иллюстрации, или CMYK, для печатной иллюстрации.

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

Режимы представления цветной графики (полноцветный, индексный)

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

а) полноцветный (True Color);

б) High Color;

в) индексный.

При полноцветном режиме для кодирования яркости каждой из составляющих используют 256 кодов яркости (восемь двоичных разрядов), то есть на кодирование цвета одного пикселя (в системе RGB) надо затратить 8*3=24 разряда. Это позволяет однозначно определять 16,5 млн. цветов. Что довольно близко к чувствительности глаза человека.

Страница 19 из 45