русс | укр

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

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

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

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


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

ЦИКЛИЧЕСКИЕ ПРОГРАММЫ


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


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

1101

1011 å1

0000 å2

1011 å3

1011_ å4

 

При арифметическом умножении порядок точно такой же, как и при умножении десятичных чисел, далее все промежуточные суммы (4) складываются между собой.

При организаци умножения нужно уметь следующее:

1) Анализировать разряды множителя. Если разряд множителя равен 0, то соответствующее множимое к промежуточной сумме не прибавляется. Если же разряд множителя равен 1, то к промежуточной сумме добавляется множимое;

2) Значение промежуточной суммы должно постоянно сдвигаться;

3) Промежуточную сумму можно сдвигать влево и тогда анализ каждого разряда множителя нужно начинать слева направо, либо промежуточную сумму можно сдвигать вправо и тогда анализ множителя нужно производить справа налево.

В микропроцессорной технике обцчно производят сдвиг промежуточной суммы влево. Сдвиг влево осуществляется сложением содержимого регистра (пары регистров) самого с собой. При огранизации умножения разрядность произведения в два раза больше разрядности множителей. Так как обычно множители восьмиразрядные, то для хранения произведения используется пара регистров (HL). Таким образом будет осуществляться сложение самого с собой именно содержимого пары регистров HL.

HLß HL +HL. Итак, при организации умножения накапливаемый результат будет храниться в HL, в паре регистров DE будет храниться множимое (<N1>). Так как множители восьмиразрядные, то требуется вычислить восемь промежуточных сумм, а, следовательно, организовать восемь циклов расчета.

Алгоритм циклической программы для расчета произведения 2-х 8-разрядных двоичных чисел приведен на рис.1.6.1



 

 

Программа :

К1. MVI B, 08

К2. LXI H, 0

К3. LXI D, <N1>

К4. MVI A, <N2>

К5. M1: DAD H

К6. RLC

К7. JNC M2

К8. DAD D

К9. M2: DCP B

К10. JNZ M1

 

Блок 1: Производится организация счетчика циклов. Так как требуется произвести умножение 8-разрядных чисел, т.е. организовать 8 циклов, в регистр В записывается число 8.

Блок 2: В HL записывается 0 – первоначальное обнуление пары регистров HL для правильного накопления результатов промежуточного суммирования.

Блок 3: Запись в пару регистров DE значения множимого. Т.к. значение множимого 8-разрядное, а пара регистров DE – 16 разрядная, то в D записывается 0, а в Е – множимое.

Блок 4: Запись в аккумулятор множителя.

Блок 5: Сдвиг влево содержимого пары регистров HL (результат промежуточного суммирования).

Блоки 6, 7: Анализ значений разряда множителя (анализ производится слева направо).

Блок 8: Получение промежуточной суммы (5 и 8 блоки работают в паре).

Блоки 9, 10: Организация цикла програмы.

 

Из анализа операции умножения следует, что для данной циклической программы требуется около 200 мс. При обработке сигналов период выборки для канала ТЧ составляет 125 мкс, следовательно, сделать устройство для обработки сигналов в реальном масштабе времени на данном процессоре практически невозможно. Даный процессор годен лишь для систем управления объектами, где скорость обоаботки невысока.

 

 
 

 


Рисунок 1.6.1 – Алгоритм циклической программы для расчета произведения 2-х 8-разрядных двоичных чисел



<== предыдущая лекция | следующая лекция ==>
ВИДЫ ВЫПОЛНЯЕМЫХ ОПЕРАЦИЙ | СИСТЕМА СБОРА И ОБРАБОТКИ ИНФОРМАЦИИ


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


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

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

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


 


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

 
 

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

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