我一直认为计算机现在已经被编程直接执行高级编程,但显然不是。我们还没有这么做有什么具体的原因吗?任何高级编程的缺点。
发布于 2020-02-17 04:35:08
我绝不是一个CS专家,但根据我处理计算机系统不同层的经验,抽象层对于支持协作开发环境非常重要。例如,当您想要实现一个神经网络时,您是希望手动实现所有东西,还是使用现有的库?具有不同的层使系统在开发中更加安全、更容易调试和更好的专业化。我们可以专门研究更高级别的API,而不必担心底层的实现。
当你说一台直接执行高级语言的计算机时,请记住,任何一台计算机仍然是由晶体管组成的,这意味着一切都必须转换成二进制运算。拥有一个完整的打包系统(从高级别直接到硬件)与具有分层结构(编写高级程序并编译它以指导硬件)相比,低效要高得多。
发布于 2020-02-17 04:34:43
这需要推测和简化,所以这就是我要做的。
你所描述的是一种解释语言,问题是为什么我们不运行硬件解释器?
rational简单地说是更符合成本效益的(无论是在silcon区域还是在Watt /有用的工作中计算出来的),以使硬件架构适合于在硅上实现,然后创建一个高级的优化编译器,这比在硅中创建相同的逻辑来解释高级代码。
另一个不能这么做的论点是 security ,硬件开发周期很长,甚至不可能在大规模生产之后发布更新版本的处理器,解释器因格式错误的输入存在安全问题而声名狼藉。
https://stackoverflow.com/questions/60255898
复制相似问题