第一单元的OO在紧张与刺激中落下帷幕,回顾第一单元,真是应了吴际老师上学期在OOPre的最后讲的“一定要好好理解文法分析,不然下学期的第一单元会很痛苦”。整个Unit1就是围绕文法展开,前前后后就是让我们展开表达式,在我们做好这个蛋糕后,再用化简优化去为它裱花点缀。
第一次作业第一次作业较为简单,因为出现的是最基本的常数与幂函数,且括号最多一层,因此实现起来并不困难,只要把词法和语法分析做好...
Lab0实验报告一、思考题Thinking 0.1执行命令cat Modified.txt,观察其结果和第一次执行 add 命令之前的 status 是否一样,并思考原因这两次的结果是不一样的。第一次将git status命令结果重定向至Untracked.txt文件中时,这时的README.txt文件还未被放入暂存区,所以状态是未被追踪,而第二次进行类似操作时,README.txt文件已被...
vim编辑器的使用
命令模式
输入模式
底线命令模式
命令模式下的快捷键
i 在当前光标位置进入输入模式
a 在当前光标之后进入输入模式
I 在当前行开头进入输入模式
A 在当前行结尾进入输入模式
o 在当前光标下一行进入输入模式
O 在当前光标上一行进入输入模式
0 移动光标到当前行的开头
$ 移动光标到当前行的结尾
/ 搜索模式
n 向下继续搜索
N 向上继续搜索
...
Linux目录结构在Linux系统中,目录结构与Windows系统类似,都是树形结构,不同的是,Windows系统可以有多个树,也即其能有很多个磁盘,但Linux系统只有一棵树,即所有文件和目录都放在根目录下。Linux系统中,以“/”表示顶级目录即根目录,层次关系也通过“/”表示
路径格式
绝对路径:即以根目录“/”开头
相对路径:相对于当前工作目录下的路径,...
mips微系统设计文档构建思路本次课下需要我们用verilog语言搭建一个mips微系统。整个系统是建立在P6的基础上的,除了和相关操作相关的指令以外,其余指令均来自P6。但该微系统和我们P6搭建的CPU又是区别极大的,毕竟我们P6只是搭建了一个CPU,而本次我们需要搭建一个系统,CPU只是其中一个部分,我们还需要实现外设(计时器和中断发生器),并将CPU和外设连接起来形成一个整体也即系统。...
流水线CPU设计文档(多指令版)构建思路本次流水线CPU的搭建在上一次的基础上多增了很多指令,其中包括计算型指令,存储型指令,跳转型指令。对于新增指令,我们其实只需考虑增加这条指令后要修改原来电路的哪些东西,想明白这一点之后,我们对代码的修改便会变得得心应手起来。
数据通路图再次附上数据通路图和logisim里的单周期CPU电路搭建图。数据通路:logisim单周期CPU电路:通过这两张图,...
流水线CPU设计文档本次课下要求我们使用verilog来搭建一个支持十条指令的流水线CPU。可以说难度与复杂度较之前几次都上升了不少,但理清思路将CPU运行步骤印在心里后,会发现复杂度也没那么大。
构建思路流水线CPU的搭建是在单周期CPU之上的,所以其实其整个数据通路和单周期的CPU没有太大的区别,唯一不同的就是单周期一条指令只需一个周期,而我们搭建的流水线CPU需要5个周期,这也要求我们...
单周期CPU设计草稿(verilog)本次课下需要我们通过verilog来设计一个支持10条指令的单周期CPU。由于在上周我们已经通过logisim搭建了一个单周期CPU,所以本次的任务其实简单来说就是通过一个硬件描述语言去描述搭建好的电路。我们还是先来简单捋一下构建思路。
构建思路
工作流程:每一个周期,PC给出指令所在的地址,CPU去寻找这个地址中的指令,在之后,根据得到的指令判断具体执...
单周期CPU设计草稿要搭建一个单周期CPU,首先要做的是清楚CPU工作的流程。
工作流程在每一个周期,PC给出指令所在的地址,CPU去寻找这个地址中的指令,在之后,根据得到的指令判断具体执行什么操作(这些操作可能包含相加两个寄存器的值存入另一个寄存器,将某个寄存器的值写入某个内存空间,将PC进行算术操作得到下一个PC的值等),在这期间,PC还应自增(+4),执行完操作后,等到下一个时钟上升沿...