
- •1. Представление информации в эвм
- •1.1. Общие положения
- •1.2. Цифровая форма представления информации
- •1.3. Системы счисления
- •1.3.1. Общие положения
- •1.3.2. Двоичная система счисления
- •1.3.3. Смешанные системы счисления
- •1.3.4. Таблицы сложения и умножения в двоичной системе счисления
- •1.3.5. Перевод чисел из одной системы счисления в другую
- •1.4. Способы представления чисел со знаком
- •1.4.1. Общие положения
- •1.4.2. Дополнительный код.
- •1.4.3. Обратный код
- •1.5. Формы представления числовых данных
- •1.5.1. Общие положения
- •1.5.2. Представление числовых данных с фиксированной запятой
- •1.5.3. Представление числовых данных с плавающей запятой
- •2. Представление символьной информации
- •3. Представление графической информация
- •4. Oсновы схемотехники
- •4.1. Основы математической логики
- •4.2. Логические элементы
- •4.3. Проектирование логических схем
- •4.3.1. Комбинационные схемы и конечные автоматы
- •4.3.2. Синтез комбинационных схем
- •4.4. Элементы памяти (триггеры)
- •С амыми универсальными и сложными являются jk-триггеры. Они могут строиться как со статическим, так и с динамическим управлением. Универсальный jk-триггер
- •4.5. Регистры
- •4.6. Счетчики
- •5. Арифметические основы эвм
- •5.1. Основные положения
- •5.2. Арифметические операции с плавающей запятой
- •5.3. Десятичная арифметика
- •5.4. Схемы выполнения основных операций над числами с фиксированной запятой в двоичной системе счисления
- •6. Теоретические основы проектирования устройств обработки информации
- •6.1. Микропрограммы выполнения арифметических операций
- •6.1.1. Структура арифметико-логического устройства (алу) эвм
- •6.2.1. Язык микроопераций для представления алгоритмов выполнения арифметических операций
- •7. Основы проектирования операционной части алу
- •7.1. Этапы проектирования
- •7. 2. Проектирование операционной части алу
- •7.2.1. Разработка структурной схемы операционной части алу
- •7.2.2. Разработка функциональной схемы операционной части алу
- •8. Проектирование управляющей части алу
- •8.1. Способы построения управляющей части алу
- •8.2. Проектирование управляющей части алу на основе конечных автоматов
- •8.2.1. Общие вопросы проектирования устройств управления на основе конечных автоматов
- •8.2.2. Основные этапы проектирования схем мпа
- •8.2.3. Проектирование мпа на основе автомата Мура
- •8.2.4. Проектирование мпа на основе автомата Мили
- •8.3. Проектирование микропрограммных устройств управления
- •8.3.1. Основные принципы работы микропрограммных устройств управления
- •8.3.2. Типы микропрограммных устройств управления
- •8.3.4. Кодирование поля микроопераций регистра микрокоманд
- •8.3.5. Кодирование поля адресов схемы формирования адресов микрокоманд
- •9. Глоссарий
1.5.3. Представление числовых данных с плавающей запятой
Представление числовых данных в форме с плавающей запятой является основным в научно-технических расчетах. В последнее время числа в форме с плавающей запятой широко применяются и в области трехмерной компьютерной графики. Это операции над векторными данными в форме с плавающей запятой.
Действия над числами в форме с плавающей запятой не требуют масштабирования данных. Это основное достоинство арифметики с плавающей запятой.
Рассмотрим ряд чисел, представленных в разных формах:
Число |
Естественная форма |
Нормальная форма |
||||
Целая часть |
Дробная часть |
Мантисса |
Масштабный коэффициент |
Для основания системы счисления =10 |
||
Значащие цифры мантиссы |
Порядок |
|||||
350 |
+ 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 |
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 с нулевым порядком.
.
При этом произведение 22 после переводов исходных чисел из десятичной системы счисления в двоичную и результата – обратно в десятичную ЭВМ выдавала в виде дробного числа: 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 байт).
Вопросы для самопроверки
Назовите две основные причины использования двоичной системы счисления в ЭВМ.
Назовите основной способ перевода целых чисел из одной системы счисления в другую.
Назовите основной способ перевода дробных чисел из одной системы счисления в другую.
В чем причина использования в машинной арифметике дополнительного и обратного кодов.
Определите асимметрию дополнительного кода.
Назовите особенности и причины использования модифицированного дополнительного кода.
Назовите особенности использования обратного кода (преимущества и недостатки).
Охарактеризуйте форму представления чисел с фиксированной запятой.
Назовите основные преимущества и недостатки использования формы представления чисел с фиксированной запятой для машинной обработки данных.
Охарактеризуйте форму представления чисел с плавающей запятой.
Назовите основные преимущества и недостатки использования формы представления чисел с плавающей запятой для машинной обработки данных.
Каковы параметры форматов данных с фиксированной запятой, которые Вам известны.
Каковы параметры форматов данных с плавающей запятой, которые Вам известны.