Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
вопросы по экзамену(Асемблер).doc
Скачиваний:
2
Добавлен:
01.03.2025
Размер:
350.72 Кб
Скачать

36 Вопрос

Программа на языке ассемблера состоит из строк, имеющих следующий вид:

Метка(имя) мнемокод(команда/директива) операнды ; комментарий

  • имя — идентификатор, отличающий данную директиву от других одноименных директив. В результате обработки ассемблером определенной директивы этому имени могут быть присвоены определенные характеристики;

  • директива — это мнемонические обозначения соответствующей машинной команды, макрокоманды или директивы транслятора;

  • операнды — части команды, макрокоманды или директивы ассемблера, обозначающие объекты, над которыми производятся действия. Операнды ассемблера описываются выражениями с числовыми и текстовыми константами, метками и идентификаторами переменных с использованием знаков операций и некоторых зарезервированных слов.

Причем все эти поля необязательны. Метка может быть любой комбинацией букв английского алфавита, цифр и символов _, $, @, ?, но цифра не может быть первым символом метки, а символы $ и ? иногда имеют специальные значения и обычно не рекомендуются к использованию.

15 Вопрос

Данные могут размещаться в участках памяти которые называются сегментами:

Сегмент кода

Сегмент данных

Сегмент стека

Сегменты описываются с помощью директивы ассемблера SEGMENT или с помощью управляющих директив:

.CODE

.DATA

.MODEL

Для инициализации простых типов используются простые директивы Dx, являющиеся указанием компилятору на выделение определенных объектов памяти

DB — определить байт;

DW — определить слово (2 байта);

DD — определить двойное слово (4 байта);

DQ — определить учетверенное слово (8 байт);

DT — определить 10 байт (80-битные типы данных, используемые FPU).

Например

text_string db 'Hello world!'

number dw 7

float_number dd 3.5e7

9Вопрос

Заголовок программы

Title «заголовок программы»

Модель памяти

.madel_large модель с несколькими сегментами кода и данных

.model_tiny

.model_small

.model_medium

.model_compact

.model_huge

Сегмент стека

.Stack

Директивы распределения и инициализации памяти

Dx

Сегмент данных

.Data

Описание директивы внешних переменных

Dx

.Extrn

Сегмент кода

.Code

Директивы распределения и инициализации памяти

Dx

Директивы описания внешних переменных

Extrn

Проуедуры

PROC

…….

Endp

Конец программы

End

5 Вопрос

8 Вопрос

Для получения объектного модуля исходный файл необходимо подвергнуть трансляции при помощи программы Tasm.exe

Формат командной строки для запуска TASM.exe

TASM[опции] имя исходного файла [,имя объектного файла] [,имя файла листинга][,имя файла перекрестных ссылок]

Обязательным аргументом командной строки является лишь имя исходного файла. Этот файл должен находится на диске и иметь расширение .asm

TASM.exe z1.asm, , ,

TASM.exe z1, z2, z3, z4