русс | укр

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

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

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

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


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

Схемы деления целых чисел со знаком (в дополнительном или обратном кодах)


Дата добавления: 2014-11-27; просмотров: 3564; Нарушение авторских прав


При операциях деления со знаком в дополнительном или обратном кодах используются алгоритмы, подобные вышеописанным.

Особенностями алгоритма деления без восстановления отрицательных остатков для целых чисел в дополнительном коде являются:

· действия с делимым и частичными остатками (сложение или /вычитание) определяются соотношениями знаков делителя и делимого или частичных остатков:

1. при совпадении знаков делителя и делимого или частичных остатков производится вычитание делителя из делимого или частичных остатков,

2. при несовпадении знаков делителя и делимого или частичных остатков производится сложение делителя с делимым или частичными остатками.

· при совпадении знаков частичного остатка и делителя фиксируется единичный разрядный знак частного, при несовпадении – фиксируется нулевой разрядный знак частного.

· после получения результата, в зависимости от соотношения знаков делимого и делителя и наличия остатка, производится корректировка частного путем увеличения его на единицу:

1. при положительном делимом и отрицательном делителе,

2. при отрицательном делимом, положительном делителе и при ненулевом остатке,

3. при отрицательных делимом и делителе и при нулевом остатке.

 

Пример 1. Деление целых чисел со знаками без восстановления отрицательных остатков (делимое – положительное, делитель– отрицательный)

Делимое – А = 27(10) = 0.0100011(2),

Делитель – В = –5(10) , = 1.1011(2) (в дополнительном коде)

Цифры дополнительного разряда регистров делимого, делителя и все цифры частного выделены жирным шрифтом.

 

№ цикла Делимое/ частичный остаток Делитель Частное Комментарии
0.0011011 +1.1011 . 1.1110011 1.1011 1. Исходное состояние Знаки не совпадают – сложение Знаки совпадают – цифра (знак частного) = 1
1.110011 +0.0101 . 0.000111 1.1011 1.0 Сдвиг делимого Знаки совпадают – вычитание Знаки не совпадают – цифра частного 0
0.00111 +1.1011 . 1.11101 1.1011 1.01 Сдвиг делимого Знаки не совпадают – сложение Знаки совпадают – цифра частного = 1
1.1101 +0.0101 0.0010 1.1011 1.010 Сдвиг делимого Знаки совпадают – вычитание Знаки не совпадают – цифра частного 0
0.0010   1.011 А>0, B<0, Коррекция частного(+1)

Результат деления 011011 (27(10)) на 1.011 (–5(10)),



Частное – 1.011 (–5(10)), остаток – 0.010 (2(10))

Результат деления

частное – 1.011(2) = –5(10),

остаток – 0.010 (2)= 2(10).

Пример 2. Деление целых чисел со знаками без восстановления отрицательных остатков. (делимое – отрицательное, делитель – положительный).

Делимое – А = – 27(10) = 1.100101(2) (в дополнительном коде).

Делитель – В = 5(10)= 0.101(2).

Цифры дополнительного разряда регистров делимого, делителя и все цифры частного выделены жирным шрифтом

№ цикла Делимое/ частный остаток Делитель Частное Комментарии
1.1100101 +0.0101 . 0.0001101 0.0101 1. Исходное состояние Знаки не совпадают – сложение Знаки совпадают – цифра (знак частного) = 1
0.001101 +1.1011 . 1.111001 0.0101 1.0 Сдвиг делимого Знаки совпадают – вычитание Знаки не совпадают – цифра частного 0
1.11001 +0.0101 . 0.00011 0.0101 1.01 Сдвиг делимого Знаки не совпадают – сложение Знаки совпадают – цифра частного = 1
0.0011 +1.1011 1.1110 0.0101 1.010 Сдвиг делимого Знаки совпадают – вычитание Знаки не совпадают – цифра частного 0
1.1110 0.0101 1.011 А>0, B<0, Коррекция частного(+1)

Результат деления 1.100101 на 0.101, частное – 1.011, остаток – 1.110 (дополнительный код).

Результат деления:

частное – 1.011(2) = –5(10) ,

остаток – 1.110(2) =– 2(10).

 



<== предыдущая лекция | следующая лекция ==>
Схемы деленяе целых чисел без знака (в прямом коде) | Схемы деления дробных чисел


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


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

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

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


 


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

 
 

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

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