选课类别:专业任务 | 教学语言:英文 |
课程类别:专业基础课 | 开课单位:计算机科学与工程系 |
课程层次:未知 | 获得学分:3.0 |
个人上的是同期的数字逻辑非H班(在非H总评拿了100),不过既然是同期并且同一个老师教,应该差别不会很大(?),也来这里写个点评。
虽然这是计算机系一门比较基础的课程,但是白老师真的讲的超级好,节奏合适详略分明,让我这个数学系来混选修学分的同学体验也很良好。
这门课分数分布比较散,属于是雨露均沾型,所以不能摆烂。期中期末各25分,project 15分,理论课签到10分,理论作业10分,lab课签到5分,代码作业10分。
平时一共4次理论作业,每次作业8题左右(最后一次只有4题),外加3次代码作业,每次10题左右,不过这里的1题是比较容易的小题(远比dsaa或者java a的题体量小),所以总体也不算多。考试基本上和理论作业以及ppt上讲的例题差不多,认真学了不会考差。签到分基本白送。不过project会有点头疼,在从来没接触过硬件的情况下刚入门一个硬件描述语言,一开始可能有一些挑战,不过学到有限状态机(大概第11周)的时候会豁然开朗。project刚发下来第8周第9周就想写,但是有点写不动,后面学到有限状态机就直接秒了(
下面分享一些资料:
23秋project(120/100):https://github.com/wLUOw/CS207_23F_Project_GenshinKitchen
一些课程资料归档:https://github.com/wLUOw/CS_Notes
白老师教的很nice!虽然这门课理论和实验部分前半部分确实结合的不大紧密,但至少我觉得后半学期的一些知识还是互通的。
总评构成:
一点吐槽:感觉Project属于这门课的难点。H课的project难度有些离谱,个人推测可能是把普通班一部分的Bonus放到H课的基础要求里了(比如用verilog这个不支持面向对象的语言写用户管理,没错这是基础要求)。Project极难调试,当电路的module达到一定数量之后,从开始编译到完成烧写可能需要花费15min(想象一下debug的时候改一处代码等15min看效果,没改对就得再改另一处代码再等15min)。还有概率出现从软件模拟仿真结果看代码能正确运行,但是一旦上板测试就BUG的诡异状况。
个人小tips:这门课其实很适合用来学习latex(所有理论作业都可以使用latex完成,且难度循序渐进),这里放上我的学习路径:作业1画表格和写布尔公式(练习tabular和数学环境),作业2卡诺图(学习使用ctan找到合适的package以简化工作,这里我用的是karnaugh-map包)和电路(tikz基础画图包以及circuitikz专用画图包用于绘制电路),作业3状态转移图(tikz包的进阶部分),作业4综合练习。本人坚持latex写了一学期,直接次次被白老师要tex文件改改当标准答案(顺便宣传一下个人repohttps://github.com/Cypher-Bruce/SUSTech-CS-Course,感兴趣的可以参考我的latex代码)。
这学期是白老师第一次教数字逻辑(H),所以不好和前几个学期比。总体来说感觉白老师教的很好,所有的知识点都讲的很细。
另外之前有人吐槽数字逻辑理论课和实验课关系不大,个人没什么感觉。
暂无教师主页