КАТЕГОРИИ: Архитектура-(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) |
Подпрограммы
Макрокоманды Пременные Определение символьного имени Формат оператора Каждый оператор языка ассемб заним отдельн строку и имеет формат Поле_метки (:,)) поле_операции операнды коммент (Имя) (,) (;) Операции делятся на 2 группы 1) машиннные команды вход в сост сист команд процессора 2) псевдокоманды ассемб (директивы) в общем случ псевдоком не имеют машиннного кода они использ для управл процес трансляции
Нужно различать символьные имена и цифры. Если использ 16-ая СС в котор задейств буквы от A до F то перед этой цифрой надо постав 0 (01А8В) Имена начин с букв и разреш символов. Когда запис цел числа то в конце став условный знак СС: 12d – в 10СС принято по умолчанию(28о-в 8СС, 3Вh-в 16СС, 101b-2CC) Для определ символ имен использ выраж: Имя EQU выражение (число, строкасимволов, псевдоним) В качестве выражен может использ такие выраж, кот на этопе трансляц выр в число X equ 5 Addr x equ dword ptr[bp+6] Вместо equ можно использ = для числен выражен котор не измен. Имена опред через equ можно переопределить.
- именованные области памяти для хранения данных. Переменные имеют след атрибуты: сегмент, смещение, тип Для опред псевдоимен: имя (db,dw,dd,…) выражение Array x db 5,6,7,8,9 Messag db ‘error’ X db? – резерв памяти под переменн z db 10 dup (0) y dw 1,2,3 0 рост ад ресов→ | 1|0|2|0|3|0 Тип переменной можно изменит 2-мя способами 1) x dd 1234h 2) x byte lable byte x dd? для изменения сегмента использ префиксы замены сегмента mov al, es:[bx] mov cx, ss[bp+4]
последовательность команд которая объявл специальн образом имеет имя и может иметь формальные парамет объявление макроком машинного кода не имеет в исх тексте прогр принеобход использ указ ее имя с фактич параметр. На этапе трансляции ассембл производ макрорасшир, т.е. вставляет вместо макрообращ последов команд и замен формальн парам фактич имя macro формальные парам local метки последов команд endm – память ↑, + быстро работ Если в макроком использ метки то они должны быть объявлены локальными. При объявл меток локальн ассембл созд новые метки
– хранятся в памяти только 1 раз в отлич от макроком. Вызов и возврат из подпрогр производ во время выполн программы Имя proc тип (near, far) Послед команд Имя endp Для передачи парам в подпрогр испрольз след способы 1) через регистр процессора (при выз MS DOS и BIOS) 2) через общую память 3)через стек (использ при выз функц Windows и в языках выс уровня) Пример far(F+) (a:byte,b:word, c:string): string Тест проц: push bp mov bp sp… pop bp ret 8
Дата добавления: 2014-01-06; Просмотров: 338; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |