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



Дата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 ‘Введите , пожалуйста, снова’


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




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

    Басты бет