Автор: Пользователь скрыл имя, 26 Марта 2011 в 10:09, лабораторная работа
Мета: Отримати навички переведення натуральних чисел між системами числення з різними основами.
Завдання:
Згідно номера по списку в журналі викладача необхідно вибрати десяткове число K із табл. 1.
Лабораторна
робота №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-го розряду (крайня цифра зліва, також називається старшим розрядом). Наприклад, можна розглядати як п’ятирозрядне двійкове число (нуль в старшому розряді можна не писати, тобто ).
Враховуючи, що у числі розрядів (цифр), а в алфавіті є цифр, можна визначити загальну кількість -розрядних чисел як:
(3)
Таким чином, наприклад, різних чотирьохрозрядних чисел в алфавіті можна отримати (адже , =2 та =4), а за допомогою алфавіту – вже чисел тієї ж розрядності.
Питання для самоперевірки засвоєння основних теоретичних положень:
– визначіть загальну кількість різних трирозрядних чисел, що може бути сформована за допомогою алфавітів , , та .
Вирішення задачі:
Для ілюстрації вирішення поставленої задачі, із табл. 1 вибрано десяткове число 234. З врахуванням викладеного вище матеріалу, умову поставленої задачі можна скорочено зобразити наступним чином:
Умова задачі: = 23410, .
Розглянемо декілька способів перекодування чисел з однієї системи числення в іншу.
1-й спосіб перекодування чисел.
Перекодування чисел згідно з даним способом здійснюється за допомогою ділення числа на за допомогою арифметики з основою . Цифрами числа в системі числення з основою будуть залишки від ділення. Зручно користуватися цим способом при переведенні з десяткової системи числення ( ) в будь-яку іншу, оскільки використовується десяткова арифметика.
Нижче проілюстрований порядок перекодування чисел з десяткової системи числення в двійкову, вісімкову та шістнадцяткову:
Умова 1: = 23410, .
Виконаємо дане перекодування в три етапи, при цьому початкове число на цих етапах становить = 23410:
1) , 2) , 3) .
234 | ділимо
число К
на основу m |
234 | 8 | 234 | 16 | |||||||||||
234 | 117 | 2 | 232 | 29 | 8 | 224 | 14(Е) | |||||||||
0 | 116 | 58 | 2 | 2 | 24 | 3 | 10(A) | а1= | ||||||||
а0= | 1 | 58 | 29 | 2 | а0= | а2= | а0= | |||||||||
а1= | 0 | 28 | 14 | 2 | а1= | |||||||||||
а2= | 1 | 14 | 7 | 2 | ||||||||||||
а3= | 0 | 6 | 3 | 2 | ||||||||||||
а4= | 1 | 2 | ||||||||||||||
а5= | 1 | а7= | 1
– ознака закінчення |
|||||||||||||
а6= | ||||||||||||||||
порядок запису результату | порядок запису результату | |||||||||||||||
Информация о работе Перетворення кодів з однієї системи числення в іншу