Cua*_*due 5 compiler-construction embedded abstract-syntax-tree
我在一个拥有几个字节的空闲RAM的专有音序器上工作; 静态分配几百个字节; 8个寄存器,包括PC; 没有间接(在C中,一个"指针"); 没有堆栈.
没有MOV指令:要M进入K,你必须编写CLX A; ORX M; STX K哪些复杂的依赖解决方案,或至少是优化.许多操作仅适用于特定寄存器:例如,32位右移用于K高位字和M低位字.
所以对我来说,嵌入式应用程序的C选择显而易见,因为没有指针或函数调用是可能的.大多数高级编程语言都有算术表达式,因此这无助于缩小我们的选择范围.
最重要的是绝对最小代码大小,因此优化是关键.
我倾向于将Lisp表达式编译为宏汇编程序的一种形式,因为程序员可以优化自己的高级操作,例如编写XOR指令.
我敢肯定,这不是第一个有这些限制的项目; 过去如何解决这个问题?
| 归档时间: |
|
| 查看次数: |
119 次 |
| 最近记录: |