<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">一直很懒,好久没更了。。就前几天把lab4、lab5 y86那一套lab的代码打包上传了也没做特别的说明,在这里一起说了吧。</span>
先扔上下载地址 http://download.youkuaiyun.com/detail/u013648407/7626133
说明一下吧,y86是相对于x86简单的一种教学性质的系统,这两个lab分别实现的是y86 assembler和y86 simulator。具体就是做一个汇编语言转机器语言的工作。
lab4做的simulator较为简单,只要把给定的code拆解开转换成实现进行运算并随时更新register和CC的状态就行。
lab5复杂一些,需要把汇编语句解析出来(parse_系列函数就做这个工作),然后根据解析出来的内容更新symbol table和realloc table,这里解释一下,symbol table是一个记录语句中变量的表,realloc table则是帮助重定位的表,记录每个变量调用时需要跳到的位置,以下面一段需要做解析的代码为例: