Внутреннее представление вещественных данных

 

Формат Single (4 байта)

31 30 23 22 0

 

S E (8 бит) M (23 бита)

 


если 0<E<255, то (-1)s*2(E -127)*(1.M)

если E=0 и M≠255, то (-1)s*2(E -127)*(1.M)

1. X = f (S, E, M) =  если E=0 и M=0, то (-1)s*0

если E=255 и M=0, то (-1)s*∞

если E=255 и M≠0, то X-нечисло (NAN, Not-a-Number).

Формат real (6 байт)

47 46 8 7 0

 

S M (39 бит) Е (8 бит)

 

0, если е=0

Х = f (S, M, E) =

(-1)S*2(E-129) *(1.М), если 0<Е<255

Формат double (8 байтов)

63 62 52 51 0

 

S E (11 бит) M (52 бита)

 

Х = (-1)s*2(E-01023)*(1.M).

 

 




Практическая часть

 

Считывание вещественных чисел из памяти ЭВМ.

Регистрация:

– выбрать пункт меню «Информатика»;

– в появившемся подменю выбрать пункт GR440;

– после появления приглашения D:\INFORM\GR440 запустить рабочую среду, набрав на клавиатуре Lab6 и нажав [Enter].

Задание 1. Число -23 представить в ФПТ в форматах single, real и double и разместить в памяти ПК, начиная с адреса ds: OOCOh. Результаты преобразования и перехода от значения числа к представлению его в памяти занести в таблицу 2.

 

Таблица 2. Переход от X10 к отображению в памяти

Число Алгебраическая запись Формат 16-ричное представление числа Адрес Отображение в памяти
-23 -1.0111*2+4 single С1 B8 00 00 ds:00C0h 00 00 B8 C1
-23 -1.0111*2+4 real B8 00 00 00 00 85 ds:00C8h 85 00 00 00 00 B8
-23 -1.0111*2+4 double C0 37 00 00 00 00 00 00 ds:00D0h 00 00 00 00 00 00 37 C0

 

Комментарии к таблице 2:

Х=-23=-1.01112=-1.0111*2+4

В формате single:

порядок Е=4+127=131=83h=100000112

Sg E M

Х: 1 10000011 01110000000000000000000

Х: 1100 0001 1011 1000 0000 0000 0000 0000

Х: C 1 B 8 0 0 0 0

Число Х=-23 в формате single в 16-ричной СС представляется как Х:С1В80000h и отображается в памяти в обратном порядке Х:00 00 В8 С1.

В формате real:

порядок Е=4+129=133=85h=100001012

Sg M E

Х: 1 011100000000000000000000000000000000000 10000101

Х: 1011 1000 0000 0000 0000 0000 0000 0000 0000 0000 1000 0101

Х: B 8 0 0 0 0 0 0 0 0 8 5

Число Х=-23 в формате real в 16-ричной СС представляется как Х:В80000000085h и отображается в памяти в обратном порядке Х:85 00 00 00 00 В8.

В формате double:

порядок E=4+1023=1027=403h=100000000112

Sg E M

Х: 1 10000000011 0111000000000000000000000000000000000000000000000000

Х: 1100 0000 0011 0111 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000

Х: C 0 3 7 0 0 0 0 0 0 0 0 0 0 0 0

Число Х=-23 в формате double в 16-ричной СС представляется как Х:С037000000000000h и отображается в памяти в обратном порядке Х:00 00 00 00 00 00 37 С0.

Задание 2. По адресам ds:2h, ds:2ah, ds:66h считать из памяти числа, в режиме отображения byte, представленные в форматах single, real и double, и найти их десятичный эквивалент. Результаты представить в виде таблицы 3.

Вариант 8 (адреса: ds:1Eh, ds:54h, ds:9Eh)

Установить подокно с отображением оперативной памяти (ОП) на область, начинающуюся с адреса ds:1Eh:

– Ctrl+G;

– В открывшемся диалоговом окне набрать адрес ds:1Eh и нажать <Enter>;

Установить режим отображения byte, после чего нажать <Enter>;

– ALT+F10;

– Переместите курсор на пункт Display as и нажмите <Enter>;

– Выберите требуемый режим отображения (byte) и нажмите <Enter>;

– Перенести представление числа в памяти, расположенного по адресу ds:1Eh, в Таблицу 2.

Установить подокно с отображением оперативной памяти (ОП) на область, начинающуюся с адреса ds:54h:

– Ctrl+G;

– В открывшемся диалоговом окне набрать адрес ds:54h и нажать <Enter>;

– Перенести представление числа в памяти, расположенного по адресу ds:1Eh, в Таблицу 2.

Установить подокно с отображением оперативной памяти (ОП) на область, начинающуюся с адреса ds:9Eh:

– Ctrl+G;

– В открывшемся диалоговом окне набрать адрес ds:9Eh и нажать <Enter>;

– Перенести представление числа в памяти, расположенного по адресу ds:1Eh, в Таблицу 3.

Таблица 3. Переход от отображения в памяти к Х10

Адрес Формат      
ds:0002h single      
ds:002аh real      
ds:0066h double      

 

 



Список литературы

 

1. Информатика, ч.I: Методические указания к лабораторным работам / Сост. Н.И. Иопа. – Рязань: РГРТА 2002.

2. Информатика. Базовый курс / С.В. Симонович и др. СПб.: Питер, 2001, с. 114–120.

3. Шафрин Ю.А. Информационные технологии. М.: Лаборатория Базовых знаний, 1998, с. 164–179.

 

 




double arrow
Сейчас читают про: