Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕЩИНСКИЙ.docx
Скачиваний:
16
Добавлен:
21.12.2018
Размер:
471.39 Кб
Скачать

1.3.3.3. Вещественные типы данных

Работая с вещественными числами, следует иметь в виду два аспекта:

– способы визуализации чисел;

– способы представления чисел в памяти ЭВМ.

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

Мы привыкли записывать их в виде десятичных дробных чисел, в которых знак запятой разделяет целую и дробную часть (например, 5,8; 138,654). В информационных технологиях при записи вещественных чисел в качестве разделителя целой и дробной части принято, как правило, вместо запятой писать точку (то есть 5.8; 138.654).

При вводе или выводе вещественных чисел используют два способа (формата) записи:

– формат с фиксированной точкой,

– формат с плавающей точкой.

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

При таком виде записи точка не фиксирована, ее положение определяется величиной порядка. Точка как бы плавает в зависимости от величины порядка.

Например, число 3.186 можно записать как

31.86E-1 = 3.186E0 = 0.3186E+1,

что означает

31.86×10-1 = 3.186×100 = 0.3186×101.

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

в 10-чной системе 3.1415926 = 0.31415926E+1,

в 2-чной системе 1000.00012 = 0.100000012E+100 (здесь 100 – двоичная форма десятичного числа 4).

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

в 10-чной системе 0.00234 = 2.34E–3,

в 2-чной системе 101.11 = 1.0111E+10; 0.0011 = 1.1E–11 (здесь степени 10 и 11 – это двоичная форма десятичных чисел 2 и 3).

Вещественное число с плавающей точкой состоит из двух частей – мантиссы и порядка, разделенных специальным знаком (латинская буква E для одинарной точности и буква D для двойной точности). Мантисса представляет собой вещественное число с фиксированной точкой. Порядок задается целым числом, указывающим, в какую степень надо возвести число 10, чтобы при умножении результата на мантиссу получить вещественное число в формате с фиксированной точкой.

Как мантисса, так и порядок могут иметь знак (знак плюс обычно не указывается). Если мантисса по модулю <1, причем первая цифра не равна 0, то такой вид записи вещественного числа с плавающей точкой называется нормализованным (0.68314Е+2).Для представления таких чисел в памяти компьютера используются нормализованная и нормализованная экспоненциальная форма.

Обычно различают число с одинарной и двойной точностью. В первом случае при вводе или выводе числа в качестве разделителя мантиссы и порядка указывается E. В памяти ЭВМ такое число занимает обычно 4 байта. Во втором случае в качестве разделителя – D, в памяти ЭВМ число с двойной точностью занимает обычно 8 байтов. Этот тип обеспечивает значительно большую точность вычисления, чем одинарная точность.

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

В этом случае при записи числа в качестве разделителя мантиссы и порядка используется латинская буква E. В памяти ЭВМ такое число занимает обычно 4 байта.