Разработка алгоритма и программы на ассемблере

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

бразом, программа будет состоять из основной программы, и подпрограмм многобайтного сложения, вычитания и сдвига влево.

 

3. Разработка программы на ассемблере

 

Согласно разработанной в предыдущем разделе структурной схемы программы была разработана программа на языке ассемблер для микропроцессора КР580ВМ80.

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

Входные числа x1, x2 должны быть расположены в ячейках памяти, начиная с меток x1, x2, соответственно, и занимают каждое 4 байта. Результат вычисления функции располагается в ячейках памяти, начиная с метки y, и занимает также 4 байта.

В программе также используются четыре переменные tmp1, tmp2, tmp3, tmp4, которые используются для хранения промежуточных результатов операций. Каждая переменная занимает пять байт. Переменные располагаются в ячейках памяти по меткам:

tmp1 - метки tmp1L, tmp1H, tmp1HH;

tmp2 - метки tmp2L, tmp2H, tmp2HH;

tmp3 - метки tmp3L, tmp3H, tmp3HH;

tmp4 - метка tmp4L, tmp4H, tmp4HH.

 

Для определения как будут размещаться программа и данные в памяти необходимо провести распределение адресного пространства.

Адресное пространство КР580ВМ80 составляет 64кБ. В данном пространстве должна располагаться память программ (ПЗУ) и память данных (ОЗУ). В памяти данных также должна быть определена область для стека. Так как при включении или сбросе процессор начинает выполнять команды с адреса 0, память программ должна начинаться с данного адреса.