[an error occurred while processing this directive]
|
Первая строчка - это запись в регистр SR0 (младшие разряды) значения ячейки CHAN_SYN_HIG.
Вторая строчка - это непосредственный логический сдвиг битов регистра SR0 на 6 позиций влево.
Третья строчка - на 7 позиций и тоже влево.
Вторая или третья строчка программы выбираются из каких то условий,а условия надо смотреть выше в программе.
Думаю, что перед ними должны стоять метки программы.
Четвёртая строчка не работает. Должно быть так AY0=0x0032 (или 0x0020, если 32 это десятичное значение.
Пятая строчка - это в регистре AR будет значение, которое получается после вычитания значения регистра SR1 и регистра AY0.
Шестая строчка - то команда по условию, если значение регистра AR, которое получается в результате вычитания меньше нуля (обращаю Ваше внимание: только меньше нуля), тогда программа переходит на выполнение по адресу метки save_hois. Если условие не выполняется программа выполняет седьмую строчку, то есть регистру AX0 присваивается значение 1 (0х0001).
Восьмая строчка - это ошибка программиста. Машина не умеет складывать числа, а вот к значению регистра она может прибавить и 8 и 1.Так что одно из значений должно быть регистром (например: af=ax0+8, или af = ax0+1). Такой команды (ay0=...+...) нет в природе.Вместо AY0 должнен
быть регистр или AR или AF или SR.
Девятая строчка - это как пятая строчка.
Удачи! 432-ой.
E-mail: info@telesys.ru