Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
Топ:
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Теоретическая значимость работы: Описание теоретической значимости (ценности) результатов исследования должно присутствовать во введении...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Интересное:
Наиболее распространенные виды рака: Раковая опухоль — это самостоятельное новообразование, которое может возникнуть и от повышенного давления...
Как мы говорим и как мы слушаем: общение можно сравнить с огромным зонтиком, под которым скрыто все...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2022-10-04 | 23 |
5.00
из
|
Заказать работу |
|
|
Доступ к элементам стека с помощью BP осуществляется на основе определения расстояния от нужного слова до вершины стека и базовой адресации.
BPпо умолчанию относится к сегменту стека, а не к сегменту данных.
Например,
MovBP, SP;BP:=SP
MovAX, [BP+4]; ≡ movAX, SS:[BP+4]
ЯА: элементарные конструкции и предложения (2ч)
1. Идентификаторы.
В ЯА это последовательность латинских букв, цифр и знаков?. @ _ $
Особенности:
- длина идентификатора не ограничена, но различимыми являются только первые 31 символа;
- идентификатор не может начинаться с цифры;
- точка может быть только первым символом идентификатора;
например,.ABR
- остальные знаки эквивалентны буквам и могут находиться в любом месте идентификатора;
- одноименные заглавные и строчные буквы считаются эквивалентными;
- идентификаторы не должны совпадать с ключевыми словами.
Идентификаторы делятся на 2 вида:
А) имя – это ссылка на адрес первого байта, содержащего данные (константы или переменные).
Имена описываются директивой декларации.
Например, FATALDB 13
Это имя имеет атрибут (тип) BYTE, WORD и т.д.
Б) Метки - это идентификатор инструкции или директивы, который используется для передачи управления.
- Метки сегментов и процедур
LAD Segment
…
Ends
Fun PROC
…
ENDP
- Метки команд (инструкций) располагаются в начале строки и отделяются от МНК двоеточием.
- Метка имеет атрибут NEAR или FAR.
В ЯА допускается только одна метка на строке, но можно метку поместить на отдельной строке, что позволяет пометить инструкцию, расположенную на следующей строке.
- Запрещены метки, состоящие из одного «?» или «$».
- Одну и ту же инструкцию можно пометить дважды.
Например,
|
Nachalo:
Lab: ADD AX, DX
…
JMP Nachalo
…
JMP Lab
2. Ключевые(зарезервированные)слова имеют определенный смысл и соответственно воспринимаются Ассемблером.
Например,
.286 – директива, позволяющая использовать в программе команды МП i80286;
AND – мнемоника команды;
AX – имя регистра;
.ERR – директива генерации кода ошибки.
3. Целые числа могут быть записаны в двоичной, десятичной, восьмеричной или 16-ричной системах счисления. На это указывает буква в конце числа (спецификатор)
ПСС | Спецификатор | Примеры |
10 | D или ничего | 25, -386, +4d |
2 | B | 101b, -1001B |
8 | Oили Q | 74q, -22Q |
16 | H | 1A3h, -0B4H |
Примечания:
- для 16-чной СС, если число начинается с цифры от A до F, то перед ним ставится ноль,
- в числах можно использовать заглавные или строчные латинские буквы.
4. Символьные данные заключаются в одинарные либо двойные кавычки, либо в апострофы, но левый и правый ограничители должны быть одинаковыми.
Примечания:
- в качестве символов можно использовать любые символы и буквы;
- заглавные и строчные буквы различаются;
- если внутри строки символов нужно использовать кавычки, то есть 2 возможности:
или удвоить кавычки, например, ‘Don’’t’;
или использовать другой вариант ограничителя строки, например, «Don’t» или
‘Кафе «Мир»’
5. Выражения
В ЯА выражения состоят из чисел и/или символов, обозначающих числа.
Выражения определяют операнд или его адрес.
Например, в декларации
AlfaEQU1014; константа Alfa=2
Возможные операции в выражениях:
+, -, *, /, mod, (), notk (поразрядная инверсия от операнда k)
Highn – старший байт числа n
lown – младший байт числа n
Выражением считается список констант в декларации.
Например, AreaDB 2, -8, 7
В инструкциях выражения используются для вычисления только адреса операндов.
При этом возможны виды адресации, которые программе можно записать разными записями:
1) Косвенная[Рг Б] или [Рг И]
где [Рг Б] – содержимое базового регистра (BPили BX)
[Рг И] – содержимое индексного регистра (CIили DI)
|
2) ИндекснаяDisp [Рг И] или [РгИ]+disp
где disp – смещение в байтах, которое может быть const или выражением;
3) БазоваяDisp [Рг Б] или [РгБ]+disp
4) Базово-индекснаяDisp [Рг Б] [Рг И]
Disp [Рг Б] + [Рг И]
Disp [Рг Б + Рг И]
[Рг Б] [Рг И] + disp
[Рг Б] + [Рг И] + disp
[Рг Б + Рг И] + disp
Между индексным и базовым регистрами (адресациями) разницы нет, но они выделены, т.к. в базово-индексной адресации можно использовать только пары из разных групп.
Пример:
MovAX,2[DI]; AX:=ОП [ [DI] + 0002H]
Mov [BX], AL; ОП [BX]:= [AL]
|
|
История развития пистолетов-пулеметов: Предпосылкой для возникновения пистолетов-пулеметов послужила давняя тенденция тяготения винтовок...
Историки об Елизавете Петровне: Елизавета попала между двумя встречными культурными течениями, воспитывалась среди новых европейских веяний и преданий...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!