ЗМІСТ
Введення
Виконання операцій алгебраїчного додавання і зсуву в ЕОМ
1.Формальние правила двійковій арифметики
1.1 Операція алгебраїчного додавання в ЕОМ
1.1.1 Прямий код
1.1.2 Складання в прямому коді
1.1.3 Додатковий код
1.1.4 Алгебраїчне додавання у додатковому коді
1.1.5 Зворотний код
1.1.6 Складання в зворотному коді
2.Операція зсуву в ЕОМ
2.1 Алгоритм складання чисел у машинах з плаваючою комою
2.2 денормализация чисел. Види денормализация і методи Усунення
3.Округленіе чисел в ЕОМ
3.1 Округлення чисел в прямому коді
3.2 Особливості округлення чисел, заданих інверсними кодами
Література
Введення
Тема реферату В«Виконання операцій алгебраїчного додавання і зсуву в ЕОМ В».
В процесі написання реферату нам належить ознайомитися з:
- формальними правилами двійкової арифметики;
- операціями алгебраїчного додавання в ЕОМ;
- операціями зсуву в ЕОМ;
- округленням чисел в ЕОМ.
Виконання операцій алгебраїчного додавання і зсуву в ЕОМ
1.Формальние правила двійкової арифметики
Популярність двійковій системи числення в чому пояснюється простотою правил двійковій арифметики.
Додавання
Віднімання
Множення
0 +0 = 0
0-0 = 0
0х0 = 0
0 +1 = 1
0-1 = 1 (позика) 1
0х1 = 0
1 +0 = 1
1-0 = 1
1х0 = 0
1 +1 = 0 1
(перенос в ст. разр)
1-1 = 0
1х1 = 1
Основною операцією в ЕОМ є додавання. За способом її виконання арифметичні пристрої можуть бути паралельного, послідовного, паралельно-послідовної дії. Послідовне підсумовування має виконуватися на підставі наступного рівності:
a i + b i + П і-1 = S i + П и
1.1 Операція алгебраїчного додавання в ЕОМ
При обчисленні суми двох чисел можливі два варіанти: доданки мають однакові знаки і доданки мають різні знаки. В результаті цього алгоритми отримання суми для кожного з них різні.
Для операндів з однаковими знаками:
1. Скласти два числа.
2. Сумі привласнити знак одного з доданків.
Алгоритм отримання алгебраїчної суми:
1. Порівняти знаки доданків, і якщо вони однакові, то виконати додавання по першому алгоритмом.
2. Якщо знаки доданків різні, то порівняти доданки за абсолютною величиною.
3. Відняти з більшого менша.
4. Результату привласнити знак більшого доданка.
З цього випливає, що Перший алгоритм простіше другого. Отже, бажано перетворити негативні числа таким чином, щоб операцію віднімання замінити операцією додавання, тобто S = A + (-B).
Для того, щоб вирішити цю проблему, необхідно вводити спеціальні коди: прямий, зворотний, додатковий.
Спосіб побудови цих кодів визначається функціями кодування, які повинні забезпечити:
1. Запис алгебраїчного знака числа.
2. Подання негативних чисел за допомогою допоміжних, позитивних, які відрізняються за зображенню від позитивних вихідних чисел, тобто області зображень позитивних і негативних чисел не повинні перетинатися.
3. Повну ідентичність алгоритмів виконання операцій над числами різних знаків, і отже, повну ідентичність необхідного при цьому устаткування.
1.1.1 Прямий код
Прямим кодом негативного числа називається його зображення в природній формі запису, у якого в знаковому розряді ставиться 1. Прямий код позитивного двійкового числа збігається з його звичайним зображенням в природній формі, так як знак кодується нулем.
Згідно з визначенням, функція кодування чисел в прямому коді правильних дробів виду: А = а зн a -1 a -2 ... а - n запишеться наступним чином:
Величина А буде визначатися в прямому коді наступним виразом:
при цьому знакової розряду не приписується ніякої ваги. Очевидно, що діапазон зміни машинних зображень для прямого коду двійковій дробу лежить в межах:
.
У геометричній інтерпретації область додатних чисел буде збігатися з областю їх зображень, а для негативних чисел ці області будуть відрізнятися.
У прямому коді нуль має два значення: позитивне 0,000 .. 0 і негативне 1,000 ... 0. Зазвичай в ЕОМ використовується позитивний нуль, але в процесі обчислень може виникнути і його негативне зображення. Обидва зображення повністю еквівалентні і застосування будь-якого з них не призводить до помилки.
Приклад запису числа в прямому коді:
А = +0,101011 А пр = 0,101011;
В = -0,110011 У пр = 1,110011.
1.1.2 Додавання у прямому коді
Правила складання чисел в прямому коді не відрізняються від звичайних правил складання, тобто якщо обидва доданків мають однакові знаки, то їх числові розряди складаються, а сумі присвоюється знак одного з них. Якщо доданки мають різні знаки, то з числових розрядів більшого по абсолютній величині числа віднімається менша, а сумі приписується знак більшого з доданків. При цьому числові розряди коду обробляються окремо від знакових, так як останні не мають ваги.
Розглянемо можливі 4 випадки отримання суми чисел в прямому коді.
1) А > 0, В > 0, З > 0.
А = +0,101001 В = +0,000101
А пр = 0,101001 В пр = 0,000101 З пр = А + В
+ 0,101001
0,000101
0,101110
2) А > 0, В <0, С > 0.
А = +0,101001 В = -0,000101
А пр = 0,101001 В пр = 1,000101 З пр = А-| У |
- 0,101001
1,000101
0,100100
3) А <0, В > 0, С <0.
А = -0,101001 У = +0,000101
А пр = 1,101001 В пр = 0,000101 З пр = 1 + (| А | - | У |)
- 0,101001
0,000101
0,100100 З пр = 1 +0,100100 = 1,100100
4) А <0, В <0, С <0.
А = -0,101001 У = -0,000101
А пр = 1,101001 В пр = 1,000101 З пр = 1 + | А | + | У |
+ 0,101001
0,000101
0,101110 З пр = 1 + 0,101110 = 1,101110
Таким чином, в прямому коді знаковий розряд і цифрову частину не можна розглядати як єдине ціле. Крім того, необхідно крім суматора мати і вичітатель. В результаті цього прямий код не застосовується для виконання операції алгебраїчного додавання, але застосовується для виконання операцій множення і ділення.
1.1.3 Додатковий код
У додатковому коді операція віднімання замінюється операцією алгебраїчного додавання. При цьому знаковий розряд і цифрова частина розглядаються як єдине ціле.
Розглянемо особливості перетворення в додатковий код. Негативне число замінюєт...