Что такое многочлен стандартного вида. Урок "стандартный вид многочлена". Разложение многочленов на множители

| Планирование уроков на учебный год (ФГОС) | § 1.2. Представление чисел в компьютере

Уроки 6 - 7
§ 1.2. Представление чисел в компьютере

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

где:

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

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

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

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

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

Из приведённого выше примера видно, что положение запятой в записи числа может изменяться.

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

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

Пример:

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

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

0,11111111111111111111111 10 1111111

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

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

САМОЕ ГЛАВНОЕ

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

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

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

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

где:

m - мантисса числа;
q - основание системы счисления;
p - порядок числа.

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

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

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

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

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

5. Найдите десятичные эквиваленты чисел по их прямым кодам, записанным в 8-разрядном формате со знаком:

а) 01001100;
б) 00010101.

6. Какие из чисел 443 8 , 101010 2 , 256 10 можно сохранить в 8-разрядном формате?

7. Запишите следующие числа в естественной форме:

а) 0,3800456 10 2 ;
б) 0,245 10 -3 ;
в) 1,256900Е+5;
г) 9,569120Е-3.

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

9. Запишите следующие числа в экспоненциальной форме с нормализованной мантиссой - правильной дробью, имеющей после запятой цифру, отличную от нуля:

а) 217,934 10 ;
б) 75321 10 ;
в) 0,00101 10 .

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

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

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

А = 1 × 2 7 + 1 × 2 6 + 1 × 2 5 + 1 × 2 4 + 1 × 2 3 + 1 × 2 2 + 1 × 2 1 + 1 × 2 0 = 1 × 2 8 - 1 = 255 10 .

Диапазон изменения целых неотрицательных чисел чисел: от 0 до 255.

Для хранения целых чисел со знаком отводится две ячейки памяти (16 битов), причем старший (левый) разряд отводится под знак числа (если число положительное, то в знаковый разряд записывается 0, если число отрицательное - 1).

Представление в компьютере положительных чисел с использованием формата "знак-величина" называется прямым кодом числа. Например, число 2002 10 = 11111010010 2 будет представлено в 16-разрядном представлении следующим образом:

0 0 0 0 0 1 1 1 1 1 0 1 0 0 1 0

Максимальное положительное число (с учетом выделения одного разряда на знак) для целых чисел со знаком в n-разрядном представлении равно:

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

Дополнительный код отрицательного числа А, хранящегося в n ячейках, равен 2 n - |A|.

Дополнительный код представляет собой дополнение модуля отрицательного числа А до 0, так как в n-разрядной компьютерной арифметике:

2 n - |А| + |А| = 0,

поскольку в компьютерной n-разрядной арифметике 2 n = 0. Действительно, двоичная запись такого числа состоит из одной единицы и n нулей, а в n-разрядную ячейку может уместиться только n младших разрядов, то есть n нулей.

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

1. Модуль числа записать в прямом коде в n двоичных разрядах.

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

3. К полученному обратному коду прибавить единицу.

Запишем дополнительный код отрицательного числа -2002 для 16-разрядного компьютерного представления:


При n-разрядном представлении отрицательного числа А в дополнительным коде старший разряд выделяется для хранения знака числа (единицы). В остальных разрядах записывается положительное число

Чтобы число было положительным, должно выполняться условие

|А| £ 2 n-1 .

Следовательно, максимальное значение модуля числа А в га-разрядном представлении равно:

Тогда минимальное отрицательное число равно:

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

Максимальное положительное целое число (с учетом выделения одного разряда на знак) равно:

А = 2 31 - 1 = 2 147 483 647 10 .

Минимальное отрицательное целое число равно:

А = -2 31 = - 2 147 483 648 10 .

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

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

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

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

A = m × q n 2.3

где m - мантисса числа;
q - основание системы счисления;
n - порядок числа.

Для единообразия представления чисел с плавающей запятой используется нормализованная форма, при которой мантисса отвечает условию:

1/n £ |m|

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

Преобразуем десятичное число 555,55, записанное в естественной форме, в экспоненциальную форму с нормализованной мантиссой:

555,55 = 0,55555 × 10 3 .

Здесь нормализованная мантисса: m = 0,55555, порядок: n = 3.

Число в формате с плавающей запятой занимает в памяти компьютера 4 (число обычной точности ) или 8 байтов (число двойной точности ). При записи числа с плавающей запятой выделяются разряды для хранения знака мантиссы, знака порядка, порядка и мантиссы.

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

