-1

任何人都可以在不使用任何编程语言工具的情况下解释一下,将代码段(不是表达式)转换为后缀表示法的规则是什么......谢谢,我提前感谢您的回复

4

2 回答 2

0

中间代码和最终代码使用前缀表示法,而不是后缀表示法。

示例(前缀符号):

Sum B, Mem[6455];

示例(后缀符号):

B, Mem[6455], Sum

假设您的意思是“前缀符号”。

有两组指令可以转换为前缀符号。

第一个是表达式,例如:

somevar <- (x + y);

其次,非返回函数也称为“过程”或“子例程”。

GotoXY(Column, Row);

在第二个中,函数的 Id 成为前缀 Id。指令,后跟参数。

GotoXY Column, Row

通常是身份证。表示地址:

Load RegisterA, Column;
Load RegisterB, Row;
Load RegisterC, GotoXY
Call RegisterC

这可能因一个中间代码而异。

将表达式和指令结合起来是很常见的。

GotoXY (Sum(Delta, W), B - Z);

因此,您可能必须先转换内部表达式和内部函数调用。

于 2019-08-03T17:55:56.177 回答
-1

假设您正在尝试将中缀表示法转换为后缀,Shunting-yard Algorithm可能就是您正在寻找的。

于 2019-07-11T07:09:48.943 回答