开发一个简单的汇编器需要怎样的知识


我们的计算机系统概论课上老师鼓励自己写一个简单的LC-3汇编器,想要完成这样的工作大概需要哪些知识储备,从哪些方面入手会比较好?

asm 编译器

萌化三仟院 9 years, 4 months ago

LC-3的汇编器实在也不需要太多的背景知识,LC-3我记得指令种类不超过16种,而且寻址方式也简单。一般来说像LC-3的汇编器只要不引入宏,通常只需要扫两边就可以,一遍建立符号表以及检查是否有溢出(就是简单的检查,比如像LC-3这样的16位寄存器总不能写个超过0xFFFF的常数吧),然后一遍回填各符号的位置就好。因为LC-3本身是RISC,所以根据指令条数就可以确定符号的地址。介绍LC-3的那本书的最后就有介绍吧,我记得附录不仅讲了汇编器还讲了一个简单的编译器的实现。

爱神-尤贝尔 answered 9 years, 4 months ago

Your Answer