Определим максимальное число и его точность для формата чисел обычной точности , если для хранения порядка и его знака отводится 8 разрядов, а для хранения мантиссы и ее знака - 24 разряда:

0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
знак и порядок знак и мантисса

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

2 127 = 1,7014118346046923173168730371588 × 10 38 .

Максимальное значение положительной мантиссы равно:

2 23 - 1 » 2 23 = 2 (10 × 2,3) » 1000 2,3 = 10 (3 × 2,3) » 10 7 .

Таким образом максимальное значение чисел обычной точности с учетом возможной точности вычислений составит 1,701411 × 10 38 (количество значащих цифр десятичного числа в данном случае ограничено 7 разрядами).

Задания

1.26. Заполнить таблицу, записав отрицательные десятичные числа в прямом, обратном и дополнительном кодах в 16-разрядном представлении:

1.27. Определить диапазон представления целых чисел со знаком (отводится 2 байта памяти) в формате с фиксированной запятой.

1.28. Определить максимальное число и его точность для формата чисел двойной точности , если для хранения порядка и его знака отводится 11 разрядов, а для хранения мантиссы и ее знака - 53 разряда.

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

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

Таблица 4

Максимальное значение целого неотрицательного числа, которое может храниться в регистре в формате с фиксированной запятой, можно определить из формулы: 2n – 1, где n – число разрядов числа. Максимальное число при этом будет равно 28 – 1 = 25510 = 111111112и минимальное 010 = 000000002. Таким образом, диапазон изменения целых неотрицательных чисел будет находиться в пределах от 0 до 25510.

В отличие от десятичной системы в двоичной системе счисления при компьютерном представлении двоичного числа отсутствуют символы, обозначающие знак числа: положительный (+) или отрицательный (-), поэтому для представления целых чисел со знаком в двоичной системе используются два формата представления числа: формат значения числа со знаком и формат дополнительного кода. В первом случае для хранения целых чисел со знаком отводится два регистра памяти (16 бит), причем старший разряд (крайний слева) используется под знак числа: если число положительное, то в знаковый разряд записывается 0, если число отрицательное, то – 1. Например, число 53610 = 00000010000110002 будет представлено в регистрах памяти в следующем виде:

Таблица 5

а отрицательное число -53610 = 10000010000110002 в виде:

Таблица 6

Максимальное положительное число или минимальное отрицательное в формате значения числа со знаком (с учетом представления одного разряда под знак) равно 2n-1 – 1 = 216-1 – 1 = 215 – 1 = 3276710 = 1111111111111112 и диапазон чисел будет находиться в пределах от -3276710 до 32767.

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

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


1) модуль числа записать прямым кодом в n (n = 16) двоичных разрядах;

2) получить обратный код числа (инвертировать все разряды числа, т. е. все единицы заменить на нули, а нули – на единицы);

3) к полученному обратному коду прибавить единицу к младшему разряду.

Например, для числа -53610 в таком формате модуль будет равен 00000010000110002, обратный код – 1111110111100111, а дополнительный код – 1111110111101000.

Необходимо помнить, что дополнительный код положительного числа – само число.

Для хранения целых чисел со знаком помимо 16-разрядного компьютерного представления, когда используются два регистра памяти (такой формат числа называется также форматом коротких целых чисел со знаком), применяются форматы средних и длинных целых чисел со знаком. Для представления чисел в формате средних чисел используется четыре регистра (4 х 8 = 32 бит), а для представления чисел в формате длинных чисел – восемь регистров (8 х 8 = 64 бита). Диапазоны значений для формата средних и длинных чисел будут соответственно равны: -(231 – 1) … + 231 – 1 и -(263-1) … + 263 – 1.

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

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

где А – мантисса числа; h – основание системы счисления; p – порядок числа.

Выражение (2.7) для десятичной системы счисления примет вид:

для двоичной -

для восьмеричной -

для шестнадцатеричной -

Такая форма представления числа также называется нормальной . С изменением порядка запятая в числе смещается, т. е. как бы плавает влево или вправо. Поэтому нормальную форму представления чисел называют формой с плавающей запятой . Десятичное число 15,5, например, в формате с плавающей запятой может быть представлено в виде: 0,155 · 102; 1,55 · 101; 15,5 · 100; 155,0 · 10-1; 1550,0 · 10-2 и т. д. Эта форма записи десятичного числа 15,5 с плавающей запятой не используется при написании компьютерных программ и вводе их в компьютер (устройства ввода компьютеров воспринимают только линейную запись данных). Исходя из этого выражение (2.7) для представления десятичных чисел и ввода их в компьютер преобразовывают к виду

