Номер розряду
|
10
|
9
|
8
|
7
|
6
|
5
|
4
|
3
|
2
|
1
|
Ваговий коефіцієнт
|
1024
|
512
|
256
|
128
|
64
|
32
|
16
|
8
|
4
|
2
|
1
|
|
|
|
|
|
1
|
1
|
1
|
0
|
0
|
1
|
1
|
Відповідь:115=64+32+16+2+1
Двійково-десятковий код орієнтований
на найбільш зручну для людини десяткову систему числення. При цьому для
записування чисел використовуються тільки двійкові цифри 0 і 1.
Двійково-десятковий код утворюється заміною кожного десяткового розряду в
десятковому числі чотирибітовим двійковим представленням цього розряду.
Приклад утворення
двійково-десяткового коду:
Таким чином, при перетворенні
числової інформації з однієї позиційної системи числення в іншу всі дії повинні
виконуватися за правилами арифметики початкової системи числення.
1.3 Правила
двійкової арифметики
Арифметичні операції додавання і
віднімання
Таблиця
додавання
Таблиця додавання
"стовпчиком" (14 + 5 = 19)
Арифметичні дії над двійковими числами
проводяться по тим же правилам, що й над десятковими. Необхідно тільки
враховувати, що додавання двох одиниць дає нуль у даному розряді й одиницю
переносу в наступний.
Додавання чисел з фіксованої комою
з різними знаками завдяки використанню зворотнього
або додаткового коду для негативних чисел зводиться в ЕОМ до арифметичного
додавання кодів чисел. Знакові розряди беруть участь в операції додавання
нарівні із цифровими. При цьому, якщо виконується операція додавання у зворотніх
кодах, одиниця переносу зі знакового розряду суми додається до її молодшого
розряду
(тобто
виконується циклічний перенос). Якщо ж операція додавання виконується над
числами, представленими в додатковому коді, то одиниця переносу зі знакового
розряду суми відкидається. Перехід від зворотнього
й додаткового кодів до прямого виконується аналогічно переходу від прямого коду
до зворотнього й додаткового
відповідно.
У комп'ютері всі операції виконуються
в арифметико-логічному пристрої (АЛП). Числа, які беруть участь в операціях,
називаються операндами. Основною операцією в АЛП є додавання. Операція
віднімання замінюється додаванням операндів у оберненому або доповняльному
кодах.
Правила виконання операцій
додавання, віднімання, множення і додавання за модулем 2 у двійковій арифметиці
представлені в табл. 2. При додаванні двох одиниць виникає перенос у старший
розряд; при відніманні від нуля одиниці потрібна позичка із старшого розряду.
Таблиця 2. Правила виконання
операцій додавання, віднімання, множення і додавання за модулем 2
У всіх комп'ютерах є команди
додавання і віднімання чисел. Проте в суматорах реалізуються тільки операції
додавання умовно додатних машинних поданнів. Машинні подання додатних операндів
у всіх кодах збігаються. Машинні подання від’ємних операндів отримують за
правилами представлення чисел у оберненому і доповняльному кодах. В операціях
віднімання знак другого операнда (який віднімається) автоматично змінюється на
протилежний і після цього отримують його машинне подання. Тому в таких
прикладах розглядаються тільки операції додавання.
Знаковий розряд і цифрова частина
числа в машинних поданнях у разі оберненого і доповняльного кодів розглядаються
як одне ціле. Вони однаково беруть участь в операції додавання. При додаванні в
обернених кодах перенесення зі старшого знакового розряду результату подається
на вхід перенесення молодшого розряду (циклічне перенесення). При додаванні в
доповняльних кодах перенесення зі старшого знакового розряду результату не
враховується, тому в суматорі ланцюг циклічного перенесення розривається. Знак
результату при додаванні машинних подавань утворюється автоматично.
При додаванні двійкових п -
розрядних чисел А = аn..., ai..., a1 і B = bn...,
bi..., b1 результат у будь-якому розряді визначають по
формулі:
,
де aі ві -
значення i-x розрядів;
zi
- перенесення з молодшого розряду;i - результат;
Рі+1 - перенесення в
старший розряд.
Порядок перетворення двійкового
від'ємного числа
А = -1010 в обернений та доповняльний
Приклад. Додати двійкові числа А =
-1010 і В = 0011 в оберненому і доповняльному кодах:
Відповідь С= -01112
При додаванні чисел одного знаку
можливе переповнення розрядної сітки, ознакою чого є розбіжність знака
результату зі знаками операндів. В АЛП є спеціальні логічні схеми, які
автоматично формують ознаку переповнення.
З метою спрощення виявлення
переповнення розрядної сітки використовуються модифіковані коди, для яких знаковий
розряд у суматорі дублюється. Додатному переповненню в знакових розрядах
відповідають цифри 01, а від'ємному - 10. Значення знакових розрядів 00
відповідає правильному додатному результату, а цифри 11 - від'ємному.
Арифметичні операції множення і ділення
Операція множення чисел складається
з к циклів, де к - число цифрових розрядів множника. Результат множення i-го
розряду множника на множене називається частковим добутком, а їх послідовне
додавання - сумою часткових добутків (СЧД). У кожному циклі аналізується
наступна цифра множника: якщо вона дорівнює 1, то до СЧД додається множене,
якщо 0, то додавання не відбувається. Цикл завершується зсувом на один розряд
множеного відносно СЧД або зсувом СЧД відносно нерухомого множника. Множене і
множник розміщуються в розрядній сітці на основі спеціальних схем-регістрів, а
СЧД - в суматорі-регістрі.
Приклад. Помножити двійкові числа
А=10112 і В=1112
Ділення двійкових чисел багато в
чому аналогічно діленню десяткових чисел. В універсальних обчислювальних
машинах, як правило, реалізується "шкільний" алгоритм ділення чисел,
який полягає в тому, що дільник на кожному кроці віднімається з діленого
стільки разів (починаючи із старших розрядів), скільки це можливо для отримання
додатного найменшого залишку. Тоді в черговий розряд записується цифра,
дорівнює числу дільників, що містяться в діленому на даному кроці. Інакше
кажучи, при діленні операцію віднімання повторюють до тих пір, поки зменшуване
не стане менше за від'ємник. Число цих повторень показує, скільки разів
від'ємник укладається в зменшуваному.
Наприклад, розділимо число 35 на 7:
1) 35 - 7 = 28, 2) 28 - 7 = 21, 3)
21 - 7 = 14, 4) 14 - 7 = 7, 5) 7 - 7 = 0.
Відповідь дорівнює 5, оскільки
процедура віднімання була повторена 5 разів.
Двійкове, як і десяткове ділення,
починається з аналізу діленого (11001100) і дільника (1100). Відразу ж
виявляється, що дільник укладається в 1100, а тому записується 1 в старший
розряд поля. Помножується дільник на 1 і віднімається з 1100, різниця дорівнює
0. Об'єднується 0 залишку із значенням наступного розряду діленого, що дорівнює
1. Оскільки дільник (1100) 0 разів укладається в 1, записуємо 0 в наступний за
старшинством розряд поля, а число 1 об'єднується з наступним розрядом діленого
і так далі до тих пір, поки ділене не буде вичерпаним.
Описані способи виконання
арифметичних операцій над числами з фіксованою комою застосовують також для
виконання їх над мантисами чисел з плаваючою комою.
Приклад. Розділити число А=20410 на
В=1210, тобто 110011002:11002:
Додавання і віднімання чисел А і В з
плаваючою комою може здійснюватися тільки за умови рівності їх порядків. Для
цього вони заздалегідь вирівнюються зсувом одного з них.
Приклад. Додати числа А=0,111∙211
і В=0,11101∙2101. Операцію додавання виконуємо наступним
чином:
прирівнюємо порядки чисел до
більшого порядку, тобто А=0,00111∙2101;
) виконуємо операцію
додавання за загальною схемою
Відповідь дорівнює 1,00100∙2101
або 0,100100∙2110.
Операція віднімання чисел з
плаваючою комою виконується аналогічно операції додавання.
В першій, теоретичній, частині я
привів:
визначення, основні характеристики,
схеми та принцип функціонування АЛП;
правила переводу чисел з однієї
системи числення в іншу;
правила двійкової арифметики, а саме
додавання та віднімання двійкових чисел.
2. Практична
частина
.1 Переведення чисел А і В
десяткової системи числення у двійкову і шістнадцятирічну
Нам треба перевести числа десяткової
системи числення у двійкову і шістнадцяткову й виконати перевірку розв’язку.
Переведення А=910 в 2-кову
систему числення
Ціла частина від ділення Залишок від
ділення
9 div 2 = 4 9 mod 2 = 1
div 2 = 2 4 mod 2 = 0
div 2 = 1 2 mod 2 = 0
div 2 = 0 1 mod 2 = 1
Залишок від ділення записуємо в
зворотному порядку. Отримуємо число в 2-ій системі числення: 1001
10
= 10012
Виконаємо перевірку:
10
=1001 2.
Для переведення цілої частини
необхідно помножити розряд числа на відповідну йому ступінь розряду.
= 8* 1 + 4* 0
+ 2* 0 + 1* 1 = 8+0+0+1= 9
Переведення А=810 в 2-кову
систему числення
Ціла частина від ділення Залишок від
ділення
8 div 2 = 4 9 mod 2 = 0
div 2 = 2 4 mod 2 = 0
div 2 = 1 2 mod 2 = 0
div 2 = 0 1 mod 2 = 1
Залишок від ділення записуємо в
зворотному порядку. Отримуємо число в 2-ій системі числення: 1000
10
= 10002
Виконаємо перевірку:
10
=1000 2.
Для переведення цілої частини
необхідно помножити розряд числа на відповідну йому ступінь розряду.
= 8* 1 + 4* 0
+ 2* 0 + 1* 0 = 8+0+0+0= 8
Переведення А=910 в
16-кову систему числення
Ціла частина від ділення Залишок від
ділення
9 div 16 = 0 9 mod 16 = 9
div 16 = 0 0 mod 16 = 0
Отримуємо число в 16-ій системі
числення: 09
10=0916
Виконаємо перевірку:
) 910 = 0916.
Для переведення цілої частини
необхідно помножити розряд числа на відповідну йому ступінь розряду.
= 161*0 + 160*9 = 0 + 9 = 9
Переведення В=810 в
16-кову систему числення
Ціла частина від ділення Залишок від
ділення
8 div 16 = 0 8 mod 16 = 8
div 16 = 0 0 mod 16 = 0
Отримуємо число в 16-ій системі
числення: 08
10=0816
Виконаємо перевірку:
) 810 = 0816.
Для переведення цілої частини
необхідно помножити розряд числа на відповідну йому ступінь розряду.
= 161*0 + 160*8
= 0 + 8 = 8
.2 Додавання, віднімання, множення і
ділення двох десяткових чисел А і В в двійковій формі
Додавання А і В:
+1000=11001
= 24*1 + 23*1
+ 22*0 + 21*0 + 20*1 = 16 + 8 + 0 + 0 + 1 = 25
Віднімання А і В:
-1000=0001
= 23*0 + 22*0
+ 21*0 + 20*1 = 0 + 0 + 0 + 1 = 1
Множення А і В:
1001*1000=1001000
= 26*1 + 25*0 + 24*0 + 23*1 + 22*0 +
21*0 + 20*0 = 64 + 0 + 0 + 8 + 0 + 0 + 0 = 72
.3 Розроблення алгоритму,
функціональна і принципова електричні схеми
Вихідні дані
тип арифметичної операції - множення
двійкових чисел;
вхідний код представлення операндів
- додатковий;
розрядність операндів - 8 біт;
код виконання перації в суматорі -
додатковий модифікований;
структура операційного блоку - з
закріпленими мікроопераціями;
тип керуючого блоку - автомат Мура с
пам’ятю на JK-тригерах;
схема логічної ознаки переповнення
розрядної сітки;
Мал. 2.1. Структурна схема АЛУ для
множення цілих чисел твору двох чисел.
Л- 1, що містять, цифрових розрядів.
У зв'язку з цим після здобуття результату у форматі двійкового слова необхідно
додатково зрушити його цифрові розряди на один розряд управо, щоб правильно
розташувати твір в розрядній сітці. На мал. 2.1 представлена структурна схема
АЛУ для множення розрядних для мене цілих двійкових чисел. До складу АЛУ
входять вхідний регістр множеного Рг1, регістри множника Рг2 і Рг2\ на яких за
допомогою косої передачі управо Рг2'' : - П ([) Рг2 і передачі Рг2 :^Рг2''
виконується зрушення множника управо; суматор См для освіти суми часткових
творів, вхідні і вихідний регістри суматора відповідно РГА, РГВ і РгСм, на яких
зберігається поточне значення і утворюється нове значення суми, лічильник
циклів СЧЦ.
Особливістю множення цілих чисел є
необхідність представлення результату множення дво "-разрядних слів
подвійним словом. При цьому число цифрових розрядів подвійного слова 2п - 1 на
1 більше числа 2п - 2 цифрових розрядів двох чисел, п, що містять, - 1 цифрових
розрядів. У зв'язку з цим після здобуття результату у фарматі подвійного слова
необхідно додатково зрушити його цифрові розряди на один розряд управо.
На мал. 2.2 представлена структурна
схема АЛУ для множення "-разрядних цілих двійкових чисел. До складу АЛУ
входять "вхідний регістр множеного Рг1; регістри множника Рг2 і Рг2\ на
яких за допомогою косої передачі управо Рг2’: - П(1) Рг2 і передачі Рг2: - Рг2\
виконується зрушення множення вправо; суматор См для утворення суми часткових
творів; вхідні і вихідний регістри суматора відповідно РГА, РГВ і РгСм.
Мал. 2.2 представлена структурна
схема АЛУ для множення
арифметичний логічний
числення електричний
Висновок до другої частини
В другій, практичній, частині я
виконав:
переведення чисел А і В десяткової
системи числення у двійкову і шістнадцятирічну;
додавання, віднімання, множення і
ділення двох десяткових чисел А і В у двійковій формі;
Розроблення алгоритму, функціональна
і принципова електричні схеми множення двох чисел.
Висновок
Отже, в цій курсовій роботі я описав
структурну схему та принцип функціонування АЛП, ще привів правила двійкової
арифметики, а також перевів числа с десяткової системи числення в двійкову і
виконав додавання, віднімання, множення та ділення цих чисел в двійковій
системі, розробив алгоритм, побудував функціональну і принципову електричні
схеми модулю операційного блоку, який міг би виконувати операцію множення
заданих мною, а точніше заданих у завданні до курсової роботи, двійкових чисел.
Список літератури
Василій великий. Гомілії
/Василій Великий; [пер. з давньогрец. Л.Звонська]. - Львів : Свічадо, 2006. -
307 с. - (джерела християнського Сходу. Золотий вік патристики IV-V
ст. ; №14).
Суберляк О.В. Технологія
переробки полімерних та композиційних матеріалів: підруч. [для студ. вищ. навч.
закл.] / О.В. Суберляк, П.І. Баштанник. - Львів: Растр-7, 2007. - 375 с.
Історія Національної академії
наук України, 1941-1945 / [упоряд. Л.М. Яременко та ін.]. - К.: Нац. б-ка
України ім. В.І. Вернадського, 2007. - (Джерела з історії науки в Україні).
Ч.2: додатки - 2007. - 573, [1] с.
Тимошенко З.І. Болонський
процес в дії: словник-довідник основ. термінів і понять з орг. навч. процесу у
вищ. навч. закл. м/ З.І. Тимошенко, О.І. Тимошенко. -К.: Європ. ун-т, 2007. -
57 с.
Гранчак Т.
Інформаційно-аналітичні структури бібліотек в умовах демократичних перетворень
/ Тетяна Гранчак, Валерій Горовий // Бібліотечний вісник. - 2006. - №6. - С.
14-17.
Богомольний Б.Р. Медицина
екстремальних ситуацій [Електронний ресурс]: навч. посібник для студ. мед.
вузів ІІ-ІV
рівнів акредитації / Б.Р. Богомольний, В.В. Кононенко, П.М. Чуєв . - 80 Min
/ 700 МВ. - Одеса: Одес. мед. ун-т, 2003. - (Бібліотека студента-медика) - 1
електрон. опт. диск (CD-ROM);
12 см. - Систем. вимоги: Pentium
32 Mb RAM;
Windows 95, 98,
2000, XP;
MS Word
97-2000. - Назва з контейнера.
Додаток
Мал. 2.3 Часова діаграма множника
Для перевірки працездатності
приладу, я побудував часову діаграму, яка зображена на малюнку 2.3