Teaching Resource

大学计算机基础实验

实验指导

实验1: 键盘认识、指法练习及汉字输入 (WORD)

实验2:Windows文件和文件夹的基本操作 (WORD)

实验3:Windows 7环境设置与应用程序 (WORD)

实验4:Word 2010的基本操作 (WORD)

实验5:段落格式的设置(WORD)

实验6:表格的处理与图文混排 (WORD)

实验7:Excel 2010的基本操作(WORD)

实验8:Excel 2010公式和函数(WORD)

实验9:Excel 2010数据图表设计和数据管理(WORD)

实验10:Powerpoint 2010的基本操作(WORD)

实验11:Powerpoint 2010的高级操作(WORD)

实验12:综合练习:熟悉省考模拟系统,综合掌握本学期所学知识。

面向对象程序设计I(Object-Oriented Programming I, 2019秋)

实验安排(6210, 19:00,实验报告模板

2019.09.25: 实验1 熟悉JAVA开发环境 (DOCX)

2019.10.09: 实验2 JAVA语法基础实验 (DOCX)

2019.10.16: 实验3-1 类和对象 (DOCX)

2019.10.23: 实验3-2 类和对象 (DOCX)

2019.10.30: 实验4-1 接口、继承与多态 (DOCX)

2019.11.06: 实验4-2 接口、继承与多态 (DOCX)

2019.11.13: 实验5 异常处理 (DOCX)

2019.11.20: 实验6-1 事件处理 (DOCX)

2019.11.27: 实验6-2 事件处理 (DOCX)

2019.12.04: 实验7 输入输出流 (DOCX)

2019.12.11: 实验8-1 多线程 (DOCX)

2019.12.18: 实验8-2 多线程 (继续多线程实验)

计算机专业英语(Computer Specialized English, 2019秋)

备课笔记

Unit 1.1: Computer Hardware (PDF)

Unit 1.2: Computer Architecture (PDF)

Unit 1.3: Microprocessor (PDF)

Unit 1.4: How Hard Disk Works (PDF)

Unit 1.5: Virtual Memory (PDF)

Unit 2.2: Operating System (PDF)

Unit 2.3: Linux (PDF)

Unit 2.5: Object-oriented Programming (PDF)

Unit 3.1: Relational Database (PDF)

Unit 3.5: Big Data (PDF)

Unit 11.1: Web Catalog Revenue Model (PDF)

References

计算机网络编程(Computer Network Programming, 2019春)

课件 (Source Code)

第1章: 绪论 (PDF)

第2章: Socket编程基础知识 (PDF)

第3章: Ethernet帧的封装与解析 (PDF)

第4章: Ethernet帧的CRC校验 (PDF,2019-05-14更新)

第5章: IP地址合法性判断 (PDF)

第6章: IP数据包的捕获与解析 (PDF)

第7章: IP数据包的分片与重组 (PDF)

第8章: IPv6数据包的封装与解析 (PDF)

第9章: 发现网络中的活动主机 (PDF)

第10章: 发现服务器开启的TCP端口 (PDF)

第11章:TCP数据包的封装与发送 (PDF)

第12章:基于TCP的客户机/服务器程序 (PDF)

第13章:基于UDP的客户机/服务器程序 (PDF)

第14章:FTP客户机程序设计 (PDF)

第15章:POP客户机程序设计 (PDF)

第16章:包过滤防火墙程序设计 (PDF)

网络安全大型专题片:

视频|网络安全大型专题片《第五空间》第一集:《透明的时代》

视频|网络安全大型专题片《第五空间》第二集:《隐秘的威胁》

视频|网络安全大型专题片《第五空间》第三集:《真实的较量》

Experiments(报告模板)

实验名称 课本练习题页码 时间
1. Ethernet帧的封装与解析 P34 2019-04-28(第五、六、七节)
2. Ethernet帧的CRC校验 P44 2019-05-09(第五、六、七节)
3. IP地址合法性判断 P58 2019-05-16(第五、六、七节)
4. IP数据包的捕获与解析 P72 2019-05-23(第五、六、七节)
5. IP数据包的分片与重组 P83 2019-05-30(第五、六、七节)
6. IPv6数据包的封装与解析 P98 2019-06-06(第五、六、七节)
7. 发现网络中的活动主机 P112 2019-06-13(第五、六、七节)
8. 发现服务器开启的TCP端口 P120 2019-06-20(第五、六、七节)

作业:提交说明文档+源代码文件+其他辅助性文件

序号 课本页码
1. P131
2. P143
3. P154
4. P173
5. P189
6. P204

课程考查

References

  • Windows Sockets 2 DOC, https://docs.microsoft.com/en-us/windows/desktop/api/_winsock/
  • 吴英,《计算机网络软件编程指导书(第2版)》,清华大学出版社,ISBN: 9787302481317
  • 刘琰, 王清贤, 刘龙, 陈熹《Windows网络编程》,机械工业出版社,ISBN: 9787111441960

Compilers(2018年春季学期)

A compiler is computer software that transforms computer code written in one programming language (the source language) into another programming language (the target language).

Slides

Lecture-1: 引论 (PDF)

Lecture-2: 编译基础知识 (PDF, 最后修改时间:2018-05-30)

Lecture-3: 词法分析 (PDF, 最后修改时间:2018-05-02)

Lecture-4: 自上而下语法分析 (PDF, 最后修改时间:2018-05-14)

Lecture-5: 算符优先分析法 (PDF)

Lecture-6: LR语法分析技术 (PDF-1, PDF-2, PDF-3, PDF-4)

Lecture-7: 语法制导翻译及中间代码生成 (PDF, 最后修改时间:2018-06-14)

Lecture-8: 运行时数据区的管理 (PDF, 最后修改时间:2018-06-08)

Lecture-9: 代码生成 (PDF, 最后修改时间:2018-06-27)

Assignments

1. 画出一个DFA的状态转换图, 并编写程序实现该DFA模拟算法 (时间: 2018-04-28)

2. 编程实现子集构造算法,实现NFA到DFA的转换 (时间: 2018-05-02)

3. 编程实现McMaughton-Yamada-Thompson算法,实现由正规式构造NFA (时间: 2018-05-02)

4. 编程实现Follow集合的计算 (时间: 2018-05-09)

5. 编程实现LR(0)项集族的计算 (时间: 2018-05-23)

6. 基于翻译方案,为表达式(a)+ b 画出语法分析树和抽象语法树 (时间: 2018-06-08),查看

7. 撰写读书报告(3页A4纸,word): 精读函数getReg的设计部分内容, 谈谈自己的体会。

Experiments(报告模板)

实验名称 时间 实验目的与要求
词法分析程序设计 2018-05-17(第六、七节)~2018-05-24(第六、七节) 设计一个词法分析程序实现对高级语言中的一种词素转成机器内码(二元组)的表示方式, (分析Java语言中的16进制整数
递归下降分析程序设计及语法分析中的错误处理 2018-05-24(第八、九节) 设计一个递归下降分析程序实现对算术运算表达式进行语法分析并能报告程序中的错误信息
预测分析程序设计及语法分析中的错误处理 2018-05-31(第六、七节)~2018-06-07(第六、七节) 构造算术运算表达式的预测分析表,设计一个预测分析程序实现对算术运算表达式进行语法分析并能报告程序中的错误信息
优先分析表及优先函数的使用 2018-06-14(第六、七节) 设计一个程序利用优先分析表和优先函数实现算术运算表达式的计算,并实现优先分析表到优先函数的自动生成
语法制导翻译与中间代码四元式和目标程序的生成 2018-06-21(第六、七、八、九节) 编写一个简单的编译程序,将赋值语句翻译成中间代码四元式或者汇编程序

References

  • Alfred V.Aho, Monica S.Lam, Ravi Sethi, Jeffrey D.Ullman:Compilers: Principle, Techniques and Tools, Second Edition
  • 薛联凤、秦振松,《编译原理及编译程序构造》(第二版),东南大学出版社,2013
  • 吕映芝、张素琴等编著,《编译原理》,清华大学出版社,2005
  • 陈火旺等编著,《程序设计语言与编译原理(第3版)》,国防工业出版社,2006
  • Alfred V.Aho等:《编译原理(本科教学版)》(第2版),机械工业出版社,译者:赵建华,‎郑滔,‎戴新宇,2009
  • 陈意云、张昱:《编译原理》(第3版),高等教育出版社,2014
  • John R. Levine:《flex & bison》,O’Reilly Media, Inc.,2009
  • 编译器设计 (Engineering a Compiler, Second Edition)下载 [强烈推荐,下次有机会用这本书做课本]

Exam

Formal Analysis and Verification

In the research area of hardware and software systems, formal analysis and verification is the process of proving, checking or analyzing the correctness and performance of a system with respect to formal specifications or requirements.

Slides

Lecture-1: Propositional Logic (PDF, Latex)

Lecture-2: First-order Logic (PDF, Latex)

Lecture-3: Linear Temporal Logic (PDF, Latex)

Lecture-4: Computation Tree Logic

Lecture-5: Equivalences and Abstraction (PDF)

Lecture-6: Partial Order Reduction (PDF)

Lecture-7: Timed Automata (PDF)

Lecture-8: Hybrid Automata (PDF)

References

  • Christel Baier and Joost-Pieter Katoen: Principles of Model Checking
  • Aaron R. Bradley and Zohar Manna: The Calculus of Computation
  • Mordechai Ben-Ari: Aaron R. Bradley and Zohar Manna: Mathematical Logic for Computer Science