.NET 4.x Побитовые операции с целыми числами - C#
Формулировка задачи:
Есть две переменные a и b. Обе задаются значениями в диапазоне [-1;1] включительно. Возможно ли какими нибудь операторами (всякими XOR и т.д.) заменить конструкцию
a == 0 ? b : a ;
Кажется что такое возможно, но не пойму как
Решение задачи: «.NET 4.x Побитовые операции с целыми числами»
textual
Листинг программы
IL_002f: call class [System]System.Diagnostics.Stopwatch [System]System.Diagnostics.Stopwatch::StartNew() IL_0034: stloc.s sw2 IL_0036: ldloc.1 IL_0037: ldloc.1 IL_0038: ldloc.1 IL_0039: mul IL_003a: ldloc.3 IL_003b: mul IL_003c: sub IL_003d: ldloc.3 IL_003e: add IL_003f: stloc.s c IL_0041: ldloc.2 IL_0042: ldloc.2 IL_0043: ldloc.2 IL_0044: mul IL_0045: ldloc.3 IL_0046: mul IL_0047: sub IL_0048: ldloc.3 IL_0049: add IL_004a: stloc.s d IL_004c: ldloc.s sw2 IL_004e: callvirt instance void [System]System.Diagnostics.Stopwatch::Stop() ... IL_006a: call class [System]System.Diagnostics.Stopwatch [System]System.Diagnostics.Stopwatch::StartNew() IL_006f: stloc.s sw IL_0071: ldloc.1 IL_0072: brfalse.s IL_0077 IL_0074: ldloc.1 IL_0075: br.s IL_0078 IL_0077: ldloc.3 IL_0078: stloc.s c IL_007a: ldloc.2 IL_007b: brfalse.s IL_0080 IL_007d: ldloc.2 IL_007e: br.s IL_0081 IL_0080: ldloc.3 IL_0081: stloc.s d IL_0083: ldloc.s sw IL_0085: callvirt instance void [System]System.Diagnostics.Stopwatch::Stop()
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д