Пример: Глобальная сеть INTERNET
Я ищу:
На главную  |  Добавить в избранное  

Главная/

Радиоэлектроника, компьютеры и периферийные устройства. /

80386 процессор

←предыдущая следующая→
1 2 3 4 5 6 7 8 

сброс бита.

Команда BTR проверяет указанный бит, копирует его в CF и

сбрасывает найденный бит. Это новая команда, специфичная для

МП 80386.

BTS Проверка и установка бита.

Команда BTS проверяет указанный бит, копирует его в CF и

устанавливает в найденном бите значение 1. Это новая команда,

специфичная для МП 80386.

CALL Вызов процедуры.

Команда CALL передает управление из одной точки программ-

ного сегмента в другую. Эти точки могут располагаться в одном

и том же программном сегменте (ближний переход) или принадле-

жать разным сегментам (дальний переход). Перед собственно пе-

редачей управления команда CALL сохраняет в стеке адрес следу-

ющей за CALL команды и текущее содержимое регистра EIP.

Команды CALL могут быть относительными, прямыми и косвен-

ными. В косвенной команде абсолютный адрес перехода указывает-

ся одним из двух способов: (1) МП извлекает адрес приемника из

ячейки памяти, определенной в команде; (2) программа переходит

- 14 -

в точку адрес которой указан в одном из регистров общего наз-

начения.

CBW Преобразование байта в слово.

Эта команда расширяет значение бита знака в старшую часть

более длинного регистра так, чтобы арифметические операции над

содержимым этого регистра давали правильные результаты.

CWD Преобразование слова в двойное слово.

Действие команды аналогично команде CBW.

CLC Сброс флага переноса.

Команда сбрасывает флаг CF.

CLD Сброс флага направления.

Команда сбрасывает флаг DF. Если флаг DF сброшен, автома-

тическая индексация будет выполняться с инкрементом. Автомати-

ческая индексация используется командами обработки строк.

CLI Сброс флага прерываний.

Если текущий уровень привилегий по крайней мере столь же

высок, как уровень привилегий ввода-вывода, команда сбрасывает

флаг прерываний.

CLTS Сброс флага переключения задачи в управляющем ре-

гистре 0.

Команда сбрасывает флаг TS в CR0. В МП 80386 флаг TS ус-

танавливается каждый раз при переключении задачи. Команда ис-

пользуется в системном программировании. Она представляет со-

бой привилегированную команду, выполняемую только на нулевом

уровне привилегий.

CMC Инвертирование флага переноса.

Команда инвертирует флаг переноса CF.

CMP Сравнение.

Команда выполняет вычитание операнда-источника из операн-

да-приемника. В соответствии с результатом вычитания команда

устанавливает состояние флагов, но не изменяет сами операнды.

CMPS Сравнение строковых операндов.

Ассемблер всегда транслирует команду CMPS как одну из

- 15 -

CMPSB, CMPSW, CMPSD. Эти команды предназначены только для

операций над строками. Они сравнивают по одному элементу каж-

дой строки, причем элементами могут быть байт, слово или двой-

ное слово. Элементы строк адресуются через регистры ESI и EDI.

После каждой строковой операции ESI и/или EDI автоматически

получают положительное или отрицательное приращение и указыва-

ют на следующие элементы строк. Если DF=0, в индексных регист-

рах осуществляется инкремент, если DF=1 - декремент. В зависи-

мости от результата вычитания строкового элемента по адресу

ES:EDI из строкового элемента по адресу DS:ESI устанавливаются

флаги результата. Если команда модифицирована с помощью пре-

фиксов, МП выполняет сравнение текущего элемента строки с со-

держимым регистра EAX или его части (AL или AX).

CMPSB Сравнение строковых байтов.

CMPSW Сравнение строковых слов.

CMPSD Сравнение строковых двойных слов.

CDQ Преобразование двойного слова в четверное.

CWDE Преобразование слова в двойное слово с расширением.

DAA Десятичная коррекция в регистре AL после сложения.

Команда корректирует результат сложения двух правильных

упакованных десятичных операндов в регистре AL. Эта команда

должна всегда следовать за сложением двух пар упакованных де-

сятичных чисел, чтобы получить в результате пару правильных

упакованных десятичных цифр.

DAS Десятичная коррекция в регистре AL после вычитания.

Команда DAS аналогична команде DAA за исключением, что

коррекция выполняется путем вычитания 6 из полубайтов регистра

AL вместо прибавления 6.

DEC Декремент на 1.

Команда вычитает 1 из операнда приемника. Состояние флага

CF не изменяется.

DIV Деление целых чисел без знака.

Команда выполняет деление числа без знака в аккумуляторе

- 16 -

на операнд-источник. Размер делимого в битах в два раза больше

размера делителя. Если делитель равен 0, или если частное не

помещается в назначенный регистр, возбуждается прерывание 0.

ENTER Создание кадра стека для параметров процедуры

Команда создает кадр стека, который можно использовать

для реализации правил языков высокого уровня с блочной струк-

турой. Команда LEAVE в конце процедуры выполняет обратные

действия.

Команда имеет два параметра. Первый определяет число бай-

тов динамической памяти, выделяемых в стеке для вызванной

программы. Второй параметр соответствует лексическому уровню

вложенности программы (от 0 до 31). Этот уровень определяет,

сколько наборов указателей кадра стека копируются центральным

процессором в новый кадр стека из текущего кадра.

ESC Расширение процессора

Арифметический сопроцессор предоставляет расширение

системы команд МП 80386. Сопроцессор поддерживает высокоточные

вычисления как целочисленные, так и с плавающей точкой и, кро-

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

ния. Сопроцессор работает параллельно с центральным процессо-

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

Команды сопроцессора включаются в общий поток команд,

составляющих программу для МП 80386. Система выполняет команды

сопроцессора в том порядке, в котором они появляются в потоке.

HLT Останов

Команда прекращает выполнение любых команд и переводит МП

в состояние останова. Немаскируемые прерывания, операция за-

пуска и разрешенные прерывания возобновляют работу процессора.

Команда HLT обычно является последней командой в последова-

тельности команд останова системы, например для сохранения

состояния процесса после обнаружения сбоя питания.

IDIV Знаковое деление

Команда выполняет знаковое деление. Делимому, частному и

остатку неявно назначаются определенные регистры, в то время

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

форме делителя определяется, какие регистры должны использо-

ваться. Если делитель равен нулю или частное слишком велико

для регистра-приемника, возбуждается прерывание 0.

- 17 -

IMUL Знаковое целочисленное умножение

Команда выполняет операцию знакового целочисленного умно-

жения. Команда имеет три варианта.

1. Однооперандная форма. Операнд может быть байтом, сло-

вом

←предыдущая следующая→
1 2 3 4 5 6 7 8 


Copyright © 2005—2007 «RefStore.Ru»