AND
(logical AND)
Логическое И
Схема команды: | and приемник,источник |
Назначение: операция логического умножения для операндов приемник и источник размерностью байт, слово или двойное слово.
Алгоритм работы:
выполнить операцию логического умножения над операндами источник и приемник: каждый бит результата равен 1, если соответствующие биты операндов равны 1, в остальных случаях бит результата равен 0;
записать результат операции в приемник;
установить флаги.
Состояние флагов после выполнения команды:
11 | 07 | 06 | 02 | 00 |
OF | SF | ZF | PF | CF |
0 | r | r | r | 0 |
Применение:
Команда and используется для логического умножения двух операндов. Результат операции помещается по адресу первого операнда. Эту команду удобно использовать для принудительной установки или сброса определенных битов операнда.
Например, преобразуем двузначное упакованное BCD-число в его символьный эквивалент.
u_BCD db 25h ;упакованное BCD-число s_ch dw 0 ;место для результата ... xor ax,ax ;очистка ax mov al,u_BCD shl ax,4 ;ax=0250 mov al,u_BCD ;ax=0225 ;преобразование в символьное представление: and ax,3f3fh ;ax=3235h mov s_ch,ax |
См. также: уроки 9, 12 и команды , ,