逻辑索引如何工作?
在一些像Matlab这样的高级语言中,可以使用“逻辑索引”来选择数组中用于操作的整组条目。
我了解逻辑索引是什么以及如何使用它。
相反,我问:
解释的语言可以被认为是运行在仿真核心上的汇编程序的变体。 它们具有像汇编程序一样工作的堆栈和命令,而实际上并不是汇编程序。 他们是一台虚拟机。
一个for循环可以被认为是告诉系统,设置一个值,运行一系列的任务,当你完成后,回来检查这个值。 如果它没有达到阈值,那么以规定的方式改变它,然后重复这些任务并回来。 在汇编程序中,您正在快速运行尖叫,但在“虚拟机”中并不是那么多。 考虑下面这个链接13:50和15:30之间的演示:(链接)
这意味着什么似乎是for循环,实际上并不是for循环。 它是操作系统中断和虚拟内存。 它是在背景中进行病毒扫描和megasloth英国媒体报道。
如果你有一个虚拟系统,你是否可以做一个快捷方式来寻址那些没有使用虚拟化for循环的内存,这是相当高效的? MatLab试图主要处理数据,所以它必须有非常有效的方法来存储,排序和选择虚拟机中的数据。
MathWorks不会将这些细节公诸于众。 如果它有一个好主意,那么他们不希望它在Python和R中实现。 如果它有一个平庸的想法,那么他们不希望在明天被Python和R执行时被殴打。 无论哪种方式,在没有NDA的情况下,公众都可以访问特定方法的细节 - 这对他们来说可能是一个失败的主张。
底线:
值得注意的是,在做同样的事情时,矢量化代码可以胜过循环。 这意味着他们可能会将更多内部应用程序用于执行“任务序列”以获得性能改进。
链接地址: http://www.djcxy.com/p/19155.html