визуальное выражение для регистрации и использования в сборке

Как разрешить выражение и поместить его в регистр, использовать его во встроенной сборке и даже использовать снова и поместить куда-нибудь?

Например:

EAX=a[i]; //Any expression that valid in C++
__asm xor eax,0xFFFF //Do something with this
b[i]=EAX; //And then put it in some variable.

Кстати, причина в производительности.

0

Решение

Несколько компиляторов имеют специфические способы компиляции этого. Но это почти никогда не стоит делать.

Есть список причин, почему это почти никогда не стоит делать:

  • Компилятор обычно генерирует лучший код, чем вы можете написать большую часть времени.
  • Даже если это не так, вы часто можете немного подправить свой код, чтобы убедить компилятор написать код, который по крайней мере так же хорош, как вы могли бы написать, и при этом ваша программа оставалась переносимой.
  • Код, в котором обнаружена проблема с производительностью, на самом деле не критичен для производительности, потому что программа тратит там 0,01% своего времени.
  • Вы хотите, чтобы ваша программа оставалась стандартом C ++, и не хотите загромождать ее множеством #ifdef охранники.

Пример, который вы показали, не очень убедителен.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]