Любое число можно рассматривать как вещественное. Представление информации в компьютере. Представление целых чисел со знаком и без знака

§1.2 ПРЕДСТАВЛЕНИЕ ЧИСЕЛ В КОМПЬЮТЕРЕ
1.2.1. ПРЕДСТАВЛЕНИЕ ЦЕЛЫХ ЧИСЕЛ
1.2.2. ПРЕДСТАВЛЕНИЕ ВЕЩЕСТВЕННЫХ ЧИСЕЛ

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

2. Как в памяти компьютера представляются целые положительные и отрицательные числа?

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

4. Представьте число 6310 в беззнаковом 8-разрядном формате.
00111111.

5. Найдите десятичные эквиваленты чисел по их прямым кодам, записанным в 8-разрядном формате со знаком:
А) 01001100;
Б) 00010101.
А) +76. Б) +45.

6. Какие из чисел 4438 , 1010102 , 25610 можно сохранить в 8-разрядном формате?
4438 = 1001000112 – нельзя.
1010102 – можно.
25610 = 1000000002 – нельзя.

7. Запишите следующие числа в естественной форме:
А) 0,3800456·102 ;
Б) 0,245 ·10-3 ;
А) 1,256900Е+5;
Б) 9,569120Е-3.

8. Запишите число 2010, 010210 пятью различными способами в экспоненциальной форме.

9. Запишите следующие числа в экспоненциальной форме с нормализованной мантиссой – правильной дробью, имеющей после запятой цифру, отличную от нуля:
А) 217, 93410 ;
Б) 7532110;
В) 0,0010110.
А) 0,217934·103
Б) 0,75321·105
В) 0,101·10-2

10. Изобразите схему, связывающую основные понятия, рассмотренные в данном параграфе.

Ключевые слова:

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

1.2.1. Представление целых чисел

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

Рис. 1.2. Ячейка памяти

Для компьютерного представления целых чисел используется несколько различных способов представления, отличающихся друг от друга количеством разрядов (под целые числа обычно отводится 8, 16, 32 или 64 разрядов) и наличием или отсутствием знакового разряда. Беззнаковое представление можно использовать только для неотрицательных целых чисел, отрицательные числа представляются только в знаковом виде.

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

Максимальное значение целого неотрицательного числа достигается в случае, когда во всех разрядах ячейки хранятся единицы. Для n-разрядного представления оно будет равно 2 n -1. Минимальное число соответствует n нулям, хранящимся в n разрядах памяти, и равно нулю.

Ниже приведены максимальные значения для беззнаковых целых n-разрядных чисел:

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

Пример 1. Число 53 10 = 110101 2 в восьмиразрядном представлении имеет вид:

Это же число 53 в шестнадцати разрядах будет записано следующим образом:

При представлении со знаком самый старший (левый) разряд отводится под знак числа, остальные разряды - под само число. Если число положительное, то в знаковый разряд помещается О, если число отрицательное - 1. Такое представление чисел называется прямым кодом. В компьютере прямые коды используются для хранения положительных чисел в запоминающих устройствах, для выполнения операций с положительными числами.

