logo

Система команд x86
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

BSF

Сканирование битов вперед

Влияние команды на флаги и форматы команды:

OF

DF

IF

TF

SF

ZF

AF

PF

CF

?

     

?

*

?

?

?

 

Код

Команда

Описание

Проц.

Пример

0F BC

BSF r16,r/m16

Сканирование битов r/m16 вперед

Intel386

bsf ax,bx

0F BC

BSF r32,r/m32

Сканирование битов r/m32 вперед

Intel386

bsf eax,edx

Операция:

IF SRC = 0

   THEN

      ZF = 1;

      DEST = undefined;

   ELSE

      ZF = 0;

      temp = 0;

      WHILE Bit(SRC, temp) = 0

         DO

            temp = temp + 1;

            DEST = temp;

      OD;

FI;

Описание:

Команда BSF сканирует биты второго операнда (слово или двойное слово), начиная с бита 0. Если все биты равны нулю, то устанавливается флаг ZF, в противном случае, флаг ZF сбрасывается, и в регистр назначения (первый операнд) помещается номер первого установленного бита.

Особые ситуации защищенного режима:

#GP(0), если используется некорректный эффективный адрес операнда в памяти в сегментах CS, DS, ES, FS или GS.
#SS(0) при использовании некорректного эффективного адреса в сегменте SS.
#PF(Код ошибки), страничная ошибка.
#AC(0) при невыровненной ссылке в память при текущем уровне привилегий равном 3.

Особые ситуации режима реальной адресации:

#GP, если любая часть операнда находится вне пространства эффективных адресов в сегментах CS, DS, ES, FS или GS.
#SS, если любая часть операнда находится вне пространства эффективных адресов в сегменте SS.

Особые ситуации режима V86:

Такие же, как и в режиме реальной адресации.
#PF(Код ошибки), страничная ошибка.
#AC(0) при невыровненной ссылке в память.


Входит в группу команд: Базовая система команд CPU



Все права защищены © 1997-2011 Перепечатка возможна только по согласованию с владельцем авторских прав. admin@club155.ru

Яндекс.Метрика               Сервер радиолюбителей России - схемы, документация,

 соревнования, дипломы, программы, форумы и многое другое!   схемы новости электроники