Вычислительные системы и микропроцессорная техника
24

2.4. ПОСТРОЕНИЕ УСТРОЙСТВА В ВИДЕ МИКРОПРОЦЕССОРНОГО ВЫЧИСЛИТЕЛЯ НА БИС КР580ВМ80 (Intel 8080A)

Микропроцессорный вычислитель имеет стандартную структуру. Поэтому его схему строить не надо. Единственной задачей остается создание программируемого контроллера интерфейса, обеспечивающего подключение к вычислителю источника и потребителя информации, управляющей программы обмена контроллера, называемой драйвером, и обрабатывающей программы.

В отличие от рассмотренных ранее вариантов построения преоб­разователя в виде самостоятельного устройства для микропроцессор­ного варианта подсчет числа единиц кода осуществляется с помощью обрабатывающей программы. Поэтому ее написание и отладка является важным этапом в построении устройства, включающем следующие шаги:

1) разработку обрабатывающего алгоритма;

2) составление программы на языке ассемблера;

3) отладку и выполнение программы.

Третий шаг требует дополнительных пояснений. Отладку и выпол­нение программы можно осуществить либо на микро ЭВМ и персональных ЭВМ, имеющих транслятор с языка ассемблера КР580ВМ80 или языков ассемблеров, включающих его как подмножество, либо на лабораторной микроЭВМ "Микролаб".  В последнем случае необходимо выполнить руч­ное ассемблирование программы.

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

Схема алгоритма изображена на рис. 2.15. Алгоритм включает в себя два цикла: подсчет числа единиц в текущем байте и накопление единиц при просмотре всех байтов. Входной код размещается в масси­ве БАЙТ_ДАННЫХ. Положение текущего байта в массиве определяется счетчиком байтов СЧ_БАЙТ. Положение текущего бита этого байта, предварительно помещенного в аккумулятор, определяется СЧ_БИТ.

Программа, реализованная по данному алгоритму, представлена на рис. 2.16. Просмотр битов текущего байта осуществляется путем сдвига аккумулятора, при этом анализируемый бит кода формирует зна­чение признака переноса С. Окончание просмотра осуществляется по нулевому содержимому счетчика битов, расположенного в регистре В. Просмотр байтов кода завершается, когда обнуляется счетчик байтов, расположенный в регистре С. Программа загружается в ОЗУ по адресу 8000.