Это зависит от платформы, но в целом она будет работать одинаково.
Например, на X86 вы можете увидеть это, посмотрев, как работает сборка. Посмотрите на X86 assembly control flow operations - независимо от того, выполняете ли вы равенство или неравенство, это делается как 2 операции.
Во-первых, вы выполняете операцию CMP (сравнение). Затем вы выполняете проверку, чтобы убедиться, что сравнение равно, не равно и т. Д. Это просто проверка результатов сравнения - в обоих случаях вы выполняете 2 операции.
Во многих языках программирования более высокого уровня, однако, все по-другому. Многие языки определяют неравенство в терминах равенства - чтобы проверить неравенство, проверите проверку равенства, затем вторую проверку, чтобы убедиться, что она ложна. Это приводит к тому, что на этих языках равенство (микроскопически) быстрее.Многие языки позволяют вам специально писать и то, и другое, но многие люди склонны писать неравенство с точки зрения равенства, что опять же делает равенство, в общем, несколько быстрее.
Логически, микропроцессор не должен сравнивать все биты обоих операндов оператора равенства, чтобы определить результат «FALSE». –
@ Джонатан Вакели. К сожалению. Спасибо что подметил это. Я отредактировал вопрос, чтобы исправить это. – Mackenzie
Думаю, вы пропустили мою точку зрения, не заметив, что я сказал ** равенство ** и ** FALSE ** вместо ** неравенства ** и ** TRUE **. То, что я имел в виду, это то, что ЦП мог обнаружить два значения, не равные, не глядя на все биты, но неважно, используете ли вы '==' или '! =', Чтобы найти, что они не равны, поэтому оба оператора точно эквивалентны. Нет причин думать, что один быстрее, чем другой. –