где Р – порядок числа,

т. е. вместо основания системы счисления 10 пишут букву Е, вместо запятой – точку, и знак умножения не ставится. Таким образом, число 15,5 в формате с плавающей запятой и линейной записи (компьютерное представление) будет записано в виде: 0.155Е2; 1.55Е1; 15.5Е0; 155.0Е-1; 1550.0Е-2 и т.д.

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

где |А| - абсолютное значение мантиссы числа.

Условие (2.9) означает, что мантисса должна быть правильной дробью и иметь после запятой цифру, отличную от нуля, или, другими словами, если после запятой в мантиссе стоит не нуль, то число называется нормализованным. Так, число 15,5 в нормализованном виде (нормализованная мантисса) в форме с плавающей запятой будет выглядеть следующим образом: 0,155 · 102, т. е. нормализованная мантисса будет A = 0,155 и порядок Р = 2, или в компьютерном представлении числа 0.155Е2.

Числа в форме с плавающей запятой имеют фиксированный формат и занимают в памяти компьютера четыре (32 бит) или восемь байт (64 бит). Если число занимает в памяти компьютера 32 разряда, то это число обычной точности, если 64 разряда, то это число двойной точности. При записи числа с плавающей запятой выделяются разряды для хранения знака мантиссы, знака порядка, мантиссы и порядка. Количество разрядов, которое отводится под порядок числа, определяет диапазон изменения чисел, а количество разрядов, отведенных для хранения мантиссы, – точность, с которой задается число.

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

1) производится выравнивание порядков чисел, над которыми совершаются арифметические операции (порядок меньшего по модулю числа увеличивается до величины порядка большего по модулю числа, мантисса при этом уменьшается в такое же количество раз);

2) выполняются арифметические операции над мантиссами чисел;

3) производится нормализация полученного результата.

Практическая часть

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

Целые числа без знака. Целые числа без знака обычно зани­мают в памяти компьютера 1 или 2 байт и принимают в одно­байтовом формате значения от 00000000 2 до 11111111 2 , ав дву­байтовом формате - от 00000000 00000000 2 до 11111111 11111111 2 (табл. 2.2).

Целые числа со знаком. Целые числа со знаком обычно занима­ют в памяти компьютера 1, 2 или 4 байт, при этом самый левый (старший) разряд содержит информацию о знаке числа. Знак « + » кодируется нулем, а «-» - единицей (табл. 2.3).

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

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

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

Таблица 2.2 Диапазоны значений целых чисел без знака

Число 1 ,о = 1 2: Число 127 10 = 1111111 2:

0000000 10 1111111

Знак числа «-»| Знак числа «-»

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

Прямой код числа -1: Прямой код числа -127:

1ОООООоТ11111111

Знак числа «+»Знак числа «+»

Прямой код: в знаковый разряд помещается цифра 1, а в разряды цифровой части числа - двоичный код его абсолютной величины.

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

Примеры.

Число:-1. Число:-127.

Код модуля числа: 00000001 Код модуля числа: 01111111

Обратный код числа: 11111110 Обратный код числа: 10000000

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

Дополнительный код числа -1: Дополнительный код числа -127:

Р

11111110 10000000

11111111 10 0 0 0 0 0 1

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

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

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

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

А = т- q",

где т - мантисса числа; q - основание системы счисления; п - порядок числа.

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

1/я = \т\ < 1.

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

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

421,637 = 0,421637 10 3 ;

0,000286 = 0,286 10" 4 ;

25,25 = -2,525 10 2 .

Число в форме с плавающей запятой занимает в памяти ком­пьютера 4 (число обычной точности) или 8 (число двойной точ­ности) байт. При записи числа с плавающей запятой выделяют разряды для хранения знака мантиссы, знака порядка, порядка и

мантиссы.

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

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

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

Пример. Произвести сложение чисел 0,1 *2 3 и 0,1 2 5 в формате с плавающей запятой.

Произведем выравнивание порядков и сложение мантисс:

+ 0,100 -2 5

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

