русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

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


Дата добавления: 2015-08-31; просмотров: 1329; Нарушение авторских прав


 

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

 

Як і в десятковій системі числення, операція додавання двох позитивних n-розрядних чисел і виконується порозрядно, починаючи з молодшого. Розрядні числа і сумуються по модулю 2 з урахуванням переносу з попереднього (молодшого) розряду відповідно до таблиці 10.1. Сума , якщо кількість доданків із значенням 1 непарна, а перенос у наступний розряд = 1, якщо кількість таких складає не менше двох.

 

Таблиця 10.1 Приклад 10.1

 

Таблиця істинності однорозрядного суматора а5 ао æ å А2 = 0 0 0 1 1 1 = А10 = 7 + В2 = 0 1 0 0 1 1 = В10 = 19 ä __________ ã b5 bо S2 = 0 1 1 0 1 0 = S10 = 26 ­­­_ ­ê­­_ ­ê­­_ ­ê Р2 Р1 Ро      
 
   
   

 

 

Приклад 10.2

 
 

 


Операцію вирахування (віднімання) в цифровій техніці реалізують за допомогою додавання. Для цього від'ємник, включаючи його знаковий розряд, представляють у зворотному коді. Якщо в результаті підсумовування в знаковому розряді утвориться перенос, то ця одиниця додається до молодшого розряду суми. Такий додаток одиниці називають циклічним переносом. Знак результату визначається отриманим значенням знакового розряду .

 

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



Якщо результат операції виходить негативний ( = 1), то він представлений у зворотному коді, якщо позитивним ( = 0) – у прямому коді.

 

Приклад 10.3.

 

 
 

 

 


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

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

 

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

Двійковий розподіл (ділення) теж аналогічний десятковому, але завдяки меншому числу цифр у системі числення операція виходить більш простій. Це видно з приклада 10.5 (розподіл 1011012 = 4510 на 10012 = 910).

 

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

 

 
 

 

 


Розглянуті вище арифметичні операції відносяться до операцій над двійковими числами, представленими у формі з фіксованою комою, коли число відображається у виді єдиного цілого, кожен розряд його має незмінну вагу. На практиці, із метою розширення діапазону чисел, використовують форму з комою, що плаває. Тут число складається з двох частин: мантиси т, що містить значення цифри числа, і порядку р, що показує ступінь, у яку треба звести підставу числення q, щоб отримане при цьому число, помножене на мантису, давало істинне значення числа, що представляється:

 

(10.3)

 

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

 

 

Порушимо третє питання лекції.

 



<== предыдущая лекция | следующая лекция ==>
Системи числення. | Основні аксіоми і закони булевої алгебри.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.004 сек.