Что добирается по сравнению с какой в cmovl коде операции?

Попробуйте это:

System.Configuration.ConfigurationFileMap fileMap = new ConfigurationFileMap(strConfigPath); //Path to your config file
System.Configuration.Configuration configuration = System.Configuration.ConfigurationManager.OpenMappedMachineConfiguration(fileMap);
9
задан bdonlan 12 August 2009 в 18:18
поделиться

3 ответа

cmov не выполняет сравнение, он использует результат предыдущего сравнения - если он верен, он выполнит mov. cmovl означает «выполнить перемещение, если предыдущее сравнение привело к« меньше чем »».

Например:

cmp ecx, 5
cmovl eax, ebx ; eax = ebx if ecx < 5
16
ответ дан 4 December 2019 в 09:14
поделиться

Ей должна предшествовать другая инструкция, которая устанавливает флаги соответствующим образом, например cmp .

cmp ebx, ecx   ; compare ebx to ecx and set flags.
cmovl ebx, eax ; if (ebx < ecx (comparison based on flags)) ebx = eax 
4
ответ дан 4 December 2019 в 09:14
поделиться

cmovl выполнит перемещение, если регистр флагов имеет следующее: SF! = OF

Эти флаги будут установлены в результате некоторой предыдущей операции (обычно , но не обязательно, какое-то сравнение).

Инструкция cmovl не выполняет собственное сравнение.

2
ответ дан 4 December 2019 в 09:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: