- •Глава 1. Представление данных в компьютере
- •1.1. Принципы представления данных
- •1.2. Системы счисления, используемые для представления данных (с основанием 2n)
- •Двоично-восьмеричная таблица
- •1.3. Представление символьной информации в пк
- •1.4. Форматы представления чисел
- •Форматы чисел в памяти пк
- •Упражнения
- •Глава 2. Основы алгоритмизации
- •2.1. Алгоритмы и величины
- •Данные и величины
- •2.2. Линейные вычислительные алгоритмы
- •2.3. Ветвления и циклы в вычислительных алгоритмах Составим алгоритм решения квадратного уравнения
- •2.4. Вспомогательные алгоритмы и процедуры
- •Упражнения
1.4. Форматы представления чисел
В математике широко используются две формы записи чисел: естественная и нормальная. Примеры естественной формы записи чисел: 1 256 – целое число, 0.0357 – правильная дробь, 4.89760 – неправильная дробь.
Запись одного числа в нормальной форме может быть различной в зависимости от ограничений, накладываемых на ее форму. Например, число 1256 может быть записано так: 1 256= 1,256*103=0,1256* 104 = 12 560*10-1 и т.д.
При естественном представлении чисел в ЭВМ устанавливаются длины разрядной сетки, а также целой и дробной частей. При этом распределение разрядов между целой и дробной частями не изменяется и остается постоянным независимо от величины числа. В связи с этим такое представление числа называется формой с фиксированной запятой. В современных вычислительных машинах эта форма используется преимущественно для представления целых чисел.
Так как числа бывают положительные и отрицательные, то в разрядной сетке при машинном представлении один разряд отводится под знак числа, а остальные образуют поле числа. В знаковый разряд, который обычно располагается перед старшим разрядом числа, записывается информация о знаке числа. Знак положительного числа « + » изображается символом 0, а знак отрицательного числа « – » – символом 1. Если поле числа включает в себя n разрядов, то диапазон представления целых чисел в этом случае ограничивается значениями – (2n -1) и +(2n – 1).
Представление числа в ЭВМ в нормальной форме обычно называют представлением с плавающей запятой, так как положение запятой в записи числа, как показывают приведенные примеры, в этом случае может изменяться. В нормальной форме запись числа А имеет структуру
А= m°qp ,
где m – мантисса числа А; р – порядок числа А (характеристика числа).
Чтобы избежать неоднозначности представления чисел, используют так называемую нормализованную форму: m – число с запятой, фиксированной после определённого разряда. В двоичной системе представления чисел в ПК запятая фиксируется после первой значащей цифры (единицы) и поскольку кроме единицы там ничего быть не может, то эту единицу можно не хранить в памяти ЭВМ (скрытый или неявный бит).
В других системах счисления запятую в мантиссе принято располагать перед первой значащей цифрой и для m справедливо следующее условие:
q-1 ≤ |mA| <1,
где q – основание системы счисления.
Так, числа 12,5*102 и – 0,00543*10-5 в нормализованном виде в соответствии с указанным выше условием должны быть записаны следующим образом:
0,125*104; – 0,543*10-7.
Формат машинного изображения числа с плавающей запятой содержит знаковые части и поля для мантиссы и порядка. Кодирование знаков остается таким же, как и при представлении числа в форме с фиксированной запятой.
Существует стандарт на представление чисел в ПК: IEEE-754 и более новый и общий IEEE-854.
В процессоре все числа хранятся в едином 80-битном расширенном формате. В оперативной памяти целые числа могут занимать 16, 32 или 64 бита, а числа с плавающей точкой – 32, 64 или 80 бит. 18-разрядные десятичные числа автоматически преобразуются в расширенный формат при загрузке в регистры процессора. Результаты вычислений при записи в оперативную память преобразуются в исходный формат, который был задан до загрузки в регистры процессора.