русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Представление числовых данных с плавающей запятой


Дата добавления: 2014-11-27; просмотров: 2488; Нарушение авторских прав


Представление числовых данных в форме с плавающей запятой является основным в научно-технических расчетах. В последнее время числа в форме с плавающей запятой широко применяются и в области трехмерной компьютерной графики. Это операции над векторными данными в форме с плавающей запятой.

Действия над числами в форме с плавающей запятой не требуют масштабирования данных. Это основное достоинство арифметики с плавающей запятой.

Рассмотрим ряд чисел, представленных в разных формах:

Число Естественная форма Нормальная форма
Целая часть Дробная часть Мантисса Масштабный коэффициент Для основания системы счисления =10
Значащие цифры мантиссы Порядок
+ 350 ,0 + 0,35 ´ 10+3 + 35 + 3
-35 – 35 ,00 – 0,35 ´ 10+2 – 35 + 2
0,35 + 0 ,350 + 0,35 ´ 100 + 35
0,035 + 0 ,035 + 0,35 ´ 10–1 + 35 – 1

 

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

Естественная форма записи числа соответствует форме представления чисел с фиксированной запятой. Для такого представления важно место запятой. Для представления всех четырех чисел без масштабирования требуется шестиразрядный регистр (три разряда для целой части числа и три – для дробной).

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

Например: 350,0 = 0,35 ´ 103. В общем случае число А в нормальной форме записывается как: А = m ´ qn, где:



m мантисса - нормализованная дробь,

q основание системы счисления,

n порядок числа.

Нормальная форма представления соответствует форме представления чисел с плавающей запятой. Это полулогарифмическая форма представления чисел. Она предоставляет более широкий диапазон представления чисел при ограниченной разрядности регистров хранения.

Основание системы счисления (q) задается по умолчанию. Для большинства микропроцессоров q=2.

В случае задания основания системы счисления по умолчанию, число 350,0 может быть записано в виде пары чисел: 35 и 3. Первое число – это запись значащих чисел, второе число (порядок числа) можно интерпретировать, как координату запятой. В данном случае место запятой – после третьей позиции цифр числа. Отсюда вытекает и название формы представления чисел – с плавающей запятой.

Порядок числа может быть как положительным, так и отрицательным. Для чисел больших единицы – порядок положительный, для дробных чисел – отрицательный.

Для упрощения обработки чисел в форме с плавающей запятой используют "сдвинутый" порядок - характеристику. Характеристика – это порядок "сдвинутый" в область положительных значений. Для получения характеристики из порядка в старший разряд порядка прибавляют 1.

Например, пусть для записи порядка используются три двоичных разряда. С учетом знака в эти разряды можно записать числа в диапазоне от минус 4 до плюс 3:

 

Порядок   Порядок в дополнительном коде Характеристика (сдвинутый порядок)
–4(10) 1,00(2) 000(2)
–3(10) 1,01(2) 001(2)
–2(10) 1,10(2) 010(2)
–1(10) 1,11(2) 011(2)
0(10) 0,00(2) 100(2)
+1(10) 0,01(2) 101(2)
+2(10) 0,10(2) 110(2)
+3(10) 0,11(2) 111(2)

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

Таким образом, для представления чисел в форме с плавающей запятой требуется регистр с тремя полями для записи знака числа (знака мантиссы), мантиссы и характеристики (порядка со знаком).

Как правило, в ЭВМ отрицательные значения чисел (мантиссы) задаются в прямом коде.

Мантисса – это нормализованная дробь.

По классическому определению, нормализованная дробь - это дробь, у которой первая цифра после запятой отлична от нуля, т.е., для нормализованной дроби должно выполняться условие: ÷mê<1

Для двоичной системы счисления нормализованная дробь имеет вид 0,1 а2 а3 и т.д., то есть |m|>1/2.

Первые ЭВМ использовали именно такие мантиссы. Но, при такой записи, целые числа представлялись с погрешностью. Например, число 1 представлялось в виде мантиссы: 0,111111111…11 с нулевым порядком.

.

При этом произведение 2´2 после переводов исходных чисел из десятичной системы счисления в двоичную и результата – обратно в десятичную ЭВМ выдавала в виде дробного числа: 3,99999.

В современных ЭВМ, например в РС Intel и PDP-11, мантиссу определяют как неправильную дробь, целая часть которой равна 1, т.е. 2>m ≥1.

В этом случае целые числа задаются без погрешностей. Но дело тут не столько в свойствах систем счисления, сколько в методах перевода чисел. Например, число 1 можно задавать без погрешности и при дробной мантиссе: 1 = 0,1(2) ´ 21

В зависимости от требуемой точности представления чисел в ЭВМ используется ряд форматов для хранения и обработки чисел форме с плавающей запятой.

Например, в МП Intel предусмотрены три формата: короткий формат (обычной точности), формат двойной точности и расширенный (вещественный) формат (real).

Два первых формата используются только для хранения данных в памяти. Перед вычислениями числа из этих форматов переводятся в вещественный формат.

Числа с плавающей запятой в формате обычной и двойной точности при загрузке в модуль обработки автоматически преобразуются в формат расширенной точности. Для исключения потери точности в длинных цепочках вычислений предусмотрена возможность хранения промежуточных результатов вычислений в памяти и в формате расширенной точности

Короткий формат: знак числа (мантиссы) – 1 бит, характеристика (сдвинутый порядок): – 1 байт и мантисса: – 3 байта. При хранении в памяти первую значащую цифру мантиссы (в старых ЭВМ – единицу после запятой или, в современных ЭВМ, – единицу до запятой) не записывают (задают по умолчанию). В результате этого, короткий формат чисел с плавающей запятой при хранении содержит 32 бита (4 байта).

Формат двойной точности: знак числа (мантиссы) – 1 бит, характеристика (сдвинутый порядок): – 11 бит и мантисса: – 53 бита (включая первую скрытую цифру). Всего, с учетом скрытой цифры мантиссы, – 64 бита (8 байт).

Расширенный (вещественный) формат: знак числа (мантиссы) – 1 бит, характеристика (сдвинутый порядок) – 15 бит, мантисса – 64 бит (8 байт), включая первую цифру мантиссы. Всего – 80 бит (10 байт).

Вопросы для самопроверки

1. Назовите две основные причины использования двоичной системы счисления в ЭВМ.

2. Назовите основной способ перевода целых чисел из одной системы счисления в другую.

3. Назовите основной способ перевода дробных чисел из одной системы счисления в другую.

4. В чем причина использования в машинной арифметике дополнительного и обратного кодов.

5. Определите асимметрию дополнительного кода.

6. Назовите особенности и причины использования модифицированного дополнительного кода.

7. Назовите особенности использования обратного кода (преимущества и недостатки).

8. Охарактеризуйте форму представления чисел с фиксированной запятой.

9. Назовите основные преимущества и недостатки использования формы представления чисел с фиксированной запятой для машинной обработки данных.

10. Охарактеризуйте форму представления чисел с плавающей запятой.

11. Назовите основные преимущества и недостатки использования формы представления чисел с плавающей запятой для машинной обработки данных.

12. Каковы параметры форматов данных с фиксированной запятой, которые Вам известны.

13. Каковы параметры форматов данных с плавающей запятой, которые Вам известны.




<== предыдущая лекция | следующая лекция ==>
Представление числовых данных с фиксированной запятой | ПРЕДСТАВЛЕНИЕ СИМВОЛЬНОЙ ИНФОРМАЦИИ


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.146 сек.