русс | укр

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

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

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

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


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

Двоичная арифметика.


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


 

При выполнении арифметических операций над двоичными числами необходимо учитывать знак числа. С этой целью вводится дополнительный
знаковый разряд 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.009 сек.