Compiler construction 曼奇:你怎么知道该做哪些瓷砖?

Compiler construction 曼奇:你怎么知道该做哪些瓷砖?,compiler-construction,tree,subtree,Compiler Construction,Tree,Subtree,你怎么知道你必须在一个结构树中用最大的Munch制作哪些瓷砖?“最大的子树”是什么意思?它们是指每条指令吗?您为每条机器指令定义一个磁贴(例如,“ADD Rn,+K”由磁贴“R+K”表示),用于对代码生成有意义的指令(有些指令没有,例如“interrupt enable”)。您还可以为每个库例程定义一个平铺,这些例程可能对代码生成有用(例如,在小型计算机上,您可能没有本机乘法,因此您可以将其定义为库例程,例如,“调用乘法”表示“R1*R2”) 然后,在给定分片集的情况下,使用最大Munch方法对

你怎么知道你必须在一个结构树中用最大的Munch制作哪些瓷砖?“最大的子树”是什么意思?它们是指每条指令吗?

您为每条机器指令定义一个磁贴(例如,“ADD Rn,+K”由磁贴“R+K”表示),用于对代码生成有意义的指令(有些指令没有,例如“interrupt enable”)。您还可以为每个库例程定义一个平铺,这些例程可能对代码生成有用(例如,在小型计算机上,您可能没有本机乘法,因此您可以将其定义为库例程,例如,“调用乘法”表示“R1*R2”)

然后,在给定分片集的情况下,使用最大Munch方法对树进行分片