У вас вопросы?
У нас ответы:) SamZan.net

варианта внутрисегментного использования команды jmp- прямой короткий; прямой; косвенный

Работа добавлена на сайт samzan.net: 2016-03-13

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 27.4.2025

  1.  Команды безуслоной передачи управления.

Jmp - команда безусловного перехода. Формат команды: jmp [модификатор] адрес_перехода

Можно выделить три варианта внутрисегментного использования команды jmp: прямой короткий; прямой; косвенный. 

near ptr — прямой переход на метку внутри текущего сегмента кода. Модифицируется только регистр eip/ip (use16 или use32) на основе указанного в команде адреса (метки);

far ptr — прямой переход на метку в другом сегменте кода. Адрес перехода задается в виде непосредственного операнда или адреса (метки) и состоит из 16-битного селектора и 16/32-битного смещения, которые загружаются, соответственно, в регистры cs и ip/eip; 

word ptr — косвенный переход на метку внутри текущего сегмента кода. Модифицируется только eip/ip. Размер смещения 16 или 32 бит;

dword ptr — косвенный переход на метку в другом сегменте кода. Модифицируются оба регистра, cs и eip/ip. Первое слово/двойное слово этого адреса представляет смещение и загружается в ip/eip; второе/третье слово загружается в cs.

CALL - вызов процедуры. Формат команды: CALL имя_процедуры

RET - возврат из процедуры.

Команда CALL осуществляет функции запоминания адреса возврата и передачи управления процедуре.

Команда RET извлекает из стека адрес возврата.

Для облегчения

ориентации в многочисленных функциях DOS, осуществляющих

операции над файлами, каталогами и дисками, их удобно разбить на

смысловые группы.

1. Создание, открытие и закрытие файла:

3Ch - создать файл;

5Ah - создать временный файл;

5Bh - создать новый файл;

3Dh - открыть файл; 3Eh - закрыть файл;

68h - сбросить файл на диск;

4lh - удалить файл.

 

2. Запись и чтение данных:

42h - установить указатель;

3Fh - читать из файла или устройства;

40h - записать в файл или устройство.

 

3. Изменение характеристик файла: 4

3h - получить или установить атрибуты файла;

56h - переименовать файл;

57h - получить или установить дату и 'время создания файла.

 

4. Поиск файла:

lAh - установить адрес области передачи данных (DTA);

2Fh - получить адрес области передачи данных (DTA);

4Eh - найти первый файл;

4Fh - найти следующий файл.

 

5. Операции над каталогами;

39h - создать каталог;

3Ah - удалить каталог;

3Bh - сменить текущий каталог:

47h - получить текущий каталог.

 

6. Операции над дисками:

19h - получить текущий диск;

0Eh - сменить текущий диск;

36h - получить информацию о диске.

  1.  билет
  2.  макрокоманда - это конструкция, позволяющая создать последовательность

машинных инструкций и/или данных, в зависимости от параметров макрокоманды и/или состояния компиляции.
процедура же - это жёсткая последовательность машинных инструкций и/или данных.

язык должен отличаться гибкостью. значит, для создания языка подходят макрокоманды.

  1.  Команды сдвига и циклического сдвига вправо перемещают во флаге переноса CF значение нулевого бита, а влево - значение бита 7, 15 или 31.

Команды делятся на две группы. Логические команды сдвигают операнд, не считаясь с его знаком. Арифметические команды сохраняют старший, знаковый бит операнда.

Общий формат команд сдвига: коп операнд, счетчик

Команды сдвига и циклического сдвига имеют два операнда: приемник и счетчик. Приемником может быть 8, 16 или 32-битовый регистр общего назначения или ячейка памяти. Счетчик может быть непосредственное значение или значением без знака в регистре CL.

SAL - арифметический сдвиг влево.

SAR - арифметический сдвиг вправо.

Команды сдвигают числа со знаком. Команда SAR  сохраняет знак операнда. Команда SAL - не сохраняет знак, но заносит 1 во флаг переполнения OF в случае изменения знака операнда.

При каждом сдвиге операнда команда SAL заносит 0 в вакантный нулевой бит этого операнда.

SHL – логический сдвиг влево.

SHR  – логический сдвиг вправо.

Команды сдвигают числа без знака. Команда SHL идентична команде SAL. Команда SHR аналогична команде SHL, но сдвигает число вправо. При каждом сдвиге операнда команда SHR заносит ноль в вакантный старший бит этого операнда (бит 7, бит 15 или бит 31).

Состояние флагов после выполнения команд: Изменяются значения флагов OF, SF, ZF, PF, CF.

Поскольку сдвиг операнда на один бит влево удваивает значение операнда (умножение на 2), а сдвиг на один бит вправо уменьшает значение операнда вдвое (деление на 2), то команды сдвига можно использовать в качестве команд быстрого умножения и деления.




1. отмена крепостного пра
2. Белгородский государственный национальный исследовательский университет на предприятиях в учреждения
3. Управленческий учет предприятия
4. Биосинтез ДНК
5. Сущность и значение функции контроля в менеджменте
6. Реквием Лина Мне снова стал сниться Портленд
7. Выполните схему разреза цокольной части наружной кирпичной стены t510мм на ленточном бутовом фундаменте уси
8. ЯМР как аналитический метод
9. Тема- 1 Ортодонтичні та ортопедичні конструкції в дитячому віці Ортодонтія як частина ортопедичної стомат
10. денежный Доход потребителя ограничен; 2 цены не зависят от количеств благ покупаемых отдельными домохозя