Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Вопросы по ЛР5_8 Рейтинг 2 СП_ответы_2.doc
Скачиваний:
3
Добавлен:
17.09.2019
Размер:
75.26 Кб
Скачать

5

Лр 5 (с повторами для каждого варианта)

  1. Какие разновидности команды XLAT Вы знаете, и чем они отличаются?

XLAT,XLATB используются для перекодировки байтовых символов.

XLAT [адрес таблицы символов]

XLATB

1)В регистр AL заносится символ для перекодировки

2)Длинный адрес DS:BX определяет адрес таблицы перекодирования символов, длина которой не может превышать 256 символов

3)после выполнения команды XLAT в AL перемещается символ из таблицы по адресу [BX+AL]или адрес таблицы + AL.

  1. Как организовать ожидание ввода символа в Ассемблере?

Прерывание 01h

  1. Какие системы счисления Вы знаете?

Двоичная, десятичная, шестандцатеричная, восьмеричная

  1. В чем отличие символьного и шестнадцатеричного представления в ОП?

Шестнадцатеричное представление-основывается на системе исчисления с основанием 16.

Каждый разряд соответствует степени 16.

Запись числа -с цифры, переменной- просто

0fah fah

  1. Можно ли в процедуру Ассемблера передать параметры при ее вызове и как?

Через стек, команда PUSH

Через общую область памяти, через регистры:;mov AX, X

mov AX, DataSg

mov DS, AX

;

call Y

Y proc

mov AX, ds:0000h ; извлекаем параметр по адресу ds:0000h

...

  1. Что такое стек и для чего он нужен?

Область программы для временного хранения произвольных данных. Область стека можно использовать многократно, сохранение и выборка данных производится с помощью команд PUSH и POP без указания каких-либо имен

LIFO

  1. В каких командах Ассемблера неявно используется стек?

Call,INT,IRET,RET

  1. Поясните работу команды CMP?

Команда процессора для сравнения чисел. Сравнивает 2 числа, сохраняя результат работы во флагах

  1. Поясните работу команды условного перехода — JE/JNE?

JE-переход, если числа равны, JNE-переход, если числа не равны. Проверка условия и прыжок на указанный адрес.

  1. Какие регистры неявно используются в команде LOOP?

CX-счетчик итераций цикла

  1. Поясните работу команды LOOP?

В каждом цикле команда LOOP автоматически уменьшает содержимое регистра CX на 1, цикл выполняется, пока значение CX не станет равно 0. В начале используется начальное значение в регистре CX.

  1. Как организовать вложенный цикл в Ассемблере?

Сохранить значение CX перед началом вложенного цикла и восстановить его после завершения(Перед командой LOOP внешнего цикла)

  1. Как по листингу определить размер программы в оперативной памяти (ОП)? Смещение операторов и данных в оперативной памяти,вычисленное с учетом длинны команд и данных (вторая колонка)

  2. Как по листингу определить длину фрагмента программы, указанного преподавателем?

В части описания сегментов дается описание сегментов программы и их свойств (в

нашем случае сегмент - MYCODE). Таким образом можно просмотреть длину сегмента.

  1. Чем отличаются *.COM и *.EXE исполнимые файлы, построенные Ассемблером?

*.com файл

1)вписывается в сегмент

2)при компиляции ключ /t

3)ORG 100H — область для PSP

  1. Как можно в программе ассемблера организовать ветвление?

С помощью прыжков

  1. Поясните команды условного и безусловного перехода.

Условный переход-осуществляет передачу управления, в зависимости от значений файлового регистар

Безусловный-передает управление всякий раз, когда он выполняется,т.е.переход,который выполняется всегда(CALL)

  1. Какие команды сравнения Вы знаете?

TEST,CMP,CMPSB,CMPSW,CMPS\

Команда Test выполняет операцию AND (логическое И) с двумя операндами и в зависимости от результата устанавливает или сбрасывает соответствующие флаги. Результат не сохраняется. Test используется для проверки бит, например в регистре:

test eax, 100b

jnz смещение

  1. Какие системы счисления Вы знаете?

  2. Поясните работу команды CMP?

  3. Поясните работу команды LOOP?

  4. Как организовать вложенный цикл в Ассемблере?

  5. Доп. Чем отличаются *.COM и *.EXE исполнимые файлы, построенные Ассемблером?

  6. Как организовать вывода символа на экран в Ассемблере?

  7. Какие команды условного перехода Вы знаете?