регистрация /  вход

Перетворення кодів з однієї системи числення в іншу (стр. 1 из 4)

Лабораторна робота №2

Тема: Перетворення кодів з однієї системи числення в іншу .

Мета : Отримати навички переведення натуральних чисел між системами числення з різними основами.

Завдання:

Згідно номера по списку в журналі викладача необхідно вибрати десяткове число K із табл. 1.

Таблиця 1 – Вихідні дані

№п/п

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

Число К

486

317

281

307

436

214

193

325

501

142

398

267

186

469

369

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

Приклад

165

205

346

452

374

175

412

159

274

358

245

385

423

253

295

234

Необхідно: перевести взяте з табл. 1 число K між десятковою, двійковою, вісімковою та шістнадцятковою системами числення.

Теоретичні дані:

Перш за все слід відзначити, що найбільш звичною системою числення для людини є десяткова система. Саме вона використовується у повсякденному житті: під час навчання, при розрахунках в магазині, в таксі/маршрутці/трамваї тощо. Крім десяткової системи числення для тих чи інших цілей можуть використовуватися двійкова і кратні до неї – вісімкова та шістнадцяткова – системи числення.

В теорії інформації, а саме в тій її частині, що стосується перетворення кодів з однієї системи числення в іншу, одним із основних є поняття алфавіту (позначається

) з основою
.

Алфавіт – це множина цифр

, за допомогою яких складається число
.

В загальному вигляді поняття алфавіту можна представити у вигляді виразу:

(1)

де

загальна кількість цифр
алфавіту
.

Загальна кількість

цифр
алфавіту
називається основою системи числення .

Існують різноманітні алфавіти, що відрізняються загальною кількістю цифр, які можуть використовуватися при складанні числа.

Для ілюстрації приведемо в табл. 2 вказані характеристики найбільш вживаних систем числення:

Таблиця 2 – Характеристики алфавітів найбільш поширених систем числення

Алфавіт

Множина цифр алфавіту

Основа

двійковий

вісімковий

десятковий

шістнадцятковий

*

*

– символи, які позначають в алфавіті
цифри, які відповідають десятковим числам 10, 11, 12, 13, 14 та 15 відповідно.

Таким чином, в якості коректних двійкових чисел можна вказати такі: 100111, 111, 0, 10; тоді як число 100211 неможливе, адже в двійковому алфавіті немає цифри "2". З аналогічних причин можливі шістнадцяткові числа 106, E1F, 1BC, 589, проте неможливі 1I6, O04, 3P24.

Основа системи числення деякого числа

вказується після нього у вигляді нижнього індексу, наприклад, запис 200910 означає десяткове число 2009 .

Для зручності завдання на перекодування чисел з однієї системи числення в іншу запишемо у вигляді відповідності між їх основами:

(пряме перекодування), або
(пряме перекодування з подальшою перевіркою).

Для ілюстрації даного положення розглянемо три вирази:

1)

= 786110 ,
=
,

2)

= 786110 ,
=
,

3)

= 786110 ,
=
.

Перший вираз слід інтерпретувати так: дано десяткове число 7861, його необхідно перекодувати з десяткової системи числення в двійкову, з якої в вісімкову, а потім число з вісімкової системи – у шістнадцяткову.

Другий вираз передбачає те саме, що і перший вираз, за винятком того, що після кожного прямого перекодування необхідно додатково виконати перевірку зворотне перекодування.

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

З цифр алфавіту

можна скласти велику кількість чисел
:

, (2)

де

кількість цифр числа
.

Порядковий номер цифр числа

визначається справа наліво, починаючи з нуля і називається розрядом цифр. Таким чином в числі
(2) є
розрядів: від 0-го розряду (крайня цифра справа, також називається молодшим розрядом ) до
–1-го розряду (крайня цифра зліва, також називається старшим розрядом ). Наприклад,
можна розглядати як п’ятирозрядне двійкове число (нуль в старшому розряді можна не писати, тобто
).


Дарим 300 рублей на твой реферат!
Оставьте заявку, и в течение 5 минут на почту вам станут поступать предложения!
Мы дарим вам 300 рублей на первый заказ!