文档介绍:的设计与实现惚嗥饔氪肷善工学硕士学位论文国防科学技术大学研究生院二五年六月计算机科学与技术研究方向计算机软件与理论指导教师刘春林教授一硕士生姓名陈惠斌学科专业密缎——一金孟分类号学号~
摘要幕惚嗥骱痛肷善鞯墓乖臁与传统相比,现代采用更多的际跻蕴岣呋餍阅堋A硪环矫妫们呈现出规整的、可编译的体系结构,使得能够为它们构造高效的优化编译器。本文讨论这样一款捎梅执氐腣逑到峁梗芄辉诘ジ鍪敝又芷谕敝葱卸喔霾作。我们叙述这款为了便于对向前引用的处理,惚嗥髯橹闪奖榻峁埂5谝槐榻黾锹荚文件中的符号旰信息,第二遍重新扫描源文件,利用先前收集的信息产生目标文件。惚嗥鞯奶氐惆ǎ航柚鷏和生成词法和语法分析器;汇编语句在汇编器中以内部表示的形式存在:指令的编码信息存于数据表格,编码指令时使用通用的过程查询这些表格以决定指令的编码格式和,然后调用相应的编码函数产生机器代码。肷善髟贗嘁肫骺蚣芑∩鲜迪帧N颐俏猇制它的机器规格说明和机器描述,并利用的模板构造它的代码生成器。逑到峁沟囊桓鱿灾氐闶欠执兀创蠖械募拇嫫魑募环殖啥喔隹椋扛隹与几个功能单元相关联组成簇。与这一特点相对应,代码生成的一个重要步骤是簇分配,即为每个操作及其操作数映射合适的簇。簇分配应使得各簇的功能单元得到充分利用,并设法减少簇之间的数据传递。我们给出统一的簇分配与调度算法攵詖氖迪郑惴ǖ奶氐闶谴胤峙溆氲鞫纫煌校钡鞫纫桓霾僮魇保蔽U飧霾作和它的操作数分配合适的簇。关键词:;编器代码生成器胤峙涞鞫萓国防科学技术人学研究生院学位论文
甒甒弱甒,,.瑆,籭痚.,甒,畉.:;.痵,,瑆..甤:瑂琔
图目录图Ⅵ。氖萃图觥图牧魉摺惚嗥鞯拇砹鞒桃惚嗥鞯慕峁图锞涫萁峁埂图惚嗝钍萁峁图执行包数据结构图噶钍萁峁埂图操作数数据结构⋯⋯⋯⋯⋯⋯图泶锸绞萁峁埂图刂肥萁峁埂图锓ǚ治銎鞯牟糠治姆ü嬖颉图识别操作数的文法规则⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图问萁峁埂璴图攀萁峁埂图部分机器指令格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图δ艿ピJ萁峁埂图δ艿ピ1淼牟糠帜谌荨图拇嫫魇萁峁图拇嫫鞅淼牟糠帜谌荨刂萍拇嫫魇萁峁埂图控制寄存器表的部分内容⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图僮魇嘈偷谋硎尽图僮魇嘈汀图判断操作数类型是否兼容的算法⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图袢≈噶畈僮魇嘈偷乃惴ā图噶罡袷降谋硎尽图指令编码映射表⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图指令表及其数据结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图求解指令各操作数的类型的算法⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯一图蠼庵噶畋嗦胗成浔砥ヅ湎畹乃惴ā图囟ㄎ坏氖萁峁埂文件格式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.图籰嘁肫骺蛲肌国防科学技术大学研究生院学位论文⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.............................⋯..........................⋯.........⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯
谘返牟糠殖绦蛞览低肌图诓勘硎镜牟愦谓峁埂的段层次结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.暮问ǖ菰级ā诵姓唤峁埂肷善骺蛲肌位常量传递的注释⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯淖⑹汀图分簇的机器结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.惴ā调度器的结构⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..图的调度算法⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.图簇分配与调度算法⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯图徊嫱房煞袷褂玫呐卸稀对于代码输出的影响⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯瞬ㄆ鞒绦颉绦颉图绦颉瞬ㄆ鞯某绦蛄魍肌图寄存器数量不受限时煌箍0姹镜募铀俦缺冉稀图蚮谘返牟糠殖绦蛞览低肌图拇嫫魇坎皇芟奘庇畔热ê谋冉稀图褂胣蛂饔畔热ê钡拇胤峙洹图寄存器数量受限时煌箍0姹镜募铀俦缺冉稀图寄存器数量受限时优先权函数的比较⋯⋯⋯⋯⋯⋯⋯⋯∞∞∞∞甜”娟弱曲酡酡以∞“酊酊酌卯卵醯国防科学技术大学研究生院学位论文.......................⋯.⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯..............................
表目录表噶畹闹葱薪锥蚊枋觥表边延迟的计算公式⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.表簇分配算法的特征⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯.表拇嫫魇坎皇芟奘钡膄执行时间⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯表拇嫫魇渴芟奘钡膄执行时间⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯⋯国防科学技术人学研究生院。学位论文
日期