apache-flex 在Flex中实施JMP

li9yvcax  于 2022-10-31  发布在  Apache
关注(0)|答案(1)|浏览(189)

我的任务是用Flex实现类汇编语言的解释器。
有如下命令:
将x y z相加,(z = x + y)
次x y z,(z = x - y)
穆尔x y z,(z = x * y)
div x y z,(z = x / y)
设x为10,(x = 10)
移动x y(y = x)
使用Flex实现这些命令的解释器非常容易。
我一直坚持实现JMP line, (current line = line)指令。我不知道如何重置Flex当前解析行或类似的东西。

6mw9ycah

6mw9ycah1#

JMP instruction只是用目标指令的地址修改program counter。因此,您正在生成的这个VM需要一个PC寄存器。
事实上就是这么简单。不要想太多。记住,半个世纪前,他们就用vacuum tubes创建了JMP指令。这对复杂性提出了严格的限制。

相关问题