Рубрика:  Компьютерная математика → Основы
Даётся определение экспоненциальной и научной записи числа. Приводятся примеры десятичной и двоичной записи (в двоичной системе счисления). Для полного понимания статьи читатель должен владеть двоичной системой счисления и уметь переводить произвольное десятичное число (в том числе дробное) в двоичную запись.
Базовое определение
Любое десятичное число, назовём его $z$, можно представить в так называемой экспоненциальной записи: $$ z = m imes b^
Когда основание $b=10$, в компьютерных программах принимается запись чисел в одну строку, используя символ e (или E) для обозначения порядка показательной функции. Например, 1,23×10 2 = 1,23e2, 123000×10 -3 = 123000e-3 или 765,43×10 5 = 765,43E5.
Нормализованная (научная) нотация
Экспоненциальная запись называется нормализованной , когда $1 leq |m| 2 . Такое представление чисел также называют научным . Любое десятичное число может быть представлено в такой научной нотации единственным образом .
Для $b=2$ ситуация несколько сложнее. Дело в том, что в десятичной записи нам достаточно сдвинуть запятую влево или вправо (деля или умножая на 10) добиваясь выполнения условия $1 leq |m| 4 . Другой пример: 0,01 = 1,28×2 −7 .
Двоичная научная нотация
Поскольку в компьютерной арифметике числа представляются в двоичном формате (реже в двоично-десятичном), то нам потребуется перевести число из десятичной записи в двоичную. Кажется, что это сделать очень просто, например, 17,125(10) = 10001,001(2) = 1,0001001(2)×2 4 . Однако основная проблема здесь заключается в том, что не каждая конечная десятичная дробь будет иметь конечную форму записи в двоичной нотации. Например, 0,1(10) = 0,0(0011)(2) = 1,1(0011)(2)×2 −4 . То есть здесь мы получаем бесконечную периодическую дробь, с периодом 0011. Этот факт невозможности точного представления десятичной дроби в двоичной системе нужно очень хорошо понимать при детальном исследовании компьютерной арифметики .
Примеры
Вы можете проверить себя, разобрав примеры ниже.
Алгоритм конвертирования десятичной записи в научную двоичную запись Все права защищены © Артём Михайлович Караваев, 2016. При копировании материала прошу указывать ссылку на источник
Онлайн калькулятор для перевода чисел в экспоненциальный вид и обратно, другим языком для вычисления чисел с буквой E.
На компьютере (в частности в тексте компьютерных программ) экспоненциальную запись записывают в виде MEp (пример 1e-10), где:
M — мантисса,
E (exponent) — буква E в числе, означающая «*10^» («…умножить на десять в степени…»),
p — порядок.
Это необходимо для представлении очень больших и очень малых чисел, а также для унификации их написания.
Многие пользователи калькуляторов столкнулись с вопросом: Что означает буква "E" в цифровом калькуляторе?
Это Экспоненциа́льная за́пись— представление действительных чисел в виде мантиссы и порядка. Удобна для записи очень больших и очень малых чисел.
Например, расшифруем эти числа:
Е — это 10, цифры после Е — показатель степени, в который возводится 10.
0.66E004 = 0,66 * 10^4 = 0.66*10000 = 6600
0.66E-007 = 0.66 * 10^(-7) = 0.66 * 0.0000001 = 0.000000066
0.66E11 = 0.66 * 10^11 = 0.66 * 100000000000 = 66000000000
Также калькулятор способен не только расшифровать большие или малые числа с буквой E но и сделать обратное действие, т.е перевести числа в экспоненциальную запись.
Вычислим числа с буквой "е":
1e-10 = 0.0000000001 — ноль целых одна десятимиллиардная
6e+17 = -600000000000000000000
Есть число 2.6E3. Что означает буква Е = 2 600 — две тысячи шестьсот
1Е+6 = равен миллиону 1 000 000
Министерство образования Российской Федерации
Томский политехнический университет
Кафедра компьютерных измерительных систем и метрологии
И Н Ф О Р М А Т И К А
Кодирование информации. Основные форматы данных.
Методические указания для проведения
Томск 2009
Время выполнения : 2 часа
Разработали : Казаков В. Ю.
1. Цель работы: изучение понятия – «машинное представление информации», машинное представление действительных чисел, машинное представление текстовой информации (ASCII – коды).
2. Используемые технические средства: персональный компьютер, ОС Windows 9x/XP.
3. Программа работы.
3.1. Ознакомиться с базовыми положениями «машинного представления действительных чисел», используя Приложение 1.
3.2. Ознакомиться с двоичным кодированием текстовой информации с помощью ASCII -кодов, используя Приложение 2 .
3.4. Выполнить задания своего варианта.
3.5.Сделать выводы и оформить отчет о проделанной лабораторной работе.
Формы представления чисел в ЭВМ
Числа с фиксированной точкой
Ранее рассмотренное машинное представление целого числа можно трактовать как представление числа с фиксированной точкой. Число с фиксированной точкой имеет один знаковый разряд, остальные разряды являются значащими. «Фиксированная точка» означает, что любое целое число можно трактовать как некоторую дробь, умноженную на соответствующий масштабный множитель. К достоинствам использования чисел с фиксированной точкой относятся простота выполнения арифметических операций. К недостаткам – небольшой диапазон представления чисел.
Числа с плавающей точкой
В формате с фиксированной точкой нельзя представить очень большие числа или очень маленькие. При выполнении деления двух больших чисел, как правило, теряется дробная часть частного. При работе в десятичной системе счисления ученые давно нашли выход из положения, применяя для представления числовых величин так называемую научную нотацию (способ записи). Так, число 976 000 000 000 000 можно представить в виде 9.76·10 14 , а число 0.000 000 000 000 097 6 – в виде 9.76·10 — 14 . При этом разделительная точка динамически сдвигается в удобное место, а для того чтобы "уследить" за ее положением в качестве второго множителя – характеристики, – используется степень числа 10 (основание характеристики). Это позволяет с помощью небольшого числа цифр (т.е. чисел с ограниченной разрядностью) с успехом представлять как очень большие, так и очень малые величины.
Этот же подход можно применить и в двоичной системе счисления. Число можно представить в виде
Компоненты такого представления можно сохранить в двоичном слове, состоящем из трех полей:
• поле знака числа (плюс или минус);
Основание характеристики q во всех существующих стандартах такой формы представления подразумевается неявно и не сохраняется, поскольку оно одинаково для всех чисел.
Принципы представления двоичных чисел в формате с плавающей точкой лучше пояснять на примерах. На рисунке схематически показан
32-разрядный формат с плавающей точкой. В крайнем левом бите слова хранится знак числа (как обычно, положительному числу соответствует значение 0, а отрицательному – значение 1). В следующих восьми битах хранится значение порядка. Для представления порядка используется так называемый смещенный формат .
Для получения действительного двоичного кода порядка необходимо вычесть из значения в этом поле фиксированное смещение. Обычно смещение равно (2 k -1 – 1). Например, при k =8 смещение равно 127. Последние 23 бита отводятся под значение мантиссы. Любое число можно представить в виде числа с плавающей точкой множеством способов. С изменением порядка точка перемещается (плавает) влево или вправо. Например,
Поэтому для установления однозначности при записи чисел принята нормализованная форма записи числа . Мантисса нормализованного числа может изменяться в диапазоне: (q =2 , ). Таким образом, в нормализованных числах первая цифра после точки должна быть значащей. Например,
Следовательно, в двоичном представлении нормализованная мантисса числа, отличного от нуля, всегда имеет вид:
.
Здесь, b – это произвольная двоичная цифра (0 или 1). Так как старший значащий разряд всегда хранит 1, то его нет смысла запоминать, просто необходимо учитывать это факт при совершении дальнейших действий. Поэтому в 23-х битах фактически хранится код 24-х битовой мантиссы. Например,
0.11010001· 2 10100 → 0 10010011 10100010000000000000000
– 0.11010001· 2 10100 → 1 10010011 10100010000000000000000
0.11010001· 2 -10100 → 0 01101011 10100010000000000000000
– 0.11010001· 2 -10100 → 1 01101011 10100010000000000000000
Обратите внимание на следующие особенности:
- знак сохраняется в старшем бите слова;
- первый разряд мантиссы всегда равен 1, и в поле мантиссы не хранится;
- к действительному значению порядка прибавляется смещение 127, и в поле порядка хранится эта сумма;
- основание характеристики всегда равно 2 и поэтому не хранится.
На рис. 3.2 показано, какой диапазон чисел можно представить в рассмотренном 32-разрядном формате с плавающей точкой. Если в слове такой же длины хранить целые числа в дополнительном коде, то диапазон представления будет охватывать 2 32 чисел от –2 31 до 2 31 –1 включительно. В формате с плавающей точкой можно хранить:
- отрицательные числа от – (1– 2 –24 ) × 2 128 до – 0.5 × 2 –127 ;
- положительные числа от 0.5 × 2 –127 до (1–2 –24 ) × 2 128 .
Формат с плавающей точкой не позволяет представить больше чем в формате с фиксированной точкой отличающихся друг от друга числовых величин – их количество по-прежнему равно 2 32 для слова длиной 32 бит. Речь идет только о том, что эти числовые величины по-иному распределены на числовой оси. Интервал между соседними числами (кодовыми комбинациями, отличающимися значением в младшем разряде мантиссы) – переменный и зависит от абсолютной величины числа. "Соседние" числа, ближе расположенные к центру числовой оси, отличаются на меньшую величину, чем "соседние" числа более удаленные от центра числовой оси (рис. 3.3).
Для унификации представления чисел с плавающей точкой институт инженеров по электротехнике и радиоэлектронике (IEEE) разработал стандарт IEEE 754. В последнее десятилетие практически все процессоры проектируются с учетом этого стандарта. Приведенный выше пример представляет формат с плавающей точкой обычной точности.
Таким образом, для представления числа в формате IEEE 754 с плавающей точкой с обычной точностью необходимо придерживаться следующего алгоритма:
1) представить число в двоичном виде – 10.62510 = 1010.101;
2) записать число в научной нотации, мантисса должна быть нормализована – 1010.101 = 0.1010101· 2 4 = 0.1010101· 2 100 ;
3) записать знак числа – 0;
4) записать порядок – 410 + 12710 = 100 + 0111 1111=1000 0011;
5) привести окончательную запись числа – 0 10000011 01010100000000000000000.
Форматы представления текста в ЭВМ
Для представления текстовой информации используется алфавитное кодирование, т.е. каждому символу – значку, цифре или букве, ставится в соответствии его двоичный код. Американский национальный институт стандартов (ANSI) принял 8 – битный код для текстовой информации ASCII –American Standard Code for Information Interchange. Изначально предполагалось использовать только 7 бит (127 – вариантов символов), а восьмой оставить для контроля. Поэтому в стандарте строго регламентированы только первые 128 (0 – 127) позиций. Широкое распространение ASCII – кодов привело к тому, что их стало не хватать для символов различных языков и других целей.
Поэтому оставшиеся возможности (128 – 255) стали использовать под различные национальные кодировки. В связи с этим первые 128 позиций строго регламентированы, а оставшиеся позиции используются по мере необходимости. В России для отображения кириллицы широкое распространение получили следующие варианты кодировок: КОИ8, 866-MS DOS, 1251-Windows.