跨平台的汇编语言编程
Windows下通常使用Intel汇编,而Linux下多用AT&T汇编,两者在语法上有明显的不同。
如果程序中必须内嵌汇编,又要求跨平台呢?一般的想法是分别为Windows和Linux等操作系统各一套汇编代码。这样在可维护性上就差了些,毕竟有两套独立的代码需要维护。
而我的做法是,自己独立的实现了一个通用的抽象层,使Intel和AT&T两套汇编达到语法层面上的统一。
当然我实现的也不彻底,仅仅只支持几个最常用的指令而已(但均经过详细测试,并已应用于实际项目中)。很冒失的称之为“跨平台的汇编语言编程”,应该不太合适吧,请批评指正;) 感兴趣的朋友可以相互交流嘛。