Справочник по языку Ассемблера IBM PC


Логические команды - часть 4


   Листинг 1 Сканирование битов ;prg_9_1.asm masm model   small stack   256 .data   ;сегмент данных .code   ;сегмент кода main:   ;точка входа в программу         mov     ax,@data         mov     ds,ax ;... .486    ;это обязательно         xor     ax,ax         mov     al,02h         bsf     bx,ax   ;bx=1         jz      m1      ;переход, если al=00h         bsr     bx,ax m1: ;...         mov     ax,4c00h        ;стандартный выход         int     21h end     main   

В последних моделях микропроцессоров Intel в группе логических команд появилось еще несколько команд, которые позволяют осуществить доступ к одному конкретному биту операнда. Операнд может находиться как в памяти, так и в регистре общего назначения. Положение бита задается смещением бита относительно младшего бита операнда. Значение смещения может задаваться как в виде непосредственного значения, так и содержаться в регистре общего назначения. В качестве значения смещения вы можете использовать результаты работы команд bsr и bsf. Все команды присваивают значение выбранного бита флагу cf.

операнд,смещение_бита (Bit Test) — проверка бита.


Команда переносит значение бита в флаг cf.

          bt      ax,5    ;проверить значение бита 5         jnc     m1      ;переход, если бит = 0   

<


Начало  Назад  Вперед