Дані в асемблері
Секції .data, .data? і .const необхідні визначення даних програми. Місце під дані резервується директивами db, dw, dd, dq, dt.
Секція .data найуніверсальніша ми резервуємо пам'ять під дані і відразу ж ініціалізуємо їх, тобто. задаємо їм початкові значення. Всі дані з цієї секції включаються до файлу. Секція .data? менш гнучка, оскільки дані не можна ініціалізувати. Всі дані в цій секції не включаються до файлу, тому місце тільки резервується, але початкові значення не задаються. Дані в обох розділах мають повний режим доступу. Секція .const призначена лише для читання. Але помилок немає при спробі змінити ці дані (. ). Ця секція найкорисніша.
В асемблері можна задавати тільки ANSI рядки, Unicode рядки складніше задавати і для їхньої обробки існує цілий ряд API функцій. В асемблері також можна замість присвоєння однобайтовою змінною деякого числа можна присвоїти змінно букву. Але, зрештою, ця змінна дорівнюватиме коду літери в кодуванні ANSI. При ініціалізації символу можна використовувати і лапки та апострофи - не має значення.
Все вище написане те саме, що й:
При передачі рядків функцій як параметри треба щоб наприкінці рядка був 0, щоб функція змогла знайти кінець рядка.
Заповнення даними.
Іноді потрібно описати багато однакових змінних приблизно штук 30. Ви робитимете так
Це незручно і негарно, тим паче можна обрахуватися. Для зроблено директиву DUP.
у дужках вказуємо, чим треба заповнювати, можна використовувати символи в лапках, обов'язково щоб розмір дужок збігався з директивою.
Із даними все зрозуміло. Читаємо наступний урок. На 6 уроці ми говоритимемо про мітки та їхвикористання.