Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

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

Предмет: 
Тип роботи: 
Лабораторна робота
К-сть сторінок: 
10
Мова: 
Українська
Оцінка: 
ЛАБОРАТОРНА РОБОТА №2
 
Тема: Переведення чисел. Доповнювальний, прямий і зворотній код. Операції над цілими числами у двійковій системі числення
 
ТЕОРЕТИЧНІ ПОЛОЖЕННЯ
 
1. Операції над цілими числами у двійковій системі числення. Доповнювальний, прямий і зворотній код.
Правила виконання арифметичних дій над двійковими числами задаються таблицею1. Правила арифметики в усіх позиційних системах аналогічні.
 
Таблиця 1. – Правила виконання арифметичних дій над двійковими числами
 
При здійсненні обчислень, звичайно, доводиться мати справу не тільки з цілими невід’ємними числами, але також з від’ємними.
У програмуванні виділяють два типи чисел: беззнакові та знакові. Всі беззнакові числа вважаються невід’ємними, і всі їх розряди використовуються для задання абсолютної величини числа. Так, за допомогою одного байту можна закодувати цілі беззнакові числа від 0 до 255.
Для представлення ж від’ємних чисел слід виділити один біт для знаку. Як правило, це старший біт. Якщо один біт в числі виділяється під його знак, таке число називається знаковим. Як правило, 0 у старшому (крайньому зліва) біті відповідає додатнім числам, а 1 – від’ємним.
Представлення від’ємних чисел залежить від кількості байтів, яка відводиться на число. Для визначеності будемо розглядати однобайтові знакові числа.
Виділяють три основних способи представлення від’ємних чисел:
  • прямий код, який утворюється з коду відповідного додатного числа шляхом встановлення знакового біта в 1;
  • обернений код, який утворюється шляхом заміни значення кожного біта на протилежне;
  • додатковий код, який утворюється шляхом додавання 1 до молодшого біта оберненого коду.
 
Приклад. Розглянемо число -3. Двійковим еквівалентом відповідного додатного числа 3 є 00000011.
Прямий код. Встановимо знаковий біт в 1 (нагадаємо, що 1 в старшому біті знакового числа сигналізує про його від’ємність). Всі інші біти залишаються без змін. В результаті вийде 10000011.
Обернений код. Замінимо кожний біт на протилежний (1 на 0; 0 на 1) ; результатом буде 11111100.
Додатковий код. Додамо 1 до оберненого коду; в результаті вийде 11111101. Зверніть увагу, що якщо розглядати послідовність 11111101 як беззнакове, а не як знакове число, вона інтерпретується як додатнє число 253.
Приклад 1. Числа А, -А, С и -С представити в прямому, оберненму (зворотньому), доповнюваному кодах.
 
Приклад 3. Виконати додавання чисел, представленних в машинних кодах: A+C; -A+C; A+ (- C) ; -A+ (- C).
Зауваження. В ЕОМ операції віднімання, множення, ділення здійснюються за допомогою операції додавання. Наприклад, при відніманні від'ємник записується у доповняльному коді і віднімання заміняється додаванням.
Приклад 4: 23 + 22 = 45
Приклад 5: 23 – 13 = 23 + (-13) = 10
(-13) 10 = (1 0001101) пр. = (1 1110010) об. = (1 1110011) доп.
Приклад 6: 7 – 13 = 7 + (-13) = -6
Оскільки результат від'ємний (біт знаку містить одиницю), то він представлений у доповняльному коді. Для перевірки правильності виконання операції потрібно перейти до прямого коду, який визначає абсолютне значення результату. Для цього потрібно:
1. відняти від доповняльного кода 1: 11111010дк. – 00000001 = 11111001об.
2. проінвертувати обернений код для переходу до прямого: 10000110пр.
1 0010100пр. – прямий двійковий код числа (-20) 10
Виконання логічних операцій з цілими числами, представленими в машинних кодах
Кількість логічних операцій може бути обчислено за формулою  , де n – число змінних. Із формули видно, що для двох змінних a і b логічних операцій 16. Основні із них: логічне додавання, логічне множення, логічне не, додавання по модулю 2.
Для виконання логічних операцій, використовують таблиці істинності: 
Логічне додавання
 
 
КОНТРОЛЬНІ ЗАПИТАННЯ
 
  1. Опишіть виконання арифметичних операцій в двійковій системі числення.
  2. Яка відмінність між знаковими і беззнаковими числами?
  3. Вкажіть, які існують способи представлення від’ємних чисел. Опишіть ці способи.
 
ЗАВДАННЯ
 
Завдання1. Записати в прямому коді наступні числа (n=8) :
 
Завдання 2. Записати в доповнювальному коді наступні числа (n=8) :
 
Завдання 3. Зобразити у зворотньому і доповнювальному кодах від’ємні числа (n=8) :
 
Завдання 4. Скориставшись доповнювальними кодами чисел, розрахувати S=A+B (n=8) : 
 
 
Завдання 5. Скориставшись доповнювальними кодами чисел, розрахувати R=A-B (n=8), якщо:
 
 
Фото Капча