Приветствую! Код (Text): mov eax, 1234567890 ror eax, 5 Задача написать процедуру выполняющую обратное действие по отношению к ROR, т.е. её обратный аналог, типа ROL'а, но сама инструкция ROL делает другие действия
Не совсем понятно -- вероятно эммулировать инструкцию ROL? Код (Text): mov eax,89ABCDEFh rol eax,4; eax=09ABCDEF8h ;аналог ROL mov ebx,eax shr ebx,(32-4); ebx=8 shl eax,4; eax=9ABCDEF0h or eax,ebx; eax=9ABCDEF8h ;аналогично при поможи умножения, деления и сложения
JCronos Код (Text): mov eax,12345678h ror eax,5; eax=0C091A2B3h rol eax,5; eax=12345678h почему ROL не выполняет обратную операцию? по-моему все ОК ror eax,5; eax=0C091A2B3h mov ecx,5; еще один вариант ROL a1: shl eax,1 adc eax,0 loop a1; в результате eax=12345678h