На сайте Федерального центра информационно-образовательных ресурсов (http://fcior.edu.ru/) размещён информационный модуль «Число и его компьютерный код». С помощью этого ресурса вы можете получить дополнительную информацию по изучаемой теме.

Для выполнения операций с отрицательными числами используется дополнительный код, позволяющий заменить операцию вычитания сложением. Узнать алгоритм образования дополнительного кода вы можете с помощью информационного модуля «Дополнительный код», размещённого на сайте Федерального центра информационно-образовательных ресурсов (http://fcior.edu.ru/).

1.2.2. Представление вещественных чисел

Любое вещественное число А может быть записано в нормальной (научной, экспоненциальной) форме:

А = ±m q p ,

    m - мантисса числа;

    р - порядок числа.

Например, число 472 000 000 может быть представлено так: 47,2 10 7 , 472 10 6 , 4720 10 7 и т. д.

С нормальной формой записи чисел вы могли встречаться при выполнении вычислений с помощью калькулятора, когда в качестве ответа получали записи следующего вида: 4.72Е+8.

Здесь знак «Е» обозначает основание десятичной системы счисления и читается как «умножить на десять в степени».

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

Для единообразия мантиссу обычно записывают как правильную дробь, имеющую после запятой цифру, отличную от нуля. В этом случае число 472 000 000 будет представлено как 0,472 10 9

Число в формате с плавающей запятой может занимать в памяти компьютера 32 или 64 разряда. При этом выделяются разряды для хранения знака мантиссы, знака порядка, порядка и мантиссы.

Диапазон представления вещественных чисел определяется количеством разрядов, отведённых для хранения порядка числа, а точность определяется количеством разрядов, отведённых для хранения мантиссы.

Максимальное значение порядка числа, как видно из приведённого выше примера, составляет 1111111 2 = 127 10 , и, следовательно, максимальное значение числа:

0,11111111111111111111111 10 1111111

Попытайтесь самостоятельно выяснить, каков десятичный эквивалент этой величины.

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

Самое главное

Для компьютерного представления целых чисел используются несколько различных способов, отличающихся друг от друга количеством разрядов (8, 16, 32 или 64) и наличием или отсутствием знакового разряда.

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

При представлении со знаком самый старший разряд отводится под знак числа, остальные разряды - под само число. Если число положительное, то в знаковый разряд помещается 0, если число отрицательное, то 1. Положительные числа хранятся в компьютере в прямом коде, отрицательные - в дополнительном.

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

А = ±m q p ,

    m - мантисса числа;

    q - основание системы счисления;

    р - порядок числа.

Вопросы и задания

  1. Как в памяти компьютера представляются целые положительные и отрицательные числа?
  2. Любое целое число можно рассматривать как вещественное, но с нулевой дробной частью. Обоснуйте целесообразность наличия особых способов компьютерного представления целых чисел.
  3. Представьте число 63 10 в беззнаковом 8-разрядном формате.
  4. Найдите десятичные эквиваленты чисел по их прямым кодам, записанным в 8-разрядном формате со знаком:
  5. Какие из чисел 443 8 , 101010 2 , 256 10 можно сохранить в 8-разрядном формате?
  6. Запишите следующие числа в естественной форме:

      а) 0,3800456 10 2 ;

      б) 0,245 10 -3 ;

      в) 1,256900Е+5;

      г) 9,569120Е-3.

  7. Запишите число 2010,0102 10 пятью различными способами в нормальной форме.
  8. Запишите следующие числа в нормальной форме с нормализованной мантиссой - правильной дробью, имеющей после запятой цифру, отличную от нуля:

    а) 217,934 10 ;

    в) 0,00101 10 .

  9. Изобразите схему, связывающую основные понятия, рассмотренные в данном параграфе.

Представление информации в компьютере.

1. Представление целых чисел

2. Представление вещественных чисел

3. Представление текстовой информации

4. Представление графической и видеоинформации

5. Представление звуковой информации

6. Методы сжатия цифровой информации

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

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

(k-1)-й разряд ……… 1-й разряд 0-й разряд

Рис.1 Ячейка из k –разрядов.

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

В данной лекции мы рассмотрим, каким образом решается проблема преобразования исходной информации в компьютерное представление для каждого вида информации. Будет показано, насколько точно компьютерное представление отражает исходную информацию, причем слово «точно» здесь применяется не только к числам (точность представления), но и к другим видам информации. А именно, рассматривается степень реалистичности передачи оттенков цвета на мониторе, степень приближенности воспроизводимой музыки к естественному звучанию музыкальных инструментов или голосу человека и т. д. Задача перевода информации естественного происхождения в компьютерную называется задачей дискретизации или квантования . Эту задачу необходимо решать для всех видов информации. Способы дискретизации для разных видов информации различны, но подходы к решению этой задачи построены на одинаковых принципах.



Представление целых чисел.

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

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

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

