Рубрика:&nbsp Компьютерная математика → Основы

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

Базовое определение

Любое десятичное число, назовём его $z$, можно представить в так называемой экспоненциальной записи: $$ z = m imes b^, $$ где $m$ — мантисса , $b$ — основание показательной функции, а $e$ — порядок ( экспонента ). Такое представление не является единственно возможным, поскольку различные комбинации мантиссы, основания и порядка могут давать одно и то же число. Например, 123 = 1,23×10 2 = 3×41 1 = 123000×10 -3 = 123×2 0 . Среди всех таких экспоненциальных записей нас будет интересовать двоичная и десятичная, то есть основание $b$ может быть равно либо 2, либо 10.

Когда основание $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.