Каждый раз при переключении задачи флаг TS устанавливается в 1. Команда CLTS позволяет сбросить этот флаг.
LAR Загрузка байта прав доступа
Синтаксис:
lar операнд1, операнд2
Команда LAR использует в качестве операнда1 - 32-разрядный регистр. Кроме байта прав доступа в этот регистр заносятся биты типа сегмента (9-11), DPL (14), бит присутствия (15), бит дробности (23). Операнд2 явл селектором, указывающим на используемый дескриптор.
LGDT Загрузка регистра GDTR
Синтаксис:
lgdt источник
GDTR – регистр глобальной дескрипторной табл.
47 | 15 0 |
ЛБА | Предел |
ЛБА – линейный базовый адрес
Предел – max возможное смещение табл от начала(т.е это размер табл. в байтах)
Команда выполняет инициализацию регистра GDTR, указывающего расположение в памяти и размер глобальной дескрипторной табл.
SGDT Запись в память содержимого регистра GDTR
Команда позволяет узнать текущее содержимое регистра глобальной дескрипторной таблицы GDTR, обычное её используют в системных отладчиках.
LIDT Загрузка регистра IDTR
Синтаксис:
lidt источник
IDTR – регистр дескрипторной табл. прерываний
47 | 15 0 |
ЛБА | Предел |
ЛБА – линейный базовый адрес
Предел – max возможное смещение табл от начала(т.е это размер табл. в байтах)
IDT может содержать только шлюзы задач, шлюзы прерываний или шлюзы ловушек.
Команда выполняет инициализацию регистра IDTR, указывающего расположение в памяти и размер дескрипторной табл прерываний.
SIDT Записать в память содержимое регистра IDTR
Команда позволяет узнать текущее содержимое регистра глобальной дескрипторной таблицы прерываний IDTR, используется в системных отладчиках.
LLDT Загрузка регистра LDTR
Синтаксис:
lidt источник
LDTR – регистр локальной дескрипторной табл.
Это одно из средств инкапсуляции данных.
15 0 |
Селектор |
Этот регистр содержит селектор, который явл указателем в таблице, и описывает сегмент, содержащий локальную дескрипторную таблицу LDT;
Команда выполняет инициализацию регистра LDTR, указывающего расположение в памяти и размер локальной таблицы дескрипторов.
SLDT Записать в память содержимое регистра LDTR
Команда позволяет узнать текущее содержимое регистра локальной дескрипторной таблицы LDTR, используется в системных отладчиках.
LMSW Загрузка слова состояния процессора
С помощью этой команды можно выполнить загрузку младшего слова регистра CR0 из регистра - операнда команды. Эта команда может использоваться для переключения МП в защищённый режим. Обратного переключения эта команда не обеспечивает (даже для процессоров i80386 и i80486).
SMSW Записать слова состояния процессора
Команда записывает в память или 16-битовый регистр младшее слово регистра CR0 и может быть использована в системных отладчиках.
LSL Загрузка предела сегмента
Синтаксис:
lsl операнд1, операнд2
Граница сегмента, селектор которого используется в качестве операнда2 (задаётся в регистре), загружается в регистр, указанный в качестве операнда1.
LTR Загрузка регистра задачи
Команда предназначена для загрузки регистра TR - регистра задачи. Загрузка этого регистра не приводит к переключению задачи.
STR Запись регистра задачи
Команда записывает текущее содержимое регистра задачи TR в 16-разрядную ячейку памяти или 16-разрядный регистр. Может использоваться в системных отладчиках.
VERR / VERW Проверить сегмент на возможность чтения / записи
С помощью этих двух команд можно проверить доступность выбранного селектором сегмента на чтение и запись, соответственно. Если операция чтения или записи доступна, флаг нуля ZF устанавливается в 1, в противном случае он сбрасывается в 0.
Основное назначение этой команды - предотвратить возникновение исключения по защите памяти при попытке обращения к сегменту. Прежде чем выполнять обращение, программа может проверить доступность сегмента и сделать соответствующие выводы.
Опешите состав и назначение команд передачи адресных объектов.
lea назначение,источник — загрузка эффективного адреса;
lds назначение,источник — загрузка указателя в регистр сегмента данных ds;
les назначение,источник — загрузка указателя в регистр дополнительного сегмента данных es;
lgs назначение,источник — загрузка указателя в регистр дополнительного сегмента данных gs;
lfs назначение,источник — загрузка указателя в регистр дополнительного сегмента данных fs;
lss назначение,источник — загрузка указателя в регистр сегмента стека ss.
Команда lea похожа на команду mov тем, что она также производит пересылку. Однако, обратите внимание, команда lea производит пересылку не данных, а эффективного адреса данных (то есть смещения данных относительно начала сегмента данных) в регистр, указанный операндом назначение.
Часто для выполнения некоторых действий в программе недостаточно знать значение одного лишь эффективного адреса данных, а необходимо иметь полный указатель на данные. полный указатель на данные состоит из сегментной составляющей и смещения. Все остальные команды этой группы позволяют получить в паре регистров такой полный указатель на операнд в памяти. При этом имя сегментного регистра, в который помещается сегментная составляющая адреса, определяется кодом операции. Соответственно, смещение помещается в регистр общего назначения, указанный операндом назначение.