model tiny
.code
org 100h
begin: mov cx,string;исходное число
mov bx,0110b;исходное значение
mov dx,0111b;маска поиска
xor ax,ax;счетчик бит
lea di,dwArray;адрес массива
@@01: push cx;запоминаем число
and cx,dx;накладываем маску
xor cx,bx;сравниваем
jnz @@02;несовпало перехаод
stosb;записываем позицию
inc byte ptr count;увеличиваем счетчик совпадений
@@02: pop cx;востанавливаем число
inc ax;следующий бит
shl bx,1;сдвигаем исходное значение
shl dx,1;сдвигаем максу
jnc @@01;пока нет переполнения проверяем
xor ax,ax;ждем любую клавишу
int 16h;
ret;выход
string dw 1100010110101110b
count db 0
dwArray label byte
end begin
Если Вы уже зарегистрированы на Портале - войдите в систему, если Вы еще не регистрировались - пройдите простую процедуру регистрации.