Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Листинги программ




Основные команды для работы с вещественными числами

Основные инструкции для работы с регистрами

Ветвления

Синтаксис мнемоники команды:

Имя Смещение, Условие

Если условие выполняется, то содержимое счетчика команд меняется на величину (Смещения). Мнемоника проверяемых условий:

Условие Объяснение Проверяемые флаги
NEQ не равно Z=0
EQ равно Z=1
GT больше Z=0 и N=0
GEQ больше или равно (не меньше) N=0
LT меньше N=1
LEQ меньше или равно (не больше) Z=1 или N=1
HI выше C=1 и Z=0
HIS, C выше или тоже самое C=1
LO, NC ниже, переноса нет C=0
LOS ниже или тоже самое C=0 или Z=1
NOV нет переполнения. V=0
OV переполнение V=1
NTC бит теста не установлен TC=0
TC бит теста установлен. TC=1
NBIO входной сигнал BIO нулевой BIO=0
UNC безусловный  
Инструкция. Мнемоника Действие
ADDB ADDB XARn, #7bit #7bit - 7-битовая константа без знака XARn = XARn + #7bit
ADRK ADRK XARn, #8bit #7bit - 8-битовая константа без знака XARn = XARn + #8bit
ADDK addk (.unit) cst, dst .unit =.S1,.S2 cst+dst => dst
SUB SUBU sub (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1=src2 => dst
ABS abs (.unit) src, dst .unit =.L1,.L2 abs(src) => dst
B b (.unit) label .unit = S1, S2  
CMPEQ cmpeq (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1=src2
CMPGT CMPGTU cmpgt (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1>src2
CMPLT CMPLTU cmplt (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1<src2
MPY MPYU mpy (.unit) src1, src2, dst .unit =.M1,.M2 src1*src2 => dst
MV mv (.unit) src, dst .unit =.L1,.L2, S1,.S2,.D1,.D2 src => dst
MVK mvk (.unit) cst, dst .unit =.S1,.S2 cst => dst
NEG neg (.unit) src, dst .unit =.L1,.L2,.S1,.S2 =src => dst
NOP nop  
STB STH STW stb (.unit) src, *+baseR[offserR] .unit =.D1,.D2 src => baseR[offsetR]
LDB LDH LDW ldb (.unit) *+baseR[offserR], dst .unit =.D1,.D2 baseR[offsetR] => dst
AND and (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1 AND src2 => dst
OR or (.unit) src1, src2, dst .unit =.L1,.L2,.S1,.S2 src1 OR src2 => dst
XOR xor (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1 XOR src2 => dst
NOT not (.unit) srt, dst .unit =.L1,.L2,.S1,.S2  
SHL shl (.unit) src2, src1, dst .unit =.S1,.S2 (src2 на src1) => dst
SHR shr (.unit) src2, src1, dst .unit =.S1,.S2 (src2 на src1) => dst
Инструкция Мнемоника Действие
ABSSP ABSDP abssp (.unit) src, dst .unit =.S1,.S2 absdp(src) => dst
ADDSP ADDDP addsp (.unit) src1, src2, dst .unit =.L1,.L2 src1+src2 => dst
SUBSP SUBDP subsp (.unit) src1, src2, dst .unit =.L1,.L2 src1+src2 => dst
CMPEQSP CMPEQDP cmpeqsp (.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1=src2
CMPGTSP CMPGTDP cmpgtsp(.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1>src2
CMPLTSP CMPLTDP cmpltsp (.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1<src2
MPYSP MPYDP mpysp (.unit) src1, src2, dst .unit =.M1,.M2 src1*src2 => dst
SPINT spint (.unit) src, dst .unit =.L1,.L2 src1 => dst
INTSP intsp (.unit) src, dst .unit =.L1,.L2 src1 => dst
DPINT dpint (.unit) src, dst .unit =.L1,.L2 src1 => dst
INTDP intdp (.unit) src, dst .unit =.L1,.L2 src1 => dst
DPSP dpsp (.unit) src, dst .unit =.L1,.L2 src1 => dst
SPDP spdp (.unit) src, dst .unit =.L1,.L2 src1 => dst

Листинг программы показывает исходные инструкции и объектный код, который они производят. Чтобы получить файл листинга, вызовите ассемблер с опцией - L. Листинг печатается постранично. Незаполненную строку и строку заголовка, имеют наверху каждая страница распечатки. Любой заголовок, определенный.title директивой, печатается в строке заголовка. Номер страницы печатается справа от заголовка. Если Вы не используете.title директиву, печатается имя исходного файла. Ассемблер вставляет незаполненную строку ниже строки заголовка.

Каждая строка в исходном файле создает, по крайней мере, одну строку в файле листинга. Она содержит в порядке слева направо номер исходной инструкции, значение SPC, объектный код, и исходную инструкцию..

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




Поделиться с друзьями:


Дата добавления: 2014-10-17; Просмотров: 900; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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