четверг, 24 апреля 2014 г.
четверг, 17 апреля 2014 г.
інструкція
- Розглянемо переклад з будь-якої системи числення (з будь-яким цілим числом в підставі) в десяткову. Для цього шукане число, наприклад, 123 потрібно записати за формулою запису числа, прийнятої у вихідній системі числення. Візьмемо для прикладу вісімкову систему. Виходячи з назви, підставою є цифра 8, це означає, що кожен розряд числа є ступенем підстави за зменьшенням, в даному випадку це друга, перша і нульова ступінь (8 в нульової ступеня = 1). Числі 123 записується наступним чином: 1 * 8 * 8 +2 * 8 +3 * 1. Перемножте цифри і отримав 64 +16 +3, у результаті — 83. Це число і буде поданням шуканого числа в десятковій системі числення.
- Для шістнадцятковій системи розрахунок складніше. У ній окрім цифр у поданні беруть участь букви латинського алфавіту, тобто повний розряд складає цифри від 0 до 9 і букви від A до F. Наприклад, число 6B6 за формулою запису числа буде виглядати так: 6 * 16 * 16 +11 * 16 +6 * 1, де В = 11. Перемножте цифри і отримаєте 1536 +176 +6, у результаті — 1718. Це — те ж число в десятковій системі числення.
- Переклад з десяткової системи в двійкову, вісімкову і шістнадцяткову проводиться шляхом послідовного розподілу на підставу (2, 8 і 16) до тих пір, поки не залишиться число менше дільника. Залишки виписуються в зворотному порядку. Наприклад, переведемо число 40 в двійкову систему, для цього: розділіть 40 на 2, пишіть 0, 20 на 2, пишіть 0, 10 на 2, пишіть 0, 5 на 2, пишіть 1, 2 на 2, пишіть 0 і 1. Отримуємо підсумкове число в двійковій системі — 101000.
- Переведемо число 123 з десяткової системи в вісімкову, залишки також пишуться в зворотному порядку. Делите 123 на 8, виходить 15 і 3 в залишку, пишіть 3. Делите 15 на 8, виходить 1 і 7 в залишку, пишіть 7. У старшому розряді пишіть залишилася 1. Підсумкове число — 173.
- Переведемо число 123 з десяткової системи в шістнадцяткову. Делите 123 на 16, виходить 7, 11 у залишку. Отже, цифра старшого розряду — 7, цифра 11 менше підстави і позначається буквою B. Отримуємо підсумкове число — 7B.
- Щоб перевести будь-яке число в двійкову систему числення, потрібно кожну цифру розряду вихідного числа записати у вигляді четвірки чисел згідно з таблицею, наприклад, для десяткової системи: 0 = 0000, 1 = 0001, 2 = 0010, 3 = 0011, 4 = 0100, 5 = 0101 і так далі.
- Для перекладу з двійкової системи в вісімкову або шістнадцяткову потрібно розбити вихідне число на четвірки або тріади по двійковій системі, а потім кожну з комбінацій (тріад або четвірок) замінити відповідною цифрою у підсумковій системі.
Причини використання в комп'ютерах також вісімкової і шістнадцяткової систем числення
Двійкова система, зручна для комп'ютерів, для людини незручна із-за її громіздкості і незвичного запису. Первід чисел з десяткової системи в двійкову і навпаки виконує комп'ютер. Проте, щоб професійно використовувати комп'ютер, слід навчитися розуміти слово машини. Для цього і розроблені вісімкова і шістнадцяткова системи. Числа в цих системах читаються майже так само легко, як десяткові, вимагають відповідно в три (вісімкова) і в чотири (шістнадцяткова) рази менше розрядів, чим в двійковій системі (адже числа 8 і 16 — відповідно, третій і четвертий ступені числа 2).
Перевід вісімкових і шістнадцятиричних чисел в двійкову систему дуже простий: достатньо кожну цифру замінити еквівалентною їй двійковою тріадою (трійкою цифр) або тетрадою (четвіркою цифр).
Наприклад:

Щоб перевести число з двійкової системи у вісімкову або шістнадцяткову, його потрібно розбити вліво і вправо від коми на тріади (для вісімкової) або тетради (для шістнадцяткової) і кожну таку групу замінити відповідною вісімковою (шістнадцятковою) цифрою.
Наприклад

Двійкова система, зручна для комп'ютерів, для людини незручна із-за її громіздкості і незвичного запису. Первід чисел з десяткової системи в двійкову і навпаки виконує комп'ютер. Проте, щоб професійно використовувати комп'ютер, слід навчитися розуміти слово машини. Для цього і розроблені вісімкова і шістнадцяткова системи. Числа в цих системах читаються майже так само легко, як десяткові, вимагають відповідно в три (вісімкова) і в чотири (шістнадцяткова) рази менше розрядів, чим в двійковій системі (адже числа 8 і 16 — відповідно, третій і четвертий ступені числа 2).
Перевід вісімкових і шістнадцятиричних чисел в двійкову систему дуже простий: достатньо кожну цифру замінити еквівалентною їй двійковою тріадою (трійкою цифр) або тетрадою (четвіркою цифр).
Наприклад:

Щоб перевести число з двійкової системи у вісімкову або шістнадцяткову, його потрібно розбити вліво і вправо від коми на тріади (для вісімкової) або тетради (для шістнадцяткової) і кожну таку групу замінити відповідною вісімковою (шістнадцятковою) цифрою.
Наприклад

Переклад чисел з однієї системи числення в іншу
Переклад чисел з шістнадцятковій системи в десяткову
Для перекладу шістнадцяткового числа на десяткове необхідно це число представити у вигляді суми добутків ступенів підстави шістнадцятковій системи числення на відповідні цифри в розрядах шістнадцяткового числа.Наприклад, потрібно перевести шістнадцяткове число 5A3 на десяткове. У цьому числі 3 цифри. Відповідно до вищевказаного правилом подамо його у вигляді суми ступенів з основою 16:
= 3.1 +10 16 +5 256 = 3 +160 +1280 = 1443 10
Переклад чисел з двійкової системи в шістнадцяткову і навпаки
Для перекладу багатозначного двійкового числа в шістнадцяткову систему потрібно розбити його на тетради справа наліво і замінити кожну тетраду відповідної шістнадцятковій цифрою. Для переведення числа з шістнадцятковій системи в двійкову потрібно замінити кожну його цифру на відповідну тетраду з наведеної нижче таблиці перекладу.Наприклад:
Способи записи
У математиці
У математиці підставу системи числення прийнято вказувати в десятковій системі в нижньому індексі. Наприклад, десяткове число 1443 можна записати як 1443 10 або як 5A3 16.У мовах програмування
У різних мовах програмування для запису шістнадцятиричних чисел використовують різний синтаксис:- В Ада і VHDL такі числа вказують так: "16 # 5A3 #".
- В Сі і мови схожого синтаксису, наприклад, в Java, використовують префікс "0x". Наприклад, "0x5A3".
- У деяких асемблерах використовують букву "h", яку ставлять після числа. Наприклад, "5A3h". При цьому, якщо число починається не з десяткової цифри, то для відмінності від імен ідентифікаторів (наприклад, констант) попереду ставиться "0" (нуль): "0FFh" (255 10)
- Інші асемблери (AT & T, Motorola), а також Паскаль і деякі версії Бейсіка використовують префікс "$". Наприклад, "$ 5A3".
- Деякі інші платформи, наприклад ZX Spectrum в своїх асемблерах (MASM, TASM, ALASM, GENS і т. д.) використовували запис # 5A3, зазвичай вирівняну до одного або двох байт: # 05A3.
- Інші версії Бейсіка використовують для вказівки шістнадцятиричних цифр поєднання "& h". Наприклад, "& h5A3".
- У Unix-подібних операційних системах (і багатьох мовах програмування, що мають коріння в Unix / linux) недруковані символи при виведенні / введенні кодуються як 0xCC, де CC - шістнадцятковий код символу.
Шістнадцяткова систе́ма чи́слення — це система числення, кожне число в якій записується за допомогою 16-ти символів. Цю систему часто називають також Hex (початкові літери англ. hexadecimal — шіснадцятковий). Спочатку планувалось вживати латинське sexa замість hexa, проте це слово сприймалось неоднозначно. Для запису чисел в цій системі окрім 10 арабських цифр (від 0 до 9) використовують 6 літер латинської абетки: A, B, C, D, E, F.
0hex | = | 0dec | = | 0oct | 0 | 0 | 0 | 0 | |||
1hex | = | 1dec | = | 1oct | 0 | 0 | 0 | 1 | |||
2hex | = | 2dec | = | 2oct | 0 | 0 | 1 | 0 | |||
3hex | = | 3dec | = | 3oct | 0 | 0 | 1 | 1 | |||
4hex | = | 4dec | = | 4oct | 0 | 1 | 0 | 0 | |||
5hex | = | 5dec | = | 5oct | 0 | 1 | 0 | 1 | |||
6hex | = | 6dec | = | 6oct | 0 | 1 | 1 | 0 | |||
7hex | = | 7dec | = | 7oct | 0 | 1 | 1 | 1 | |||
8hex | = | 8dec | = | 10oct | 1 | 0 | 0 | 0 | |||
9hex | = | 9dec | = | 11oct | 1 | 0 | 0 | 1 | |||
Ahex | = | 10dec | = | 12oct | 1 | 0 | 1 | 0 | |||
Bhex | = | 11dec | = | 13oct | 1 | 0 | 1 | 1 | |||
Chex | = | 12dec | = | 14oct | 1 | 1 | 0 | 0 | |||
Dhex | = | 13dec | = | 15oct | 1 | 1 | 0 | 1 | |||
Ehex | = | 14dec | = | 16oct | 1 | 1 | 1 | 0 | |||
Fhex | = | 15dec | = | 17oct | 1 | 1 | 1 | 1 | |||
Запис числа формується за загальним принципом: на n-й позиції (справа наліво від 0) стоїть цифра, що відповідає кількості n-х степенів шістнадцяти у цьому числі. Наприклад, число записане в десятковій системі як 1000, в hex записується як 3E8, де:
3x162 + 14x161 + 8x160 = 768 + 224 + 8 = 1000.
Шістнадцяткова система числення широко вживана в інформатиці, оскільки значення кожного байту можна записати у вигляді двох цифр шістнадцяткової системи. Таким чином значення послідовних байтів можна представити у вигляді списку двозначних чисел. В той же час запис 4 бітів можна представити однією шістнадцятковою цифрою.
В математиці числа в недесяткових системах позначуються нижнім індексом, що визначає основу позиції. Наприклад, 1016 = 1610. В інформатиці прийняті інші форми запису.
Подписаться на:
Сообщения (Atom)