Микропроцессорная техника: практический курс : учебное пособие для студентов Физико-технологического института, обучающихся по направлениям подготовки "Ядерная физика и технологии", "Биомедицинская инженерия"


Download 0.63 Mb.
Pdf ko'rish
bet55/74
Sana29.03.2023
Hajmi0.63 Mb.
#1306393
1   ...   51   52   53   54   55   56   57   58   ...   74
Bog'liq
978-5-321-02171-21 2012 (1)

Числа с плавающей точкой. Тип данных float. Диапазон изме-
нения чисел этого формата:
±1.175494 · 10
−38
. . .
±3.402823 · 10
+
38
.
Четырехбайтовое (32 бита) число в стандарте IEEE-754 состоит из
двух компонентов: мантиссы (M) и порядка (P)
±× 2
P
.
Порядок (экспонента) – это однобайтовое двоичное целое со знаком
(
−127...+128), представленное в смещенном коде. Смещенный код E
числа P, находящегося в диапазоне
−127...+128, получают следующим
образом:
+ 127.
Мантисса (M) – это трехбайтовое (24 бита) число 1
≤ |í| < 2 с фикси-
рованной двоичной точкой, представленное в прямом коде со знаком.
96


4.4. Интерфейс между C51 и ассемблером
В нормализованной мантиссе старший (наиболее значимый) бит все-
гда равен единице, а следом за ним всегда идет двоичная точка. При
этом нет никакой необходимости сохранять старший бит и двоичную
точку: достаточно сохранить только оставшиеся 23 бита. Это дает до
семи значащих десятичных цифр. Высвободившийся бит используют
для хранения знака мантиссы (S): 1 – минус, 0 – плюс. На диаграмме
биты порядка обозначены буквой E, а биты мантиссы – буквой M.
áÄÒÅÓ
+0
+1
+2
+3
æÏÒÍÁÔ SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM
Машинный нуль в формате с плавающей точкой представлен наи-
меньшим возможным положительным числом из диапазона float:
=
−127, = 1.0, = 0. Легко видеть, что машинный нуль представ-
лен шестнадцатеричным кодом 00000000H.
Рассмотрим пример представления числа (
−12.5) в формате float.
Вначале запишем число в нормализованном виде:
−12.5 = −1.5625 × 2
3
.
Очевидно, что порядок = 3, а в смещенном коде = 130, т.е.
10000010B. Преобразуем модуль мантиссы в двоичный код:
1.5625 = 1 + 1/2 + 1/16 = 1
· 2
0
+
1
· 2
−1
+
1
· 2
−4
.
Мантисса = 11001000 00000000 00000000B, знак = 1. Старший бит
всегда равен 1, его никогда не сохраняют. Оставшиеся 23 бита мантис-
сы дают 1001000 00000000 00000000B. Собирая все вместе, получаем,
что в формате float число
−12.5 представлено шестнадцатеричным
четырехбайтовым кодом C1480000H.
áÄÒÅÓ
+0
+1
+2
+3
æÏÒÍÁÔ
SEEEEEEE EMMMMMMM MMMMMMMM MMMMMMMM
ä×ÏÉÞÎÙÊ 11000001 01001000 00000000 00000000
HEX
C1
48
00
00

Download 0.63 Mb.

Do'stlaringiz bilan baham:
1   ...   51   52   53   54   55   56   57   58   ...   74




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling