НОУ ІНТУЇТ | лекція | Двійкові числа і двоичная арифметика

  1. Принцип уявлення чисел в позиційних системах числення
  2. Переклад чисел з однієї системи числення в іншу
  3. Переклад з двійкової системи в шістнадцяткову (восьмеричну)
  4. Переклад з шістнадцятковій (восьмеричної) системи в двійкову

Анотація: Розглядається двійкова система числення як окремий випадок позиційної системи і основні правила двійковій арифметики.

Принцип уявлення чисел в позиційних системах числення

Позиційної називається система числення, в якій вага розряду числа визначається його позицією в запису числа [ 1 ].

Згадаймо нашу звичну десяткову систему числення, в якій ми з дитинства проводимо всі розрахунки. Уже в початковій школі ми звикли до термінів "одиниці", "десятки", "сотні", "тисячі", "десяті", "соті", "тисячні" і не замислюємося над тим, що вони означають вага розряду, виражений у вигляді числа, рівного Згадаймо нашу звичну десяткову систему числення, в якій ми з дитинства проводимо всі розрахунки , де - ціле число . Наприклад, число 125, 46 можна представити у вигляді суми:

сотні десятки одиниці десяті частки соті частки

Аналогічно будь-яке число Аналогічно будь-яке число   в десятковій системі числення можна представити у вигляді такої суми: в десятковій системі числення можна представити у вигляді такої суми:

де де   - кількість знаків в цілій частині числа,   - кількість знаків у дробовій частині числа,   - вага   -го розряду,   - ваговий коефіцієнт для   -го розряду числа - кількість знаків в цілій частині числа, - кількість знаків у дробовій частині числа, - вага -го розряду, - ваговий коефіцієнт для -го розряду числа. Кількість можливих варіантів значення коефіцієнта в десятковій системі числення одно , Оскільки для запису чисел в ній використовуються десять знаків - арабські цифри "0", "1", "2", "3", "4", "5", "6", "7", "8" і " 9 ". число є основою системи числення. Історично склалося, що десяткова система набула найбільшого поширення, хоча за цим принципом можна зробити аналогічну запис в будь-який інший системі числення c будь-яким іншим підставою. В табл. 11.1 Простежуючи ється аналогія між позиційними системами числення.

Підстава системи числення - це число, яке дорівнює кількості знаків, які використовуються в цій системі для запису чисел.

Для числа в системі числення з основою Для числа в системі числення з основою   вираз (11 вираз (11.1) перетворюється до виду:

Таблиця 11.1. Параметри позиційних систем числення Назва системи числення Підстава системи числення Знаки, що використовуються для запису чисел Двійкова 2 0, 1 Трійкова 3 0, 1, 2 Четверичная 4 0, 1, 2, 3 ... ... ... Вісімкова 8 0, 1, 2, 3, 4, 5, 6, 7 ... ... ... Десяткова 10 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ... ... ... Шістнадцяткова 16 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F ... ... ...

З початком розвитку цифрової обчислювальної техніки великий інтерес стала викликати двійкова система, оскільки обчислювальна машина будь-якого покоління і будь-якого ступеня складності - це сукупність логічних схем. Робота елементів цих схем заснована на ключовому режимі роботи транзистора, в якому він може бути тільки в двох станах, що приймаються за логічний 0 і логічну 1.

Запис двійкового числа, як буде показано нижче, як правило, досить довга і громіздка, тому для більш короткої записи двійкових чисел застосовуються восьмеричні і шістнадцяткові числа. Вибір саме цих систем обумовлений тим, що їх підстави рівні цілої ступеня числа 2. Підстава восьмеричної системи Запис двійкового числа, як буде показано нижче, як правило, досить довга і громіздка, тому для більш короткої записи двійкових чисел застосовуються восьмеричні і шістнадцяткові числа , А підстава шістнадцятковій системи - це . Для запису шістнадцяткових чисел арабських цифр не вистачає, тому використовуються перші шість великих літер латинського алфавіту.

Отже, далі ми докладно розглянемо саме ці позиційні системи - двійкову, вісімкову, шістнадцяткову і їх зв'язок зі звичною нам десяткової системою числення.

Наведемо приклади запису чисел в зазначених системах і знайдемо їх десяткові еквіваленти за формулою (11.2).

Для двійкового числа:

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

Для вісімкового числа:

Для шістнадцятирічного числа:

Округлення відноситься до дробової частини числа, ціла частина перекладається точно. Особливістю перекладу з шістнадцятирічного коду в десятковий код є те, що в якості коефіцієнта Округлення відноситься до дробової частини числа, ціла частина перекладається точно використовується десятковий еквівалент шістнадцятирічного знака відповідно до таблиці 11.2. Для нашого прикладу замість знака " "В розрахункову формулу (11.2) підставляється десяткове число .

З розглянутих прикладів видно, що загальна формула (11.2) може використовуватися для перекладу числа з системи числення з будь-якою основою в десяткову.

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

Переклад з десяткової системи в будь-яку іншу. Переклад цілих чисел

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

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

Приклад. Перевести десяткове число 125 в двійкову, вісімкову і шістнадцяткову системи числення. Перевірити результати по формулі (П11.2).

Перевірка:

У розглянутому прикладі при перекладі замість коефіцієнта У розглянутому прикладі при перекладі замість коефіцієнта   використовується його десятковий еквівалент   відповідно до таблиці 11 використовується його десятковий еквівалент відповідно до таблиці 11.2.

Переклад з двійкової системи в шістнадцяткову (восьмеричну)

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

Двійковий запис числа ділиться на групи по чотири (три) довічних знака вліво і вправо від коми, що відокремлює цілі і дробові частини Неповні крайні групи (якщо вони є) доповнюються нулями до чотирьох (трьох) знаків. Кожна група замінюється одним шістнадцятковим (восьмеричним) знаком відповідно до кодом групи ( табл. 11.2 ).

Таблиця 11.2. Відповідність довічних груп, шістнадцятирічних і вісімкових знаків Двоичная група Шестнадцатерічний знак Десятковий еквівалент Двоичная група Восьмирічний знак 0000 0 0 000 0 0001 1 1 001 1 0010 2 2 010 2 0011 3 3 011 3 0100 4 4 100 4 0101 5 5 101 5 0110 6 6 110 6 0111 7 7 111 7 1000 8 8 1001 9 9 1010 A 10 1011 B 11 1100 C 12 1101 D 13 1110 E 14 1111 F 15

приклади:

Переклад з шістнадцятковій (восьмеричної) системи в двійкову

Зазвичай програми в машинних кодах записані в шістнадцятковій системі числення, рідше - в вісімковій. При необхідності окремі числа такої програми записуються в двійковому коді, наприклад, при розгляді форматів регістрів, кодів операції команд і т.п. У цьому випадку потрібен зворотний переклад з шістнадцятковій (восьмеричної) системи числення в двійкову за таким правилом.

Кожна цифра (без всяких скорочень!) Шістнадцятирічного (вісімкового) числа замінюється однією двійковій групою з чотирьох (трьох) двійкових символів ( табл. 11.2 ).

приклади:

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