编译原理 | 指令集架构
包括:
1. 编译原理相关知识。
2. 汇编语言学习。
3. 指令集相关知识。
Mercury_Lc
宁愿笑着哭
展开
-
P - 简单的代码生成程序【编译原理】
P - 简单的代码生成程序Description通过三地址代码序列生成计算机的目标代码,在生成算法中,对寄存器的使用顺序为:寄存器中存有 > 空寄存器 > 内存中存有 > 以后不再使用 > 最远距离使用Input单组输入,给定输出的三地址代码的个数和寄存器的个数.所有的变量为大写字母,寄存器的数量不超过9Output参照示例格式输出,不需要将最后的寄存器中的值写回内存不再使用变量不用写回内存SampleInput4 2T:=A-BU:=.原创 2020-12-09 15:16:24 · 538 阅读 · 1 评论 -
N - DAG优化【编译原理】
N - DAG优化Description大家都学过了代码优化,其中有一个DAG优化,这次我们就练习这个操作。Input输入第一行为一个整数n(n < 100),表示该组输入的表达式的个数之后n行为表达式,每个变量为一个字母,表达式仅包括二元运算 + - * /例如:A=B+COutput通过构造DAG图,进行代码优化,只需要保留AB,删除无用变量,删除变量时,尽量保留最早出现的变量。PS:保证AB的值不同SampleInput3A=B+CB=B..原创 2020-12-07 19:32:31 · 1941 阅读 · 1 评论 -
B - 识别浮点常量问题
B - 识别浮点常量问题Description编译器在对程序进行编译之前,首先要进行语法分析。通常,程序被分解成若干个小单元,然后和语言的语法模式进行匹配。在分析表达式的时候,变量的类型在变量声明的时候就决定了;而常量的类型需要从常量的形式来判断。假设你是自动编译器(ACM)开发小组的一员,负责Pascal语言编译器的开发。你的任务是分析程序分解模块送来的文件,判断其中包含的字符串是否合乎语法的Pascal浮点常量。Pascal语言对浮点常量的语法要求是:一个浮点常量除了十进制数码之外,必须带有原创 2020-09-19 19:53:39 · 624 阅读 · 1 评论 -
A - 小C语言--词法分析程序
A - 小C语言--词法分析程序Description小C语言文法1. <程序>→<main关键字>(){<声明序列><语句序列>}2. <声明序列>→<声明序列><声明语句>|<声明语句>|<空>3. <声明语句>→<标识符表>;4. <标识符表>→<标识符>,<标识符表>|<标识符>5. <语句序列&.原创 2020-09-19 19:52:09 · 720 阅读 · 0 评论