- •Глава 1. Понятие информатики, системы счисления, кодирование информации
- •1.1. Предмет и задачи информатики, понятие информации
- •Понятие информации
- •1.2. Информационные процессы и технологии
- •1.2.1. Формы представления информации
- •1.2.2. Понятие количества информации
- •1.2.3. Единицы измерения информации
- •1.3. Системы счисления
- •1.3.1. Типы систем счисления
- •1.3.2. Двоичная система счисления
- •1.3.3. Шестнадцатеричная система счисления
- •1.3.4. Перевод чисел из одной системы счисления в другую
- •1.4. Основы булевой алгебры
- •1.5. Кодирование информации в компьютере
- •1.5.1. Понятие кодирования
- •1.5.2. Кодирование числовой информации
- •1.5.3. Представление вещественных чисел
- •1.5.4. Кодирование текстовой информации
- •Универсальный код - Unicode
- •1.5.5. Кодирование графической информации
- •Растровая графика
- •Векторная графика
- •Фрактальная графика
- •1.5.6. Кодирование звука
- •1.5.7. Кодирование команд
- •1.5.8. Коды, исправляющие ошибки
1.5.3. Представление вещественных чисел
Система вещественных чисел в математических вычислениях предполагается непрерывной и бесконечной, то есть не имеющей ограничений на диапазон и точность представления чисел. Однако в компьютерах числа хранятся в регистрах и ячейках памяти с ограниченным количеством разрядов. Поэтому система вещественных чисел, представляемых в компьютере, является дискретной и конечной.
Для обработки в компьютерах очень больших чисел, например, определяющих расстояние между удаленными объектами или очень маленьких чисел, используемых для определения объектов микромира, например, размеры электронов, пришлось бы использовать числа с очень большой разрядностью. Это не возможно практически или очень сложно с точки зрения последующей обработки представить их в компьютере из-за его ограниченной разрядности. Ограничения касаются как диапазона, так и точности представления чисел, так как диапазон машинных чисел является конечным, образуя подмножество системы вещественных чисел. Для вычислений с такими числами использование чисел с фиксированной запятой является неэффективным, поэтому для их записи была предложена следующая форма. Как известно, десятичное число 23,56 можно представить как : 0,2356 * 102, а десятичное число 0,00038 записывается как: 0,38 * 10-3 . В данном представлении дробная часть числа называется мантиссой, которая умножается на 10 в степени, соответствующей порядку числа. Такая форма записи называется записью числа с плавающей точкой. В общем случае число X с основанием системы счисления q можно записать в виде:
Х = m * q P,
где m – мантисса, представленная в виде правильной дроби (для двоичной системы счисления 0,5<=M <1), p – порядок ( целое число в двоичной системе счисления), а q - основание системы счисления. Такая форма получила название нормализованного вещественного числа и включает знак числа, мантиссу, знак порядка и порядок. Таким образом, значащие цифры числа находятся в поле мантиссы, а значение порядка показывает реальное расположение двоичной точки в разрядах мантиссы, ( поэтому и используется термин «плавающая точка»), а бит знака определяет знак числа.
В математическом процессоре персональных компьютеров (сопроцессор архитектуры Х87 ) для представления вещественных чисел используются три стандартных формата данных:
-
одинарный формат- 32-разрядное нормализованное знаковое число, с 8-битным смещенным порядком и 24-битной мантиссой (старший бит мантиссы, равный 1, не хранится в памяти, и поэтому разрядность поля для хранения мантиссы равняется только 23 разрядам).
-
двойной формат– это 64-битное нормализованное знаковое число, имеет 11-разрядный смещенный порядок и 53-битную мантиссу (аналогично старший бит мантиссы в явном виде не представлен, размер поля под мантиссу равен 52 разрядам).
-
расширенный формат - это 80-битное знаковое число, имеет 15-битный порядок со смещением и 64-битную мантиссу, он позволяет хранить ненормализованные числа.
Сопроцессор использует такой формат действительного числа, чтобы обеспечить высокий диапазон представления чисел и высокую точность вычислений.