Директивы : Формат директивы: Примеры



Дата07.02.2022
өлшемі19,34 Kb.
#84784
Байланысты:
Ассемблерде программалау негіздері


Директивалар
Директивалардвң (псевдокомандалардың) көмегімен сегменттер мен пройедураларды анықтауға, командалар мен мәліметтер элементтеріне ат беруге, жадтың жұмысшы аумақтарын анықтауға және т.с.с. әрекеттерді орындауға болады. Директивалардвң жазылу түрлері:
Жиі кездесетін директивалардың түрлері :

  1. SEGMENT ENDS – негізгі прграмманы сегменттерге бөледі, сегменттің басын және аяғын білдіреді. Сегмент түрлерін анықтау үшін ASSUME директивасы қолданылады. Оның жазылу түрі: Мұндағы, сегмент_регистрі – DS, CS, SS, ES сегмент регистрінің аты, : сегмент_аты – SEGMENT ДИРЕКТИВАСЫНДА КӨРСЕТІЛГЕН АТ.

  2. PROC ENDP процедураның басын және соңын білдіреді. Процедура дегеніміз – программаның әр жерінде орындалатын командалардың тізбегі.

Ассемблер тілінде кездесетін тұрақтылардың түрлері:

  1. екілік сандық жүйесіндегі тұрақтылар: 0 және 1-ден тұратын сандар тізбегі. Тізбектің соңында В әрпі жазылады. Мысалы: 1011011В.

  2. орындық сандық жүйесіндегі тұрақтылар: 0+9 аралығында сандар. D әрпімен аяқталуы мүмкін. Мысалы: 927 не 927D.

  3. 16-лық сандық жүйесіндегі тұрақтылар: 0+9 аралығында сандар, А+Ғ латын әріптері. Н әрпімен аяқталады. Алғашқы символ сан болуы тиіс. Мысалы: 1Е23Н.

  4. символдардың тұрақтылар – тырнақшаға алынып жазылған әріп, сан не символдар тізбегі.

Теріс сандарды енгізу үшін келесі тәсілдер қолданылады: егер сан ондық жүйеде болса, алдына минус белгісі қойылады, егер сан 2-лік не 16-лық жүйеде болса, оны толықтырғыш кодқа ауыстыру керек.
Мәліметтерді анықтау директивалары
Директивы определения данных

Название директивы : Формат директивы: Примеры :

DB (Define Byteопределить байт) имя DB выражение [, …] VOL DB 56

DW (определить слово) имя DW выражение [, …] TIME DB 120

DD (определить двойное слово) имя DD выражение [, …] SPEED DW 560
Директивы DB и DW можно использовать для создания в памяти таблиц, перечисляя через запятую начальные значения переменных, образующих таблицу.
Например:

B_TABL DB 0,0,0,0,8,-13

DB 100, 0, 55, 63, 63, 63

или B_TABL DB 4 DUP(0), 8,-13, 100, 0, 55, 3 DUP(63)


W_TABL DW 1025, 370, 0, -32768, 5, 130

DW 11, 210, 176, 542, 3, 711


При определении переменной без присваивания ей начального значения, ставится знак ?
Например, резервируем байт и слово в памяти, но значения не заносим:
ROST DB ?
VES DW ?

Резервирование памяти для таблицы: RES_NABL DW 31 DUP(?) – 31 СЛОВО ПАМЯТИ


Пример: SOOB DB ‘Введенное число не может быть обработано’
DB ‘Введите , пожалуйста, снова’


Достарыңызбен бөлісу:




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет