>
У двох останніх випадках необхідно використовувати спеціальний оператор PTR.
<тип> PTR <вираз>
Вираз може бути константним або адресним, а тип - BYTE, WORD, DWORD і т.д.
byte PTR 0; 0 сприймається як байт
word PTR 0; 0 сприймається як слово
byte PTR op1; один байт в пам'яті починаючи з цієї адреси
byte PTR [SI], 0
? MOV [SI], byte PTR 0
? MOV [SI], word PTR 0; 0 ® ((DS) + (SI))
7. Якщо тип обох операндів в команді визначається, то ці типи повинні відповідати один одному.
AH, 500; повідомлення про помилку.
MOV AX, X; помилка, Х - 1байт, АХ - 2 байти.
MOV AL, R; помилка
MOV AL, byte PTR R; (AL)=34h
MOV AL, byte PTR R +1; (AL)=12h
До командам пересилання відносять:
) команду обміну значень операндів.
XCHG OP1, OP2; r «r? r" m
MOV AX, 10h
MOV BX, 20h
XCHG AX, BX; (AX)=20h, (BX)=10h
2) команду BSWOP для перестановки значень байтів всередині регістра. Наприклад, якщо (EAX)=12345678h, то після виконання команди BSWOP EAX вміст (EAX)=78563412h.
) команди конвертації:
; безадресна команда, (AL) ® AX.
CWD; (AX) ® DS: AX (для i386 і вище)
EWDE; (AX) ® EAX
CDF; (EAX) ® EDX: EAX
4) команди умовної пересилання CMOVxx:
AL, BL; якщо (AL) < (BL), то (BL) ® (AL)
5) команду завантаження адреси:
OP1, OP2
Ця команда обчислює адресу OP2 і пересилає перший операнд, який може бути тільки регістром.
BX, M [DX] [DI]
9. Структура програми на Асемблері
архітектура мікропроцесор пам'ять асемблер
Асемблер - це мова програмування низького рівня і програма, написана на Асемблері, повинна пройти три етапи обробки на комп'ютері, як і програма, написана на будь-якому іншому мовою программірованія.етап - перетворення вихідного модуля в об'єктний - ассемблирование . Вихідних модулів може бути 1 або декілька. II етап - за допомогою програми редактора зв'язків об'єктні модулі об'єднуються в завантажувальний, виконуваний модуль. III етап - виконання програми.
Існує два типи виконуваних модулів (виконуваних файлів): exe-файл (<ім'я>. exe) і com-файл (<ім'я>. com). В результаті виконання другого етапу виходить виконуваний exe-файл, щоб отримати com-файл, необхідно виконати ще один етап обробки - перетворення exe-файлу в com-файл.
Вихідний файл на Асемблері складається з команд і директив. Команди перетворюються на машинні коди, що реалізують алгоритм вирішення задачі. Директиви описують, яким чином необхідно виконувати ассемблирование і об'єднання модулів. Вони описують формати даних, що виділяються області ...