统一的汇编语言

| 我想知道是否存在某种通用且易于编码的操作码(或汇编)语言,该语言可提供当今大多数CPU中可用的基本指令集(而不是某些花哨的CISC,仅注册的计算机,只是常见的一种)。 )。是否可以在提到的任何CPU上进行“编译”,微优化和“解释”? 我正在考虑使用类似于MARS MIPS模拟器(相当简单易读的代码)之类的东西,并可能制作真实的程序。不需要库(如果可能的话,则是一件好事),而只是以统一的方式使事情(库或类UNIX工具)更快。 抱歉,如果这是一个愚蠢的问题,我是汇编程序新手。我只是没有发现NASM或UNIX汇编语言既不是非常跨平台的,也不是易于阅读和编码的。     
已邀请:
JVM字节码有点像汇编语言,但是没有指针算术。但是,它非常面向对象。从积极的方面来说,它完全是跨平台的。 您可能需要查看LLVM字节码-但请记住以下警告:http://llvm.org/docs/FAQ.html#can-i-compile-c-or-c-code-to-platform-independent- llvm位码     
第一件事:用汇编语言编写并不能保证速度提高。对手头的工作使用正确的算法对速度的影响最大。在您需要进行组装以压榨最后几步时,您只能通过使算法适应所讨论硬件的特定体系结构才能真正做到这一点。通用的HLA(高级汇编程序)几乎无法达到在汇编中编写代码的目的。请注意,我并没有敲打Randall Hyde的HLA,这是一个很棒的产品,我只是说,以汇编程序生成机器代码的方式编写Assembly并不会带来任何好处。大多数C和C ++编译器都具有非常好的优化器,并且可以生成优于ASM中几乎任何幼稚实现的机器代码。 看看您是否可以找到迈克尔·阿布拉什(Michael Abrash)的这些书籍(第二手,它们已绝版):\“ Zen of Assembly Language \”和\“ Zen of Code Optimization \\”。或者看看您是否可以在DDJ上找到他的文章。他们将为您提供无与伦比的优化见解,     
相关的东西,所以我希望可能有用: 有 平面组装机 用一种便携式汇编器的方法。 具有用汇编器编写的图形用户界面和出色的汇编API的有趣的操作系统项目: Menuet OS     
LLVM IR提供了可移植的程序集,并带有强大的编译器支持,支持包括Clang在内的许多项目     

要回复问题请先登录注册