MSIL 中的短路评估如何工作

发布于 2024-09-08 00:06:11 字数 85 浏览 3 评论 0原文

msil 解释器中的短路评估如何工作? And 指令是否包含有关如果为 false 则跳转到何处的信息,对于 Or 如果为 true 则是否包含相同的信息?

How does the short circuit evaluation work in the msil interpreter? Does the And instruction contain information about where to jump to if false, and same for the Or with true?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

隱形的亼 2024-09-15 00:06:11

否 - And 和 Or 的 IL 指令实际上对堆栈顶部的两个操作数执行按位运算。如果高级语言使用短路求值,它将被编译为 IL 级别的显式分支操作,并且根本不依赖于 And 指令。使用 Reflector 等工具查看相关编译器生成的实际 IL。

No - the IL instructions for And and Or actually perform bitwise operations on the top two operands on the stack. If a high level language uses short circuit evaluation, it is compiled down to explicit branching operations at the IL level and doesn't rely on the And instruction at all. Use a tool like Reflector to see the actual IL produced by the compiler in question.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文