Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
МЕТОДИЧНІ ВКАЗІВКИ_ДР№1_МПТ.doc
Скачиваний:
4
Добавлен:
09.11.2018
Размер:
634.88 Кб
Скачать

Методичні вказівки

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

Приклад 1.

а) Виконати складання двійкових чисел.

X=1101.01, Y=101.11;

1101.01

+  101.11

10011.00

Відповідь:10011.

б) Виконати складання вісімкових чисел.

X=7340, Y=671;

7340

+  671

10231

Відповідь:10231.

в) Виконати складання шістнадцятиричних чисел.

X=FC2, Y=E7;

FC2

+ E7

10A9

Відповідь:10a9.

Віднімання в р-вій системі числення також виконується порозрядним стовпчиком по аналогії з десятковою системою числення. Якщо в даному розряді зменшуване число менше за від'ємник, то займається одиниця із старшого розряду. У двійковій системі числення займана одиниця із старшого розряду дорівнює двом одиницям даного розряду.

Приклад 2.

а) Задані двійкові числа X=10010 і Y=101.1. Обчислити X–Y.

10010.0

–  101.1

01100.1

Відповідь: 1100.1.

б) Задані вісімкові числа X=7631 і Y=456. Обчислити X–Y.

7631

–  456

7153

Відповідь: 7153.

в) Задані шістнадцятиричні числа X=1998 і Y=A1F. Обчислити X–Y.

1998

A1F

F79

Відповідь: F79.

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

Приклад 3.

а) Виконати множення двійкових чисел.

X=1101.01, Y=101.11;

110100  

х  10110    

1101      

+ 1101        

100111      

+ 1101            

10001111000

Відповідь:10001111000.

б) Виконати множення шістнадцятиричних чисел.

X=FFA.3, Y=D.E;

FFA.3

 D.E

DFAE A

+ CFB4 

DDAF.5 A

Відповідь: DDAF.5A.

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

Приклад 4

а) Виконати ділення двійкових чисел 110001.1 і 1001.

   110001.1

1001

– 1001

101.1

       1101

    – 1001

        100 1

     – 100 1

               0

Відповідь: 101.1.

б) Виконати ділення двійкових чисел 1010 і 11.

   1010

11

–   11

11.0101.=11.(01)

     100

  –   11

        100

     –   11

            1

Відповідь: 11.(01).

в) Виконати ділення шістнадцятиричних чисел F127 і 8.

 F127

8

– 8

1E24.E

   71

– 70

     12

 –  10

       27

  –   20

         70

    –   70

           0

Відповідь: 1E24.E.

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

Приклад 5.

Знайти значення десяткового числа за його додатковим кодом 10010111.

1. З додаткової коди віднімемо одиницю і отримаємо зворотний код.

 10010111

–             1

 10010110

2. Інвертуємо зворотний код і отримаємо модуль негативного числа 01101001.

3. Переведемо набутого значення в десяткову систему числення 011010012=105.

Відповідь: –105.

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

Приклад 6.

а) Скласти X і Y в зворотному і додатковому кодах.

X= 111, Y= –11.

Складемо числа, користуючись правилами двійкової арифметики: X+Y = 111 – 11 = 100.

Складемо числа, використовуючи різні коди.

Прямий код

Складання у зворотному коді

Складання у додатковому коді

Xпр=0,0000111

Yпр=1,0000011

Xзвор=         0,0000111

Yзвор=         1,1111100

               1 0,0000011

                               +1

(X+Y)звор= 0,0000100

Xдод=        0,0000111

Yдод=        1,1111101

              1)0,0000100

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

(X+Y)дод= 0,0000100

Оскільки результат складання є кодом позитивного числа (знаковий розряд містить нульове значення), то (X+Y)обр=(X+Y) доп=X+Y=100.

Відповідь: 100.

б) Скласти X і Y в зворотному і додатковому кодах.

X= –101,Y= –11.

Складемо числа, користуючись правилами двійкової арифметики X+Y= – 101 –110 = –1011.

Складемо числа, використовуючи різні коди.

Прямий код

Складання у зворотному коді

Складання у додатковому коді

