在 2012年12月5日 下午3:53,Jia Liu <proljc@xxxxxxxxx>写道: > 2012/12/5 刘智猷 <liuzhiyou.cs@xxxxxxxxx>: > > > > 在 2012年12月5日 上午10:21,Jia Liu <proljc@xxxxxxxxx>写道: > >> > >> 2012/12/3 刘智猷 <liuzhiyou.cs@xxxxxxxxx>: > >> > Hi, all > >> > > >> > 我是刘智猷, 是北京大学大四的学生. 因为我对kernel, 编译器这些话题比较感兴趣, 管雪涛老师介绍我加入了这个邮件列表, > >> > 让我学习一下大家的工作. > >> > 能帮上忙当然更好了. 初来乍到, 先自我介绍一下吧. > >> > >> 有时间么?给我讲讲unicore的汇编语言和指令,有些问题我不是很明白。 > >> > > Hi, Jia Liu > > > > > 从原文中看不出你是想re我还是re管老师。我写过一个unicore32的简单的编译器,如果问题打字就能描述清楚,可以发到maillist上,我看看能不能回答。 > > uc的寄存器是 32个 32位定点寄存器 + 32个 32位浮点寄存器,对吧? > > uc里面对应jr LR的是什么指令?也就是从一个函数return出来,LR是Link Register。 > > uc里面有没有延时槽? > 据我所知,uc不需要汇编程序员管理延时槽。 > > uc的汇编怎么写?我看文档不是很清楚,ARM也不熟,我做MIPS的。 > 可以先用我前一封邮件里提到的工具链看看他们怎么生成代码(汇编)。 > > uc ISA手册里面,比如,ADD一条指令,多种含义,多种编码,并不是一一对应的,能不能解释一下啊?对此,感到很困惑,不知道该怎么生成代码。 > ISA手册里的ADD节实际上介绍了很多种ADD指令,每种指令有不一样的意义和不一样的编码。你说的一一对应是什么意思?我感觉现在的工具链也不是用上所有的指令,也许可以先用其中的一部分。 另外,你现在是在做哪方面的东西? 智猷