При беззнаковом представлении все разряды ячейки отводятся под само число. При представлении со знаком самый старший (левый) разряд отводится под знак числа, остальные разряды - под собственно число. Если число положительное, то в знаковый разряд помещается 0, если число отрицательное - 1. Очевидно, в ячейках одного и того же размера можно представить больший диапазон целых неотрицательных чисел в беззнаковом представлении, чем чисел со знаком. Например, в одном байте (8 разрядов) можно записать положительные числа от 0 до 255, а со знаком - только до 127. Поэтому, если известно заранее, что некоторая числовая величина всегда является неотрицательной, то выгоднее рассматривать ее как беззнаковую.

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

Представление целых положительных чисел.

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

Максимально представимому числу соответствуют единицы во всех разрядах ячейки (двоичное число, состоящее из k единиц). Для k-разрядного представления оно будет равно 2 k - 1. Минимальное число представляется нулями во всех разрядах ячейки, оно всегда равно нулю. Ниже приведены максимальные числа для беззнакового представления при различных значениях k:

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

Определение 1. Представление числа в привычной для человека форме «знак-величина », при которой старший разряд ячейки отводится под знак, остальные k - 1 разрядов - под цифры числа, называется прямым кодом .

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

Отметим, что максимальное положительное число, которое можно записать в знаковом представлении в k разрядах, равно 2 k-1 - 1 , что практически в два раза меньше максимального числа в беззнаковом представлении в тех же k разрядах.

Вопрос 1 . Можно ли в 8-ми разрядной ячейки представить со знаком число 200?

Вопросы.

  1. Обоснуйте целесообразность представления особым образом в компьютере целых чисел.
  2. Приведите пример умножения в ограниченном числе разрядов двух положительных чисел, в результате которого получается отрицательное число.
  3. Перечислите и объясните все ошибки, которые могут возникать при выполнении арифметических операций над целыми числами в компьютерной арифметике в ограниченном числе разрядов.
  4. Покажите, каким образом использование дополнительного кода позволяет заменить операцию вычитания операцией сложения.
  5. В восьмиразрядной ячейке запишите дополнительные коды следующих двоичных чисел: а) -1010; б) -1001; в) -11; г) -11011.
  6. Можно ли по виду дополнительного кода числа сказать, четно оно или нечетно?
  7. Найдите десятичные эквиваленты отрицательных чисел, записанных в дополнительном коде: а) 11000100; б) 11111001.
  8. Какие из чисел 43 16 , 101010 2 , 129 10 и -135 10 можно сохранить в одном байте (в 8 разрядах)?
  9. Получите 16-разрядное представление следующих чисел: а) 25; б) -610.
  10. Для чисел А = 1110 2 , В = 1101 2 выполните следующие операции: А + В; А - В; В - А; -А - А; -В - В; -А - В (в восьмиразрядном знаковом представлении).

Вопросы.

1. Запишите следующие десятичные числа в нормализованном виде:

а) 217,934; в) 10,0101; б) 75321; г) 0,00200450.

2. Приведите к нормализованному виду следующие числа, используя в качестве Р основания их систем счисления:

а) -0,000001011101 2 ;

б) 98765432Ю 10 ;

в) 123456789,ABCD 16 .

3. Сравните следующие числа:

а) 318,4785 × 10 9 и 3,184785 × 10 11 ;

б) 218,4785 × 10 -3 и 21847,85 × 10 -4 ;

в) 0,1101 2 × 2 2 и 101 2 × 2 -2 .

4. Сравните диапазон представления чисел с плавающей за­пятой в 32-разрядном формате (24 разряда для мантиссы и 6 разрядов для модуля порядка) с диапазоном представления чисел с фиксированной запятой в том же формате.

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

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

а) 0,397621 х 10 3 + 0,237900 х 10 1 ;

б) 0,982563 х 10 2 - 0,745623 х 10 2 ;

в) 0,235001 х 10 2 0,850000 х 10 3 ;

г) 0,117800 х Ю 2: 0,235600 х 10 3 .

При выполнении этого задания следует нормализовать мантиссу результата соответствующего арифметического действия, а затем округлить ее

7. Выполните действие над машинными кодами чисел с плавающей запятой в 32-разрядном формате: X =А + В, где А = 125,75 и В = -50.

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

Квантование цвета.

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

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

Ученым долгое время не удавалось объяснить процесс цветовосприятия. До середины XVII века господствовала умозрительная теория Аристотеля, согласно которой все цвета образуются при подмешивании черного цвета к белому. Первые серьезные результаты в этой области получил Исаак Ньютон, который описал составную природу белого света и установил, что спектральные цвета являются неразложимыми и что путем смешения спектральных цветов можно синтезировать белый цвет и всевозможные оттенки других цветов. Ньютон выделил в спектре белого света семь наиболее заметных спектральных цветов и назвал их основными - красный, оранжевый, желтый, зеленый, голубой, синий и фиолетовый. Примерно полстолетия спустя, в 1756 году, выдающийся русский ученый М. В. Ломоносов сформулировал так называемую трехкомпонентную теорию цвета, обобщив огромный эмпирический материал, накопленный им при разработке технологии производства цветного стекла и мозаики. Исследуя вопросы окрашивания стекол, Ломоносов обнаружил, что для придания стеклу любого М. В. Ломоносов (1711-1765) цветового оттенка достаточно использовать всего три основные краски, смешивая их в определенных пропорциях. Спустя примерно столетие выдающийся немецкий ученый Герман Грассман (1809-1877) ввел в трехкомпонентную теорию цвета математический аппарат в форме законов Грассмана для аддитивного синтеза цвета. Наиболее важными из них являются следующие два закона.

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

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

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

Колориметрические законы Грассмана устанавливают общие свойства математических моделей цвета. Фактически законы Грассмана постулируют, что любому цвету можно однозначным образом поставить в соответствие некоторую точку трехмерного пространства. Точки пространства, которые соответствуют цветам, воспринимаемым человеческим глазом, образуют в пространстве некоторое выпуклое тело. Абсолютно черному цвету всегда соответствует точка {0, 0, 0}. Таким образом, цвета можно рассматривать как точки или векторы в трехмерном цветовом пространстве. Каждая цветовая модель задает в нем некоторую систему координат, в которой основные цвета модели играют роль базисных векторов. А квантование цвета, по сути, является дискретизацией пространства цветов.

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

  • RGB (Red-Green-Blue, красный-зеленый-синий).
  • CMYK (Cyan-Magenta-Yellow-blacK, голубой-пурпурный-желтый-черный) .
  • HSB {Hue-Saturation-Brightness, цветовой оттенок-насыщенность-яркость).

Чтобы исключить неоднозначность трактования терминов «яркость», «насыщенность», «цветовой оттенок», поясним их.

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

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

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

Отметим, что для белого и черного цветов насыщенность составляет 0%, т. е. эти цвета не обладают насыщенностью. Именно поэтому, подмешивая их к цветной краске, мы меняем ее насыщенность, а не оттенок.

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

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


Характерные особенности RGB-модели

Любая точка куба (r, g, b ) определяет некоторый цвет.

Точка (0, 0, 0) соответствует черному цвету, точка (1, 1, 1) - белому, а линия (0, 0, 0) - (1, 1, 1) описывает все градации серого цвета: от черного до белого.

При движении по прямой от (0, 0, 0) через точку (r, g, b ) получаем все градации яркости цвета (r, g, b ), от самой темной до самой яркой. Например, (1/4, 1/4, 0) - темно- коричневый цвет, (1/2, 1/2, 0) - коричневый, (3/4, 3/4, 0) - желто-коричневый, (1, 1, 0) - желтый.

На гранях куба {r = 0}, {g = 0} и {b = 0} расположены самые насыщенные цвета.

Чем ближе точка к главной диагонали (0, 0, 0)-(1, 1, 1), тем менее насыщен соответствующий цвет.

