КАТЕГОРИИ:
Архитектура-(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 ; Нарушение авторских прав? ; Мы поможем в написании вашей работы!
Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет