ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Пятница
19 апреля
903056 Топик полностью
Хаос (11.02.2019 13:04, просмотров: 1) ответил VLLV на Компилятор IAR не сдвигает влево больше чем на 32 бита и никто его не рвется править.
Вопрос не в "больше чем 32 бита", а вопрос в "равно 32-м битам". Допустим, при сдвиге на 32 бита в регистре нормального процессора должен оказаться нуль. У Intel'а при сдвиге в регистре оказывается "хрен знает что" и в результате алгоритм не работает. В итоге пришлось переписать алгоритм и перед сдвигом сначала проверять аргумент на равенство величины сдвига 32-м битам. Это неэффективно, так как сама проверка приводит к лишним операциям и замедлению алгоритма.