Лекція №5 Двійкова арифметика Правила арифметики у всіх позиційних системах аналогічні



Скачати 36.32 Kb.
Дата конвертації06.12.2016
Розмір36.32 Kb.

http://antibotan.com/ - Всеукраїнський студентський архів

Лекція № 5

Двійкова арифметика

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

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

Додавання двох чисел в двійковій системі відліку виконується на основі таблиці двійкового додавання:

0+0=0

1+0=1


0+1=1

1+1=10 - перенос в сусідній старший розряд

Наприклад : 10110100

+01101000

100011100

Віднімання двох чисел виконується на основі таблиці двійкового віднімання:

0-0=0


1-0=1

1-1=0


10-1=1позика із сусіднього старшого розряду

Наприклад : 11101010



-01100100

10000110


В цифровій техніці операція віднімання з використанням позики практично не застосовується.

В більшості сучасних мікро ЕОМ цілі числа займають ціле число байтів або слів (2 байта для Intel 8086). Основою є двійкова система відліку. Так число 154(10) = 11111110(2).

Значні труднощі завжди викликає кодування від’ємних чисел. Найбільш популярні тепер три способи кодування.

1 спосіб - представлення від’ємних цілих чисел в вигляді знак-модуль. Від’ємні та додатні числа представляються однаково, за виключенням лівого знакового розряду.

Якщо 1, то число від’ємне, якщо 0, то додатне.

-00011101

10011101 ПК

Недоліком є складність процедури додавання чисел з різними знаками.

2 спосіб - представлення чисел за допомогою оберненого коду.

Число доповнюємо нулями до машинного слова і інвертуємо.

10011101 ПК

11100010 ОК

Перевагою такого кодування є простота отримання оберненого коду та можливість не враховувати знаки при додаванні та відніманні.

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



3 спосіб - це доповнений код або двійкове доповнення.

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

-00011101

10011101 ПК

11100010 ОК

11100011 ДК

Специфіка доповненого коду є в тому, що так як і в десятковій системі, тут можна брати доповнення будь-якого від’ємного числа до основи системи:

(10) 5 + (-2) = 3 (2) 5 = 0000 0101(2) -2 = 1000 0010(2) ПК

10 5 0000 0101 1111 1101 ОК

- 2 +8 +1111 1110 1111 1110 ОК

8 13 10000 0011(2) = 3(10)

Представлення чисел в вигляді доповненого коду має такі переваги:



  • додавання та віднімання виконуються просто;

- тут одне представлення нуля.

Для виявлення переповнення розрядної сітки використовують модифікований доповнений код, де для знаку відводять два старші розряди.



00000001 110000001 МПК

111111110 МОК

111111111 МДК

Віднімання з використанням позики: від’ємне число представляють в оберненому, доповненому або в модифікованому коді і операцію віднімання замінюють на операцію додавання.

Приклад 1

0000 1010 =А(16) -6(16)=1000 0110 ПК

1111 1001 ОК

0000 1010 ПК 10



+1111 1001 ОК -6

1 0000 0011 4

+1

0000 0100 ПК

Приклад 2

1000 1010 = -А(16) ПК 6(16)=0000 0110

1111 0101 ОК

1111 0110 ОК -10



+0000 0110 ПК +6

1111 1011 ОК -4

1000 0100 ПК

Приклад 3

0000 1010 =А(16) -6(16)=1000 0110 ПК

1111 1001 ОК

1111 1010 ДК

0000 1010 ПК 10



+1111 1010 ОК -6

1 0000 0100 ПК 4

відкидається


Приклад 4

1000 1010 = -А(16) ПК 6(16)=0000 0110

1111 0101 ОК

1111 0110 ДК


1111 0110 ОК -10

+0000 0110 ПК 6

1111 1011 ОК -4

1000 0100 ПК
Множення двійкових багаторозрядних чисел включає в себе операції - визначення знака добутку та визначення його абсолютної величини. Знаковий розряд отримують додаванням цифр знакових розрядів співмножників без формування переносу.

0+0=0


0+1=1

1+0=1


1+1=0 без формування переносу

Абсолютна величина значення добутку визначається шляхом множення чисел без врахування їх знаків на основі таблиці двійкового множення :

0*0=0

1*0=0


0*1=0

1*1=1
Особливість множення двійкових чисел полягає в тому, що частковий добуток може бути або зсунутим на відповідне число розрядів, якщо відповідна цифра множника дорівнює 1, або нулем, якщо відповідна цифра множника дорівнює 0.

Приклад множення цілих чисел:

0 000 1101*0 000 0101

1101 множене

* 101 множник (ручне множення)

1101 1-й частковий добуток

+ 0000 2-й частковий добуток

1101__ 3-й частковий добуток

1000001 добуток






База даних захищена авторським правом ©lecture.in.ua 2016
звернутися до адміністрації

    Головна сторінка