СИСТЕМЫ ИСЧИСЛЕНИЯ

двох стійких станів фізичних елементів. Ця система є близькою до оптимальної за економічністю, і крім того, таблички додавання й множення в цій системі елементарні:

+

0

1

 

*

0

1

0

0

1

 

0

0

0

1

1

10

 

1

0

1

 

Оскільки 23=8, а 24=16 , то кожних три двійкових розряди зображення числа утворюють один вісімковий, а кожних чотири двійкових розряди - один шістнадцятковий. Тому для скорочення запису адрес та вмісту оперативної пам'яті комп'ютера використовують шістнадцяткову й вісімкову системи числення. Нижче в таблиці 1 наведені перших 16 натуральних чисел записаних в десятковій, двійковій, вісімковій та шістнадцятковій системах числення.

Таблиця 1

10

2

8

16

0

0000

0

0

1

0001

1

1

2

0010

2

2

3

0011

3

3

4

0100

4

4

5

0101

5

5

6

0110

6

6

7

0111

7

7

8

1000

10

8

9

1001

11

9

10

1010

12

A

11

1011

13

B

12

1100

14

C

13

1101

15

D

14

1110

16

E

15

1111

17

F

 

В процесі налагодження програм та в деяких інших ситуаціях у програмуванні актуальною є проблема переведення чисел з однієї позиційної системи числення в іншу. Якщо основа нової системи числення дорівнює деякому степеню старої системи числення, то алгоритм переводу дуже простий: потрібно згрупувати справа наліво розряди в кількості, що дорівнює показнику степеня і замінити цю групу розрядів відповідним символом нової системи числення. Цим алгоритмом зручно користуватися коли потрібно перевести число з двійкової системи числення у вісімкову або шістнадцяткову. Наприклад, 101102=10 110=268, 10111002=101 1100=5C8

у двійковому відбувається за зворотнім правилом: один символ старої системи числення заміняється групою розрядів нової системи числення, в кількості рівній показнику степеня нової системи числення. Наприклад, 4728=100 111 010=1001110102, B516=1011 0101=101101012

Як бачимо, якщо основа однієї системи числення дорівнює деякому степеню іншої, то перевід тривіальний

У протилежному випадкові користуються правилами переведення числа з однієї позиційної системи числення в іншу (найчастіше для переведення із двійкової, вісімкової та шістнадцяткової систем числення у десяткову, і навпаки).

 

Алгоритми переведення чисел з однієї позиційної системи числення в іншу

1. Для переведення чисел із системи числення з основою p в систему числення з основою q, використовуючи арифметику нової системи числення з основою q, потрібно записати коефіцієнти розкладу, основи степенів і показники степенів у системі з основою q і виконати всі дії в цій самій системі. Очевидно, що це правило зручне при переведенні до десяткової системи числення.

Наприклад:

з шістнадцяткової в десяткову:

92C816=9*10163+2*10162+C*10161+8*10160= 9*16103+2*16102+12*16101+8*16100=37576

з вісімкової в десяткову:

7358=7*1082+3*1081+5*1080= 7*8102+3*8101+5*8100=47710

з двійкової в десяткову:

 

1101001012=1*1028+1*1027+0*1026+1*1025+0*1024+0*1023+

+1*1022+0*1021+1*1020=1*2108+1*2107+0*2106+1*2105+0*2104+0*2103+

+1*2102+0*2101+ 1*2100=42110

2. Для переведення чисел із системи числення з основою p в систему числення з основою q з використанням арифметики старої системи числення з основою p потрібно:

  • для переведення цілої частини:
  • послідовно число, записане в системі основою p ділити на основу нової системи числення, виділяючи остачі. Останні записані у зворотному порядку, будуть утворювати число в новій системі числення;
  • для переведення дробової частини:
  • послідовно дробову частину множити на основу нової системи числення, виділяючи цілі частини, які й будуть утворювати запис дробової частини числа в новій системі числення.

Цим самим правилом зручно користуватися в разі переведення з десяткової системи числення, тому що її арифметика для нас звичніша.

Приклади:

1 2 3

Похожие работы