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

ASM: Лекция 05

Дійсні числа

Дійсне десяткове число 82563.947 можна представити у вигляді:

позиція

4

3

2

1

0

-1

-2

-3

число

8

2

5

6

3

.

9

4

7

82563.947 = 8*104 +2*103+ 5*102+ би*101+ 3*10°+ 9*10-1 + 4*10-2 + 7*10-3 =

80000+2000 + 500 + 60 + 3 + 0.9 + 0.04 + 0.007

У двійковій системі усе аналогічно. Якщо припустити|передбачати|, що в 8-бітовому числі точка|крапка| розділяє тетради (старші і|та| молодші четвірки бітів), то число 11111111 буде дорівнювати:

23 + 22 + 21+ 20+ 2-1+ 2-2 + 2-3 + 2-4 = 1111.11112 =

- 8 + 4 + 2 + 1 + 1/2 + 1/4 + 1/8 +1/16 = 15.937510

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

Для переведення правильного дробу в двійкову систему мантису (дробова частина числа) послідовно множити на 2 до тих пір, поки в мантисі не вийде або чистий нуль, або потрібна кількість розрядів.

Приклад 1. 0.5d = ??? bin

0.5

х 2

1 . 0

0.5d = 0.1b

Приклад 2. 0.703125d = ??? bin

х

0.703125

Після того, як отримали нульову мантису, послідовно зверху вниз збираємо усі цілі частини дробу

2

1

. 406250

X

2

0

. 812500

X

2

1

. 625000

X

2

1

. 250000

X

2

0

. 500000

X

2

1

. 000000 000000

0.703125d = 0.101101b

Приклад 3. 0.05d - ??? bin

х

0.05

Тут виходить двійковий періодичний дріб.

2

0

. 1

X

2

0

. 2

X

2

0

. 4

X

2

0

. 8

X

2

1

. 6

X

2

1

. 2 000000

4

0.05d - 0.000011(0011)b

На цьому прикладі ми зіткнулися з дуже важливим фактом при програмуванні: дійсні числа в загальному випадку неможливо точно представити в пам’яті ЕОМ.

Переведення змішаних десяткових чисел в двійкову систему числення

Дійсне змішане число в двійковій системі утворюється, шляхом з'єднання цілої і дробової частин.

Приклад 117.25d = 1110101.01b

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

Приклад. 1110101.01b - ???dec

позиція

6

5

4

3

2

1

0

-1

-2

число

1

1

1

0

1

0

1

.

0

1

1*26 + 1*25 + 1*24 + 0*23 + 1*22 + 0*21 + 1*20 + 0*2-1 + 1*2-2 =

64+32+16+4+1+0,25=117.25

1110101.01b = 117.25d

Шістнадцяткова система числення (Hexadecimal)

Переведення десяткових чисел в шістнадцяткову систему числення

Приклад 1. 137 -??? hex

137d = 1000 1001b

8 9 h

137d = 89h

Приклад 2. 0.5d - ??? hex

0.5d = 0.1b = 0.1000b

0. 8 h

0.5d = 0.8 h

Приклад 3. 0.703125d - ???hex

0.703125d = 0.101101b = 0.1011 0100b

0. B 4 h

Тут треба зробити розширення до двійкової тетради:

0.703125d = 0.B4h

Приклад4. 0.05d - ??? hex

0.05d =0.000011(001l) b = 0.0000 1100 1100(1100) b

0. 0 С С (C) h

Отримуємо періодичний дріб :

0.05d = 0.0C(C) h

Приклад 5. 117.25d - ??? hex

117.25d = 111 0l0l.0lb = 0lll 0l0l.0100 b

7 5. 4 h

Тут нам довелося розширити до тетради і дробову, і цілую чати двійкового числа.

117.25d = 75.4h

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