Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASM_05_float_LAB_ukr.doc
Скачиваний:
1
Добавлен:
09.09.2019
Размер:
252.93 Кб
Скачать

Практична робота № 3 Асемблер

Внутрішнє представлення дійсних даних в IBM PC

Мета роботи

Виконати переведення заданих чисел з десяткової в двійкову систему числення. Дати їх внутрішнє (машинне) представлення у форматах типів float, double, long double. Машинне представлення даних має бути дане в двійковій і шістнадковій системах числення.

Порядок роботи

  1. вичислити для свого варіанту дійсні числа;

  2. перевести їх з десяткової в двійкову систему числення і зробити нормалізацію;

  3. отримати їх внутрішнє представлення;

  4. написати програму опису цих чисел на мові Асемблера і отримати лістинг;

  5. перевірити правильність своїх викладень.

У звіті по лабораторній роботі має бути представлений детальний протокол переведення усіх заданих чисел з десяткової в двійкову систему числення .

Варіанти

До заданих двох базових чисел ± X і ± Y, потрібно додати і відняти № свого варіанту (для цілої і дробової частини окремо). Інші варіанти чисел - машинне представлення окремо для дробової і цілої частини.

Наприклад, нехай X = ± 60, Y = ± 4567, № = 45. Тоді вийдуть наступні дванадцять дійсних чисел для варіанту № = 45, а саме:

№ п\п

Базове число

Ціла частина

Дробова частина

Числа варіанту

60.4567

60+45 =105

4567+45=4612

105.4612

60.4567

60-45 =15

4567-45=4522

15.4522

-60.4567

-60+45 =-15

-4567+45=-4522

-15.4522

-60.4567

-60-45 =-105

-4567-45=-4612

-105.4612

105

15

-15

-105

0,4612

0,4522

-0,4522

-4612

Контрольні питання

  1. З якими дійсними даними працює співпроцесор (платформа WIN16)?

  2. Що таке характеристика?

  3. Машинні формати дійсних даних.

  4. Діапазон допустимих значень для дійсних даних.

  5. Що може означати, наприклад, машинне представлення 0F6549FDCh, і в якому форматі?

Приклад рішення типового варіанту

Варіант № 45. Базові числа: X = ± 60, Y = ± 4567.

Зробимо докладний протокол отримання внутрішнього представлення наступних чисел:

105.4612, - 105. і 0.4612

в усіх трьох дійсних форматах.

Рішення

Типи змінних, їх діапазони значень і кількість потрібної для них пам'яті приведені в наступній таблиці:

Тип

Діапазон значень

Необхідна пам'ять

float

1.5e-45 ... 3.4e38

4 bytes

double

1.7e-308 ... 1.7e308

8 bytes

long double

3.4e-4932... 3.4e4932

10 bytes

  1. Переведення десяткових чисел в двійкову систему числення

Оскільки знак числа враховується тільки в старшому біті внутрішнього формату, то в кроці 1 і кроці 2 ми працюватимемо з додатними числами.

Спочатку переведемо ціле число 105 в двійкову систему числення :

105

2

104

52

2

1

52

26 ™1

2

0

26

13

2

0

12

6 5~~™П

2

1

6

3

2

0

2

1

1

105d - 110 1001b

Тепер переведемо в двійкову систему числення правильний десятковий дріб Для перевірки представлення в 32-х бітовому форматі нам достатньо 24-х біт в мантисі (зробимо із запасом - 26 біт) :

0.46126 - ??? bin

№ біта

Біт

Мантиса (Dec)

Множник

0

4612

2

1

0

9224

2

1

8448

3

1

6896

4

1

3792

5

0

7584

6

1

5168

7

1

0336

8

0

0672

9

0

1344

10

0

2688

11

0

5376

12

1

0752

13

0

1504

14

0

3008

IS

0

6016

16

1

2032

17

0

4064

18

0

8128

19

1

6256

20

1

2512

21

0

5024

22 J

1

0048

23 1

0

0096

24

0

0192

25

0

0384

26 [

0

0768

0.4612d - 0.0111 0110 0001 0001 0011 0100 00b

Таким чином:

105.4612d - 110 1001.0111 0110 0001 0001 0011 0100 00b

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]