Xпр=1,0000101

Yпр=1,0000110

Xзвор= 1,1111010

Yзвор1,1111001

              1 1,1110011

                              +1

(X+Y) звор= 1,1110100

Xдод= 1,1111011

Yдод1,1111010

      1) 1,1110101

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

(X+Y)дод= 1,1110101

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

Із зворотної коди:

(X+Y)обр=1,1110100 (X+Y)пр=1,0001011.

З додаткового коду:

(X+Y)доп=1,1110101 (X+Y)пр=1,0001010+0,0000001=1,0001011.

Таким чином, X+Y= –1011 і отриманий результат збігається із звичайним записом.

Відповідь: –1011.

Оскільки арифметичні дії в мікропроцесорі виконуються в обмеженому числі розрядів, можливі наступні помилки:

  • ліві цифри результату, що виходять за розрядну сітку, виявляються загубленими;

  • при складанні двох позитивних чисел може вийти негативне число, якщо станеться перенесення одиниці в знаковий розряд.

Приклад 7.

Перевірити правильність результату складання чисел 86 і 104, представлених в 8-розрядному знаковому типові.

X=86

 Xпр=0,1010110

Y=43

 Yпр=0,0101011

(X+Y)=86+43=129

(X+Y)обр=1,0000001

Результат:           129

(X+Y)пр = 1,1111111 = -127

Результат складання коду позитивних чисел мікропроцесор сприймає як код негативного числа (одиниця в знаковому розряді).

Відповідь: результат невірний.

Вправи

  1. Скласти таблиці складання і множення в трійковій, п'ятірковій і вісімковій системах числення.

  2. Задані двійкові числа X і Y. Обчислити X + Y і X – Y, якщо: а) X= Y=; б) X= Y=; в) X= Y=; г) X= Y=.

  3. Задані двійкові числа X і Y. Обчислити X * Y і X / Y, якщо: а) X= Y=; б) X= Y=; в) X= Y=; г) X= Y=.

  4. Виконати наступні арифметичні дії в трійковій системі счисления: а) 21 + 2.1; б) 21 – 10.2; в) 212 · 1210; г) 10 : 2.

  5. Виконати наступні арифметичні дії в п'ятірковій системі счисления: а) 1234 + 4321; би) 4321 – 1234; в) 4321 · 123; г) 4322 : 3.

  6. Виконати наступні арифметичні дії у вісімковій системі счисления: а) 1357 + 3157; б) 3751 – 1357; в) 321 · 23; г) 137 : 5; д) 157 + 251; е) 145 – 64; ж) 675 + 274; з) 734 – 251.

  7. Виконати наступні арифметичні дії в шістнадцятиричній системі счисления: а) ABC + DEF; б) DEF – ABC; в) ABC · 10A; г) 83E : A; д) B159 + 2551; е) FEED – FACE; ж) B785 + 2C84; з) 834E – 2E5A.

  8. Виконати наступні дії з виділенням неперіодичній частці і періоду: а) 112 : 1012; б) 100101012 : 11102; в) 103 : 113; г) 43215 : 35.

  9. Записати прямій, зворотний і додатковий коди двійкових чисел в знаковому однобайтовому формате:

а) 11010; б) –11101; в) –101001; г) –1001110.

  1. Перевести X і Y в прямій, зворотний і додатковий коди восьмирозрядної сітки. Скласти їх в зворотному і додатковому кодах. Результат перевести в прямий код. Перевірити отриманий результат, використовуючи правила двійкової арифметики.

а) X= 11010;

 Y= 1001111;

б) X= 11101;

 Y= 100110;

в) X= 1110100;

 Y= 101101;

г) X= 10110;

 Y= 111011;

д) X= 1111011;

 Y=–1001010;

е) X= 11011;

 Y= 10101.

  1. Записати числа десяткові числа X і Y в прямому, зворотному і додатковому кодах в знаковому однобайтовому форматі.

Знайдіть X+Y X–Y Y–X X–X –Y–Y, X–Y.

а) X = 14, Y = 13; б) X = 15, Y = 12; в) X = 18, Y =11; г) X = 100, Y =28.