Помощь в написании студенческих работ
Антистрессовый сервис

Вещественные числа. 
Способы представления и хранения в ЭВМ

КонтрольнаяПомощь в написанииУзнать стоимостьмоей работы

Задание 2. По адресам ds:2h, ds:2ah, ds:66h считать из памяти числа, в режиме отображения byte, представленные в форматах single, real и double, и найти их десятичный эквивалент. Результаты представить в виде таблицы 3. Вещественные числа в отличие от целых представляются и хранятся в памяти в прямом коде, их представление стандартизовано. Согласно стандарту IEЕЕ — 754 для ПК IBМ PC вводят три… Читать ещё >

Вещественные числа. Способы представления и хранения в ЭВМ (реферат, курсовая, диплом, контрольная)

Контрольная работа

«Вещественные числа: способы представления и хранения в ЭВМ»

Рязань, 2006 г.

1. Цель работы

1. Изучение основных типов данных с плавающей точкой, принятых стандартов и их представление в современных ЭВМ.

2. Наработка практических навыков обращения с вещественными числами на компьютере (запись, считывание, хранение).

2. Теоретическая часть

2.1 Вещественные числа

Вещественные числа (REAL) — числа, имеющие дробную часть. Для их представления в компьютере используется так называемое представление с плавающей точкой (ПТ), основанное на алгебраической записи чисел в виде:

X = ±Mxq±Пх

плавающий вещественный число компьютер где q — основание системы счисления;

Пх — порядок числа (целое);

Мх — мантисса (значащая часть числа), обычно представляется дробью:

Mx = ±0.d1d2… dn.

Условие di?0 является характерным признаком нормализованного числа в ФПТ. Нормализованное представление используется для однозначной записи вещественных чисел. Для нормализованной двоичной мантиссы (q=2) диапазон определяется неравенством 2-1? |Мх| <1. Знак числа определяется знаком мантиссы.

Мантисса числа X в общем виде записывается соответственно как а) Мх =.d0d1d2d3d4, где di {0,1};

б) Мх = d0.d1d2d3d4, где di {0,1}.

Разряд d0 в нормализованных числах всегда равен «1» и в памяти компьютера не хранится («скрытый бит»). Таким образом, мантисса, хранящаяся в памяти компьютера всегда число дробное. (Рис. 1)

d1 d2 d3 d4…

^ ^

«скрытый» бит место точки Рис. 1. Представление n-разрядной мантиссы

Форма представления чисел с ПТ позволяет значительно увеличить диапазон и точность представления чисел при той же длине разрядной сетки что и для чисел с ФТ.

2.2 Представление в памяти

Вещественные числа в отличие от целых представляются и хранятся в памяти в прямом коде, их представление стандартизовано. Согласно стандарту IEЕЕ — 754 для ПК IBМ PC вводят три машинных формата:

— одинарной точности (4 байта);

— двойной точности (8 байт);

— расширенной точности (10 байт).

Некоторые фирмы разработчики ПО используют нестандартные форматы (в компиляторе языка Pascal фирмы Borland используется формат длиной б байтов).

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

Задание 1. Считать из памяти (найти Х10) число, представленное в классическом двоичном формате.

X = -0.10 100*2-3 = -19/32*2-3 = -19/256.

Задание 2 Х= +7 представить в классическом двоичном формате (n=5, m=3). X = +7 = 111.1012 = 0.111 101*2+3

0 11 110 0 0112

2.3 Машинные форматы вещественных данных

В различных алгоритмических языках принятые стандарты описываются разными ключевыми словами.

В языке Turbo-Pascal определены следующие типы вещественных чисел: single, Real, double, extended и comp.

Типы вещественных чисел в языке Turbo-Pascal приведены в таблице 1.

Таблица 1. Типы вещественных чисел в языке Turbo-Pascal

Название типа

Длина в байтах

Мантисса (десятичных значащих цифр)

Диапазон десятичного порядка

single

7… 8

— 45.+38

real

б

11…12

— 39.+38

double

15…16

— 324.+308

Во всех типах мантисса хранится в прямом коде (ПК). Порядок (или экспонента е) задается в так называемой смещенной форме. Смещение выбирается так, чтобы характеристика была целым положительным числом (тогда знак характеристики хранить не требуется).

Смещение для типа real =129, для типа single =127, для типа double =1023.

Смещенный порядок (характеристика Е) равен истинному порядку П, увеличенному на величину смещения, т. е. Е=П+смещение.

Если 0<�Е<255, то значение числа X определяется по правилу:

для формат single: X = f (S, E, M) = (-l)S-2(E -l27) (1.M);

для формата real: X = f (S, M, E) = (-l)S-2(E -l29) (1.M), где S=0 или 1.

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

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

31 30 23 22 0

S

E (8 бит)

M (23 бита)

если 0s*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).

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

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

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

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

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

— после появления приглашения D: INFORMGR440 запустить рабочую среду, набрав на клавиатуре 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=10 000 0112

Sg E M

Х: 1 10 000 011 1 110 000 000 000 000 000 000

Х: 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=10 000 1012

Sg M E

Х: 1 11 100 000 000 000 000 279 022 936 485 020 041 216 10 000 101

Х: 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-ричной СС представляется как Х: В8 000 000 0085h и отображается в памяти в обратном порядке Х:85 00 00 00 00 В8.

В формате double:

порядок E=4+1023=1027=403h=10 000 000 0112

Sg E M

Х: 1 10 000 000 011 110 999 999 999 999 989 776 775 832 886 615 110 947 624 332 558 336

Х: 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-ричной СС представляется как Х: С3 700 000 000 0000h и отображается в памяти в обратном порядке Х: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 и нажать ;

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

— ALT+F10;

— Переместите курсор на пункт Display as и нажмите ;

— Выберите требуемый режим отображения (byte) и нажмите ;

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

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

— Ctrl+G;

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

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

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

— Ctrl+G;

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

— Перенести представление числа в памяти, расположенного по адресу 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.

Показать весь текст
Заполнить форму текущей работой