У цветовой модели RGB есть физиологическое обоснование. Человеческий глаз содержит четыре типа зрительных рецепторов: «палочки» (рецепторы интенсивности) и

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

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

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

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

Наиболее простой способ добиться этого - перевести вещественные числа из интервала =100 – 43 = 57 С = 95 + [-B дк ] – 100 = – 100 = 152 – 100 = 52 Единицу в старшем разряде суммы можно просто зачеркивать. Необходимо найти способ получения дополнения произвольного числа Х до q n без использования вычитания: С = А – В = А + (-В) = А + (-В) + q n – q n = A +(q n -1- B)- q n + 1 Выражение q n – 1 – В определяет число В, получаемое заменой каждой цифры числа В на её дополнение до цифры q –1. Так, = = 999. обратным кодом В называется обратным кодом числа В; q n -1 - константой образования обратного кода


Из обратного кода легко получить дополнительный код: В + В = q n -1 q n - В = В + 1 Дополнительный код обратного кода Дополнительный код получается путём добавления единицы к младшему разряду обратного кода. Следовательно, дополнения двоичных чисел можно находить, минуя операцию вычитания. В обратном коде, как и в прямом, существует отрицательный и положительный ноль. Только в дополнительном коде ноль имеет единственное представление. Для данной длины разрядной сетки дополнительным кодом представляется на единицу больше отрицательных чисел, чем положительных. Договоримся обозначать прямой, обратный и дополнительный коды числа А через [А пк ], [А ок ], [А дк ].


Пример. Найти прямой, обратный и дополнительный коды чисел А = 34 и В = [А пк ]= , [А ок ]= , [А дк ]= [В пк ]= , [В ок ]= , [В дк ]= Алгоритм получения дополнительного кода отрицательного числа. 1.Модуль числа представить прямым кодом в k двоичных разрядах. 2.Значения всех бит инвертировать: все ноли заменить на единицы, а единицы на ноли (таким образом получается k-разрядный обратный код исходного числа); 3.К полученному обратному коду, трактуемому как k- разрядное неотрицательное двоичное число, прибавить единицу.


Примеры. 1. Дано отрицательное целое десятичное число M=-20. Представьте число в машинном коде в 16- разрядной сетке в двоичной и 16-ричной системах счисления. М=-20= 2 = 2 = 2 = 16 =FFEC


2. Дано целое число в виде 16-ричного двоичного машинного кода. Определите десятичное значение данного числа: K a =FFD4 Первая цифра F, следовательно, число отрицательное и хранится в компьютере в форме дополнительного машинного кода. FFD4 16 = [ дк ] [ ок ] – обратный код числа ПК =[ пк ] – прямой двоичный код числа Тогда десятичное число а = = - (32+8+4) = -44 – десятичное число


2 способ: через 16-ричную систему счисления K a =FFD4


Действия над машинными кодами целых чисел Дано: десятичные числа А= 34 и В = 30 Найти: А+В, А – В, В – А в двоичных машинных кодах в 8 разрядной сетке. = [А ок ] = [А дк ] = [-A пк ] = [-А ок ] = [-А дк ] = [-B пк ] = [-В ок ] = [-В дк ] = [В пк ] = [В ок ] = [В дк ] =


[А + В] ДК = = А + В = 64 [А – В] ДК = = А – В = 4 [В – А] ДК = =


Действия над машинными кодами чисел с фиксированной точкой (в 16-ричной системе счисления) Дано: десятичные числа А= 34 и В = 30 Найти: А+В, А – В, В – А в 16-ричных машинных кодах в 16 разрядной сетке. 1) А=34=22 16 В=30=1E 16 пк = ПК =001E 16 K A + K B = E = A + B = = 64 2) ПК =801E 16 ДК = E 16 = FFE2 16 K A + K B = FFE2 = А - В = = 4




В современных компьютерах машинная форма числа хранит не сам порядок, а его смещенное значение – характеристику числа. Это сделано для того, чтобы не хранить знак порядка и, значит, облегчить действия над порядками; увеличить диапазон представляемых чисел … Знак мантиссы характеристикамантисса Нормализованная мантисса всегда имеет целый разряд 0 и, следовательно, этот 0 в памяти компьютера не хранится, а только подразумевается. Это полезное техническое решение позволяет увеличить количество цифр и, следовательно, точность вычислений.


Примеры Вещественные числа представить как машинные коды чисел с плавающей точкой в 32-разрядной сетке в 16с/с: а) А=32008,5б) В= ,5 в) С= 15г) D= Найдем нормализованные мантиссы и характеристики этих чисел: а) А=32008,5=7D08,8 16 =0,7D m A =0,7D088p xA =4+40=44 16 = Знак- 0 Характеристика Дробная часть мантиссы Нормализованная мантисса Характеристика K A = = = 43FA > 0 0">


Б) B= ,5= -7D08,8 16 = - 0,7D m B = -0,7D088p xB =4+40=44 16 = Знак- 1 Характеристика Дробная часть мантиссы Нормализованная мантисса Характеристика K B = = = C3FA


0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40" title="в) С= 15 =F,E 16 m c =0,FE 16 p xA =40+1=41 16 Знак- 0 Характеристика- 1000001 Дробная часть- 1111 1110 0000 0000 0000 0000 мантиссы K C = 0.1000001.1111 1110 0000 0000 0000 0000 2 = =41FE0000 16 > 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40" class="link_thumb"> 28 в) С= 15 =F,E 16 m c =0,FE 16 p xA =40+1=41 16 Знак- 0 Характеристика Дробная часть мантиссы K C = = =41FE > в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40 16 Знак- 1 Характеристика Дробная часть мантиссы K D = = C 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40"> 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40 16 Знак- 1 Характеристика- 1000000 Дробная часть- 1001 0000 0000 0000 0000 0000 мантиссы K D = 1.1000000.1001 0000 0000 0000 0000 0000 2 = C0900000 16 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40" title="в) С= 15 =F,E 16 m c =0,FE 16 p xA =40+1=41 16 Знак- 0 Характеристика- 1000001 Дробная часть- 1111 1110 0000 0000 0000 0000 мантиссы K C = 0.1000001.1111 1110 0000 0000 0000 0000 2 = =41FE0000 16 > 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40"> title="в) С= 15 =F,E 16 m c =0,FE 16 p xA =40+1=41 16 Знак- 0 Характеристика- 1000001 Дробная часть- 1111 1110 0000 0000 0000 0000 мантиссы K C = 0.1000001.1111 1110 0000 0000 0000 0000 2 = =41FE0000 16 > 0 14 16 в) D= - = - 0,9 16 m B =0,9 16 p xB =40+0=40">


Действия над числами, представленными в экспоненциальной форме 1.Числа в экспоненциальной форме хранятся в памяти в прямом коде с нормализованными мантиссами. 2.Сложение кодов производится путём сложения мантисс только при одинаковых порядках (характеристиках) слагаемых. За общий выбирается наибольший порядок. 3.Алгоритмы операции алгебраического сложения после выравнивания характеристик зависят от знаков слагаемых. 4.Результаты в прямом коде нормализуются.


Примеры Выполнить операцию сложения машинных кодов чисел A и B с плавающей точкой в 32-хразрядной сетке. В качестве ответа записать код результата (в 2-ой и 16-ой с/с) и соответствующее этому коду десятичное число 1)K A =43.F34000K B = C1.A13000 a)m A =00.F34m B =00.A13 P Ax =43P Bx =41 => P =2 => m B =00.00A13 – ПК _ A13 FF.FF5ED b)m A +m B = 00.F34 FF.FF5ED 100.F29ED > 0 => m A+B = 00.F29ED P =2 => m B =00.00A13 – ПК _100.00000 00.00A13 FF.FF5ED b)m A +m B = 00.F34 FF.FF5ED 100.F29ED > 0 => m A+B = 00.F29ED">


P A+B = 3A+B = 0.F29ED = F29,ED 16 = /16+13/256 = /256 K A+B = = = 43.F29ED0