априклад, - 125 або 78d.
Цілі шістнадцяткові числа - повинні починатися з цифри і закінчуються символом h, якщо перша цифра шістнадцятирічного числа це - A, B, C, D, E, F, то перед ним необхідно поставити нуль, інакше вони будуть сприйматися як символічні імена, наприклад, 12ABh, 79CDh, 0AE5Ah.
Числа дійсні з плаваючою точкою представляються у вигляді мантиси і порядку, наприклад, - 34.751е +02 - це 3475.1 або 0.547е - 2 - це 0.00547.
Символьні дані - це послідовності символів, укладені в апострофи або подвійні лапки, наприклад, «abcd», «a1b2c3», 567 '.
Також, як і в мовах високого рівня, в Асемблері можуть використовуватися іменовані константи. Для цього існує спеціальна директива EQU. Наприклад,
M EQU 27; директива EQU привласнює імені М значення 27.
Змінні в Асемблері визначаються за допомогою директив визначення даних і пам'яті, наприклад,
1 DB 0CFh
v2 DW 34
або за допомогою директиви=
3=100
v3=v3 +1
Константи в основному використовуються в директивах визначення або як безпосередні операнди в командах.
Вирази в Асемблері будуються з операндів, операторів і дужок.
Операнди - це константи або змінні. Оператори - це знаки операцій: арифметичних, логічних, відносин і деяких спеціальних.
Арифметичні операції: +, -, *, /, mod.
Логічні операції: NOT, AND, OR, XOR.
Операції відносин: LT (<), LE (?), EQ (=), NE (?), GT (>), GE (?).
Операції зсуву: зрушення вліво (SHL), зрушення вправо (SHR).
Спеціальні операції: offset і PTR.
offset <ім'я>- Її значенням є зміщення операнда, а операндом може бути мітка або змінна;
PTR - визначає тип операнда, яким може бути:
BYTE=1 байт,
WORD=2 байт,
DWORD=4 байт,
FWORD=6 байт,
QWORD=8 байт,
TWORD=10 байт;
або тип виклику: NEAR - ближній, FAR - далекий.
Приклади виразів: 1) 10010101b +37 d 2) OP1 LT OP2
3) (OP3 GE OP4) AND (OP5 LT OP6) 4) 27 SHL 3;
. Директива визначення даних і пам'яті
Загальний вигляд директиви визначення наступний:
[<ім'я>] Dx [<операнди>] [<; коментарі>],
де x - це один із символів: B - визначити байт, W - визначити слово, D - визначити подвійне слово, F - визначити 6 байтів пам'яті, Q - визначити 8 байтів пам'яті, T - визначити 10 байтів пам'яті. У полі операндів може бути знак питання, одна або кілька констант, розділених комою. Ім'я, якщо воно є, визначає адресу першого байта виділеної області. Директивою виділяється вказану кількість байтів, і зазначені операнди заповнюють відповідні поля пам'яті. Якщо операндом є знак питання (?), То значенням відповідного поля буде випадкова величина. Приклади:
) R1 DB 0, 0, 0, 0; виділено 4 байта, ...