Пример. Произвести умножение чисел 0,1 2 3 и 0,1 2 5 в форма­те с плавающей запятой.

После умножения будет получено число 0,01 2 8 , которое пос­ле нормализации примет вид 0,1 2 7 .

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

Двоичное кодирование текстовой информации. Традиционно для кодирования одного символа используется количество информа­ции, равное 1 байт, которое составляет 8 бит (2 8 = 256), поэтому можно закодировать 256 различных символов.

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

Кодирование заключается в том, что каждому символу ставит­ся в соответствие уникальный десятичный код от 0 до 255 или соответствующий ему двоичный код от 00000000 до 11111111.

Когда пользователь нажимает на клавиатуре клавишу с симво­лом, в память компьютера поступает последовательность из вось­ми электрических импульсов (двоичный код символа). Код символа хранится в оперативной памяти компьютера, где он занимает одну ячейку памяти.

В процессе вывода символа на экран компьютера производится обратный процесс - декодирование, т.е. преобразование кода символа в его изображение.

Присвоение символу конкретного кода - это вопрос соглаше­ния, которое фиксируется в кодовой таблице. Первые 33 кода (с О по 32) соответствуют не символам, а операциям (перевод стро­ки, ввод пробела и т.д.).

В качестве международного стандарта принята кодовая таблица ASCII (American Standard Code for Information Interchange) (рис. 2.1, а), кодирующая первую половину символов с числовыми кодами от 32 до 126.

Хронологически одним из первых стандартов кодирования рус­ских букв на компьютерах был КОИ8 («Код обмена информаци­ей, 8-битный»). Эта кодировка с середины 1980-х гг. стала исполь­зоваться в первых русифицированных версиях операционной си­стемы UNIX.

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

Рис. 2.1. Примеры кодировочных таблиц:

а - международная кодировка ASCII; б - кодировка СР1251

Наиболее распространенной в настоящее время является ко­дировка Microsoft Windows, обозначаемая СР1251 (от англ. Code page - кодовая страница) (рис. 2.1, б).

В конце 1990-х гг. появился новый международный стандарт Unicode, который отводит под один символ не 1 байт, а 2 байт, поэтому с его помощью можно закодировать не 256, а 65 536 раз­личных символов. Полная спецификация стандарта Unicode вклю­чает в себя все существующие, вымершие и искусственно создан­ные алфавиты мира, а также множество математических, музы­кальных, химических и прочих символов.

Двоичное кодирование графической информации. Графические изображения, хранящиеся в аналоговой (непрерывной) форме на бумаге, фото- и кинопленке, могут быть преобразованы в цифро­вой компьютерный формат путем пространственной дискретиза­ции. Это реализуется путем сканирования, результатом которого является растровое изображение. Растровое изображение состоит из отдельных точек - пикселов (от англ. picture element - элемент изображения), каждая из которых может иметь свой цвет.

Качество изображения определяется разрешающей способно­стью монитора, т. е. числом точек, из которых оно складывается. Чем больше разрешающая способность монитора, т. е. чем больше число строк растра и точек в строке, тем выше качество изобра­жения. В современных персональных компьютерах обычно исполь­зуются четыре основные разрешающие способности экрана: 640 х 480, 800 х 600, 1024 х 768 и 1280 х 1024 точки.

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

Цветное изображение на экране монитора формируется за счет смешивания трех базовых цветов: красного, зеленого и синего. Такая цветовая модель называется RGB-моделью (от англ. Red, Green, Blue - красный, зеленый, синий). Для получения богатой палит-

Таблица 2.4 Глубина цвета и число отображаемых цветов

Таблица 2.5 Формирование цветов при глубине цвета 24 бит

ры цветов базовым цветам могут быть заданы различные интен­сивности, Например, при глубине цвета в 24 бит на каждый из цветов выделяется по 8 бит, т. е. для каждого из цветов возможны 2 8 = 256 уровней интенсивности, заданных двоичными кодами (от минимальной - 00000000 до максимальной - 11111111) (табл. 2.5).

Для того чтобы на экране монитора формировалось изображе­ние, информация о каждой его точке (код цвета, точки) должна храниться в видеопамяти компьютера. Рассчитаем необходимый объем видеопамяти для одного из графических режимов, напри­мер с разрешением 800 х 600 точек и глубиной цве­та 24 бит на точку. Всего точек на экране: 800 600 = 480 000. Не­обходимый объем видеопамяти: 24 бит 480 000 = 11 520 000 бит = = 1 440 000 байт = 1406,25 Кбайт = 1,37 Мбайт.

Двоичное кодирование звуковой информации. Звук представляет собой звуковую волну с непрерывно меняющейся амплитудой и частотой. Чем больше амплитуда сигнала, тем он громче для чело­века; чем больше частота сигнала, тем выше тон. Для того чтобы

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

Таким образом, непрерывная зависимость амплитуды сигнала от времени A(t) заменяется на диск­ретную последовательность уровней громкости.

Рис. 2.2. Сетка уровней квантования.

Дискретизация - процесс разбивания сигнала на отдельные составпяющие, взятые в. определенные тактовые моменты времени t 0 , I t 2 ,… Р ез четко определенные тактовые интервалы времени / (рис 2.2).

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

д/ 0) = 2; Л(/,) = 5; A(t 2) = 6; A(t 3) = 6; A(U) = 5; A(t 5) = 5; A(t 6) = 6;

A(t 7) = 6; A(h) = 5.

Кодирование - перевод значения уровня квантования в конк­ретный двоичный код, например:

2-0010; 6-0110; 6-0110; 5-0101; 5-0101; 6-ОНО; 6-0110; 5-0101; 4-0100.

Качество передаваемой информации при этом будет зависеть:

От разрядности преобразования, т. е. числа двоичных разря­дов, которые будут использованы при кодировании соответству­ющего уровня;

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

Уровни громкости звука можно рассматривать как набор воз­можных состояний. Следовательно, чем большее число уровней громкости будет выделено в процессе кодирования, тем большее количество информации будет нести значение каждого уровня и тем более качественным будет звучание. Звуковые карты обеспе­чивают, например, 16-битную глубину кодирования звука, обес­печивая 2 16 = 65 536 уровней сигнала.

Кроме того, качество кодирования зависит и от числа точек измерения уровня сигнала за 1 с, т. е. частоты дискретизации (это значение изменяется от 8000 до 48 000).

Принято измерять частоту дискретизации в кГц (килогерцах): 1 кГц - это 1000 измерений в секунду.

Можно оценить информационный объем стереоаудиофайла Длительностью звучания 1 с при высоком качестве звука (16 бит, 48 кГц). Для этого число бит на одну выборку необходимо умно­жить на число выборок в 1 с и умножить на 2 (стереорежим):

16 бит 48 000 -2=1 536 000 бит = 192 000 байт 187,5 Кбайт.

Информационный объем звукового файла длительностью 1 мин Приблизительно равен 11 Мбайт.

Контрольные вопросы

1.Чем отличаются позиционные системы счисления от непозицион­ных?

2.Какое количество информации несет в себе цифра восьмеричного числа?

3.Почему в компьютере используется двоичная система счисления?

4.В чем заключается преимущество экспоненциальной формы числа?

5.Как кодируются символы текста?

6.В чем заключается метод пространственной дискретизации?

7.Переведите в десятичную систему счисления 1110 2 ; 22 8 ; BF l 6 ; 10110 2 ;

135 8 ; 70£ 16 .

8.Переведите десятичные числа в двоичную, восьмеричную и шест-надцатеричную системы счисления: 74,21; 26,11; 125,01; 114,08.

9.Переведите пары чисел в двоичную систему счисления, произведи­те арифметические операции, ответы проверьте: 36 и 4; 75 и 5; 12 и 4; 123 и 3.

10. В какой системе счисления справедливы следующие равенства:

20 + 25= 100; 22+ 44 =110?

11.Десятичное число 59 эквивалентно числу 214 в некоторой другой системе счисления. Найдите основание этой системы.

12.Переведите числа в десятичную систему, а затем проверьте ре­зультаты, выполнив обратные переводы:

14. Перемножьте числа, а затем проверьте результаты, выполнив со­
ответствующие десятичные умножения:

101101 2 101 2 111101 2 - П,012

1011,11 2 101,1 2 101 2 -1111,001 2

15.Разделите 10010110 2 на 1010 2 и проверьте результат, умножив де­литель на частное.

16.Запишите числа в прямом коде (формат 1 байт):

17. Запишите числа в обратном и дополнительном кодах (формат 1 байт):

18 Найдите десятичные представления чисел, записанных в допол­
нительном коде:

11111000 10011011

11101001 10000000

19. Выполните вычитания чисел путем сложения их обратных (допол­
нительных) кодов в формате 1 байт (укажите, в каких случаях имеет
место переполнение разрядной сетки):

20.Закодируйте с помощью таблицы СР1251 и представьте в шест-надцатеричной системе счисления слово «информация».

21.Почему иногда на экране монитора вместо текстовой информации можно видеть 00DD и т.п.?

22.На клавиатуре наряду с алфавитно-цифровыми клавишами разме­щены такие, как , , и т.д. Имеют ли они десятичный код?

23.При разрешающей способности 1280 х 1024 точек определите объем видеопамяти при глубине цвета High Color.

24.Сколько может «весить», т.е. какой имеет объем, файл с видео­клипом длительностью 5 с?

25.Сколько точек содержит рисунок, если при кодировании каждой точки 1 байт получился файл объемом 300 Кбайт?

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

Число

представлено в 10 2 системы счисления.
Представить число в:
нормализованном экспоненциальном виде
денормализованном экспоненциальном виде
32 битный формат IEEE 754
64 битный формат IEEE 754
Перевести обратно в десятичное представление

Правила ввода чисел

  1. Числа в десятичной системе счисления могут вводиться как без дробной, так и с дробной частью (234234.455).
  2. Числа в двоичной системе счисления состоят только из цифр 0 и 1 (10100.01).
  3. Числа в шестнадцатеричной системе счисления состоят из цифр 0 ... 9 и букв A ... F .
  4. Можно также получать обратное представление кода (из шестнадцатеричной системы счисления в десятичную, 40B00000)
Пример №1 . Представить число 133,54 в форме числа с плавающей точкой.
Решение . Представим число 133.54 в нормализованном экспоненциальном виде:
1.3354*10 2 = 1.3354*exp 10 2
Число 1.3354*exp 10 2 состоит из двух частей: мантиссы M=1.3354 и экспоненты exp 10 =2
Если мантисса находится в диапазоне 1 ≤ M Представление числа в денормализованном экспоненциальном виде .
Если мантисса находится в диапазоне 0,1 ≤ M Представим число в денормализованном экспоненциальном виде: 0.13354*exp 10 3

Пример №2 . Представить двоичное число 101.10 2 в нормализованном виде, записать в 32-битом стандарте IEEE754.
Решение .
Представление двоичного числа с плавающей точкой в экспоненциальном нормализованном виде .
Сдвинем число на 2 разрядов вправо. В результате мы получили основные составляющие экспоненциального нормализованного двоичного числа:
Мантисса M=1.011
Экспонента exp 2 =2
Преобразование двоичного нормализованного числа в 32 битный формат IEEE 754 .
Первый бит отводится для обозначения знака числа. Поскольку число положительное, то первый бит равен 0
Следующие 8 бит (с 2-го по 9-й) отведены под экспоненту.
Для определения знака экспоненты, чтобы не вводить ещё один бит знака, добавляют смещение к экспоненте в половину байта +127. Таким образом, наша экспонента: 2 + 127 = 129
Переведем экспоненту в двоичное представление.
Оставшиеся 23 бита отводят для мантиссы. У нормализованной двоичной мантиссы первый бит всегда равен 1, так как число лежит в диапазоне 1 ≤ M Для перевода целой части необходимо умножить разряд числа на соответствующую ему степень разряда.
01100000000000000000000 = 2 22 *0 + 2 21 *1 + 2 20 *1 + 2 19 *0 + 2 18 *0 + 2 17 *0 + 2 16 *0 + 2 15 *0 + 2 14 *0 + 2 13 *0 + 2 12 *0 + 2 11 *0 + 2 10 *0 + 2 9 *0 + 2 8 *0 + 2 7 *0 + 2 6 *0 + 2 5 *0 + 2 4 *0 + 2 3 *0 + 2 2 *0 + 2 1 *0 + 2 0 *0 = 0 + 2097152 + 1048576 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 = 3145728
В десятичном коде мантисса выражается числом 3145728
В результате число 101.10 представленное в IEEE 754 c одинарной точностью равно.
Переведем в шестнадцатеричное представление.
Разделим исходный код на группы по 4 разряда.
2 = 0100 0000 1011 0000 0000 0000 0000 0000 2
Получаем число:
0100 0000 1011 0000 0000 0000 0000 0000 2 = 40B00000 16