| 选课类别:计划内与自由选修 | 教学类型:理论实验课 |
| 课程类别:本科计划内课程 | 开课单位:计算机科学与技术系 |
| 课程层次:通修 | 学分:4.0 |
本课程作为计算机科学技术专业和电子工程专业的入门课程,采取自底向上的教学模式,从介绍计算机系统的底层基础知识开始,逐步上升到操作系统和高级语言程序的接口层,将软件和硬件联系起来,阐述从问题描述到算出结果的十个层次的转换过程:从问题到算法的转换、从算法到高级语言程序的转换、从高级语言程序到(用指令集结构描述的)机器语言程序的转换、从指令集结构到微结构的转换、从微结构到逻辑电路的转换、从逻辑电路到晶体管器件、从器件到物理的转换。
本课程从MOS晶体管开始,依次介绍逻辑门、锁存器、各种组合和时序逻辑结构、有限状态自动机的设计;然后围绕一个简单的计算机设计实例(LC-3),依次介绍冯·诺伊曼计算机系统结构模型、指令系统设计、汇编语言程序设计和微结构设计,为初学者建立起对计算机系统的完整认识。在此基础上,介绍汇编语言程序设计、物理设备的输入和输出机制、操作系统的陷入机制和子程序调用和返回机制、以及栈和数据转换的原理和机制。
期末考试试卷量大且内容复杂,常涉及推理题和其他课程知识点。出题随意且挖坑较多,但部分同学指出老师最终给分较为慷慨,尤其实验成绩影响较大。虽有调分但并不普遍,部分同学认为总评调分幅度较大,可能在+5~+10分之间。
陈俊仕老师受到普遍好评,被认为为人友好、讲课内容到位,适合自学。然而课程本身较简单且抽象,有学生表示“看书自学也行”,引发不少同学对教学内容实践性及深度的批评。
作业负担小,形式为二等级制度,主要用于检测。尽管实验数量少,但在复习周仍有实验布置,文档不详细引发不满。然而实验对总成绩影响较大,“好好写的话一定会有好分数”。
课程涵盖ISA以下内容及LC-3指令集,不涉及较高层次知识,部分内容与《数电》重叠,实用性有限。有学生建议课程应安排在大一且适当降低难度。
总体而言,虽然老师个人素质与态度良好,但课程进度安排及考试难度问题显著,影响学生学习体验。
在动态分享了一些思考和感受,本来没打算发到pksq,但是有同学让我发,思来想去还是顺便也发一下吧₍ ˶•ᴗ•˶₎不过内容有些比较大的改动
很荣幸能在2025秋季学期担任“计算系统概论A”课程的助教。
我想先谈谈为什么这门课在科大的名声这么不好。总体来说就是:这是一个相当宝宝巴士的课程,但是考试和整体体验却像是在开F1方程式。
首先,我认为最重要的一点是:作为一门最基础的概论课程,它安排在大二开设实在是太晚了。很难想象这样一门高中生都能学习的课程,为什么要推迟到大二。也许是因为在科大“祖宗之法不可变”,大一一切专业基础课程都要给数理基础让位。其次,这门课没有比较合适的成型题型,导致期中期末考试大多数题像是在“猜谜”,这种体验属于是很折磨了。此外,教材中的教学模型LC-3在现实中并不存在,与真实的计算机也有较大差距,这就造成了教学内容与实际应用的脱节。同时,正因为LC-3是虚构的,它的设计以及教材本身也存在不少错误和矛盾。另外,尽管这门课是AIDS学院的必修课,我并不确定ICS是否真的对AIDS学院的同学们有帮助。无论如何,将一门存在误导性的概论课放在培养方案中,且后续没有任何衔接课程,实在难以理解(尤其是它还安排在大二)。当然,还有英文授课、英文作业实验、英文考试一系列小连招,加上第二版教材有中文但不太可用,第三版教材没中文并且错误也不少,很难让同学们有一个比较好的体验。
尽管如此,我依然觉得这是一门很有趣的课程。如果它能作为大一学生的选修课,并且题目没有那么刁难,那就再好不过了。这门课确实自底向上地让我对整个计算机系统有了一个比较全面和清晰的理解,对于后续的计算机组成原理与编译原理等课程也有一定帮助。
在担任助教的过程中,我自己也收获了很多,也希望学弟学妹们未来能积极申请助教(当然,不一定是ICS的助教),在帮助他人的同时成就自己。
很多方面(比如培养方案)现在确实很难改变,但在改善课程体验这一点上,我们学生其实也能做一些力所能及的事情(比如隔壁的高助教一直在做的,伟大无需多言。可惜明年他应该不会再继续担任了)。希望明年(其实是今年)担任助教的同学能继续努力,在作业、实验和考试等方面做一些改进,争取让这门课变得更好。同时也希望未来这门课程能有一本经过勘误并汉化的第三版教材,希望有朝一日它能真正变成一门让更多人受益的好课。
去年是这个班学生,今年是这个班助教。
真的没想到今年班里这么卷π_π。期中期末成绩分布相比其他班显得比较夸张,首先当然主要是因为本班同学总体水平和努力程度全都显著地高,其次其实也不难发现我们班改卷标准客观上来讲(尤其是期末)也相对宽松许多。综合以上两点,确实很难在现有的总评优秀比例限制下在给分方面达到或者超出大家的预期(换句话说就是捞)。
总评已提交系统,具体什么情况我也不是很清楚,全都交给陈老师了,等出分叭(T^T)。但是有两点可以保证:1.绝对没有下调 2.优秀率严格意义上不低于40%(具体是多少就不说了,担心被坏人举报QAQ)
心好累啊,这两周一直在尝试各种奇奇怪怪的函数,结果最后果然还是不太能用函数说是(°ゝ°)白搞了
第一次当助教,可能有些事情做的不太对,有些话说的不太合适,在这里给同学们道歉了<(_ _)>这学期真的尽力啦
不可否认,这本身是一门很好的课,听说可能会有iscB当全校必修?据我了解,其他高校也有开这门课。这门课让我们对计算机有了基本的了解。
老师很年轻,说实话,可能是我个人问题,听不进去,但老师还是很温和很有耐心。
作业偏多,课上一大部分时间在讲习题,不过毕竟是四学分的课。我个人觉得可能开成半学期的课,内容更浅可能更好?
这期末真的太太太太太难了把,对我这种菜鸡并不友好
二编:期中64.5期末80实验作业正常完成+附加实验总评88…给助教和老师磕一个…
表白zcj助教,非常用心负责!课程本身的意义有待发掘,10分先给助教和老师…个人比较喜欢老师上课带着我们做题的模式!
出分真的很慢,不过最后等到了还算惊喜的结果…
一编:2026.2.10还没出分,不会真要等到大年三十吧…
别卡我优秀,出分回来还愿
省流:矮子里面拔高个,可以选。但无论是哪个课堂,这门课的进度、内容安排都很抽象,是否听课都不影响学习。
评分指标不包括这门课程不可避免的共性问题。
教学质量:老师人很好,感觉教学水平不错;但这门课本身比较简单,掰开了揉碎了也讲不出什么东西,看书自学也行。
课程内容:基本是ISA以下的内容,OS及更上层的内容只能听天由命,对“计算思维”的培养基本没有任何作用。前半部分除了基础知识以外基本是数电的子集,并且与数电的关联度过于高(后面再提)。后半部分主要是LC-3的体系结构、机器语言/汇编语言,以及少量有关中断的知识,并不深入;LC-3指令集也不实用,并且由于指令集实在是太简单了,许多操作实现相当繁琐,学完这门课照样还得自己看别的。
作业/小测:二等级制,存在的意义在于送分,做了就行。
实验:虽然量不大、质量尚可,但是体验极差。文档很屑,有些实验的输入输出要求基本靠猜;报告占50%、说明简略且不提供模板;因为教学进度实在太慢,实验全部拖到最后一个多月,复习周期间仍布置了两个实验。
考试:巨大槽点。根据不完整的行为还原程序代码、寄存器状态,对着状态图数指令周期这种逆天题目暂且不提,也先不管期末考逮着Fig. C.2+C.3硬出题,光是题目中到处挖坑、期中考试延长时间都做不完的题量已经可以称之为屑中屑。出题随心所欲,似乎可以出现一整道大题都在考其他课程的知识点的情况。期末预习数电的时候看到下图似曾相识(差点没把我气昏),怪不得期中考试这个近十分的大题我只做出两分。ICS质量不怎么样,内容少且不难,所以专门在这种地方强行增加区分度?

给分:不失为一个亮点。很可能是为数不多把实验当重点的计算机课之一。不过这也是对所有计算机类课程的基本要求了,计算机课不看实践能力,难道看纸上雕花?期中期末的考试情况都相当惨烈,总评的调分幅度较大,应该在+5~+10分之间。
总结:好好一门课被骚操作搞得乌烟瘴气,纯粹为了筛选和整人乱搞就没有任何必要了。放在大一开、降低课程要求才是正道。
2.14 出分了(也可能2.13就出了吧),期中期末90+ 作业实验-0.5 写了附加实验,总评三位数,抵消了马原的影响😋
感谢老师和助教!
课程内容不值10分,但鉴于给分好,评个10分,但是有傻子刚才点成9分了,改一下(
考试是开卷,资料这方面我本人是只用到了两个附录和进制转换表(放在最后面了),尽管开卷我觉得还是需要对指令那一块熟悉一点,否则考场上几乎答不完卷
总的来说,这门课有一些知识学起来还是有点意思的,不过个人感觉自己看书自学也可以,考试的体验就是一坨了。大部分选这门课的人都是必修,说实话感觉不同班差别也不大,都挺一言难尽的,来选陈老师的班也没什么问题。不过这学期前半学期有小测,后面取消了,不知道下一届还会不会有。
上课方面,个人感觉重点是LC3的数据通路和汇编语言,前面的逻辑门和后面的C语言感觉没太多内容。
前几章主要介绍数据的表示、逻辑门之类的,没什么意思,有一种高中题纯靠仔细审题的感觉。不得不提的是,前半学期有一定量小测,还是算分那种(最开始不知道算分,纯瞎写的,所以小测全是9/9.5,不知道在总评中会有什么影响),不过后半学期似乎因为同学们的反馈,老师取消了小测的形式。
第五章数据通路算得上是课程重点,而在讲完这部分后,老师开始在上课时留大量时间让我们做题,大部分是书后习题,给大家的时间也挺充裕的,建议数据通路那种题可以思考一下,我觉得是挺有帮助的。
期中考试主要范围就是前5章+基础汇编语言,期中之后介绍了中断、IO、函数调用和栈以及C中指针和数组,感觉内容没有那么多,如果前面数据通路理解的好这部分理解起来也相对容易。
这里强烈推荐大家善用附录A和附录C,前者可以找到每条指令对应在做什么,后者有大量数据通路和有限状态机的内容,感觉比书的前面写的更清晰。
Lab方面,总共有6个必做Lab,附加Lab A/S二选一。Lab1-Lab5分别让我们练习了不同指令的使用,某些debug环节较为痛苦,Lab6是用C语言重写Lab1-4,较为简单。Lab A/S分别是汇编器和模拟器,不强制要求,据说做了有加分,具体多少视期末情况而定。
作业总共7次,二等级的,部分题目较难。
考试的话,感觉就很难评了。首先是英文命题,不过感觉大部分也能看懂,考试中看不懂的单词也可以问助教。然后就是考试内容本身了,期末试题有一些奇怪的错误,我发现的有:
反正考场上做到错题心态是真的爆炸。
同时,这门课考试给人一种没活硬整的感觉,比如期末最后一题,本身功能实现起来不难,但是为了凑一些奇怪的考点,硬是把一个20行能解决的问题写了将近50行,然后挖空让我们填…… 期中最后一题也是一个挖了空的程序,先让我们填空,再问程序的功能是什么,给人的感受很不好。
老师助教都还不错,助教答疑挺及时的,这方面感觉不错。
放一下我考场上用的最多的一个表格

1
先占个位 出分再评()
把我95改成92了 理由是什么一个班只能有10% 4.3,给我气笑了,我怎么在科大这么久没听说过这规矩。
期中79排名班级12,期末83(班级最高87),平时作业-1,实验全做对,附加实验没做,最后总评排名班级14,给了我一个92。。。。。这是将近120人的班啊。。。
无语了😶
更新一下评论,补充一些相对有用的内容。
为了避免下一届依然有大量卷怪涌入,所以给个低点的分数控一下分()
丸辣,发现分压不下去了,那干脆给个高分得了()
首先先说大家最关心的给分问题。本人期中77.5,期末66坠机,作业实验全做+附加实验(LabA汇编器),总评87(是我目前为止第一门不卡绩的百分制课程),我觉得这样的给分还是非常合理的,可见助教gg们真的在给分上下了非常大的功夫,值得大好评。
老师的上课方式还是非常独特的,基本以书上题目为内容,我个人对这样的讲法还比较接受,大概能理解老师想通过题目来强化理论概念的目的,只不过这个过程还是有些痛苦的,因为理论概念部分老师可能讲的不是很明白(或者说比较难讲明白),导致在刚刚开始做题的时候无从下手,完全不知道怎么将不怎么理解的概念理论进行实际应用。但是老师对这种上课方式是明显做了充分准备的,至少在讲评题目的时候能说的非常清楚且无误(在USTC的课堂中有不少老师讲一半发觉/被同学指出自己讲错了,然后再推倒重来,浪费大把时间与精力),我觉得是挺难能可贵的。所以如果明年还是这种教学方式的话,我觉得不会做题大可不必担心,等老师讲就可以了,如果连老师讲的都没听明白可以试试课下跟老师多多交流,老师挺愿意跟同学交流的,并且比较温和,交流过后通常能有些收获。
当然缺点也是有的。老师在讲理论概念部分的时候感觉确实太浅了一些,而且到后期感觉内容编排上不是很合理,一会是数据结构一会是中断输入一会又扯到C语言了。也不知道是不是我自己的原因,TRAP,RTI,用户模式和工作栈那块我有些晕(这可能就是我期末坠机的原因),建议后面的计科同学可以着重关注一下这方面的内容,AIDS的同学我觉得可以关注一下前面的数电部分的内容,因为计科有数电课,对于ICS里的数电部分可以说几乎不用再看,但是AIDS没有学过,在头一次碰到的时候可能有一些障碍。还有指令状态机数周期的部分我觉得也是难点,可以着重关注一下。
本评论仅仅指出本班过于卷的事实,下面贴出本班与隔壁一个平行班的成绩分布


(第一个是本班的,第二个是隔壁班的,本班中位数67在隔壁班是妥妥前30%水平)
希望我们班能在优秀率上稍微宽容一点,毕竟这成绩把批卷的助教ldx都“吓哭了”
出分了,期中71+期末74+作业全满+实验做得还行+附加实验=89,给分还是很不错的,虽没有到4也可以满意
除开给分以外,这门课就比较幽默了。课程内容重点在前几章,尤其是LC-3部分,而后期的递归、栈和队列、I\O讲得都非常快,所以过了期中后明显没什么内容可讲,体现在这学期的课上就是连续几周在课上讲题(期中前后都是如此),新内容极少,且在期中之前几乎每节课都有小测(不一定交);jwxt上这课要上18周,却提前几周结课。内容较少的情况下老师并没有调整讲课速度,依然过得飞快,最重要的LC-3状态机和数据通路讲得也不系统。
实验方面,这学期有6个实验另加一个附加实验,lab6就是用C语言重写之前的实验,所以可算成5个。所有的实验都可以完全用AI完成,比较难的是附加实验,但是和课程内容关联不太大。
考试还是比较套路的,题目出的像猜谜一样,但是改卷很松,意外地卷面还行。另外今年这个班很卷,选课需谨慎
总的来说,这门课的定位是比较微妙的,作为AIDS人也不太清楚其与后面课程的关联,反正是必修逃不掉,陈老师的课是值得选的,虽然课堂上学到的东西还是太少了……以上列举的种种缺点大多是课程本身的问题,老师和助教还是很好的
给个满分完全是想给老师个人往上拉拉分
出分后更新给分好坏:实验总共-1.5,小测作业都OK,期中考试75,期末78,看老师具体调分情况了
课程:无趣的,乏味的,单调的
老师:人很好,年轻老师希望融入学生,而且平时回答同学问题也很积极,而且老师本人的水平绝对是很可以的,讲课的话看个人了,我是觉得该讲到的地方都讲到了,身边辅修人表示根本听不懂老师的自言自语
助教:人很好,但是有点摆烂,问问题时耐心解答,(ps:作业和实验检查的都很松了)(ps:此处吐槽隔壁H班助教,试图拐骗我们助教严查实验报告?难不成你还能来个按字数和插入图片数给分?无语ing)
作业:不多且对复习和知识理解层面具有现实层面意义
实验:shit,考试周留实验,虽然是由于课程本身原因,不过我只能说ics:nmsl
总结:这b课就应该大一上 or下开
这课是被人遗忘了吗
出分了,更新一下,我按比例正常算法分数应该在87~88之间,老师调到了95,谢谢老师!给分还是很好的
这门课目的是帮助理解计算机系统的多层抽象,不过实际上只讲了isa往下的部分,内容很少,把附录lc3的状态机和datapath几张图搞明白就已经差不多了。
也是因为如此,考试做题味太重,题目依赖经验,有的题完全就是考察你推理能力,想拿高分建议去刷 https://users.ece.utexas.edu/~patt/25f.306/exams.html 上的卷子找找题感,反正花不了多少时间。
平时实验在总评的占比很大,感觉这样挺好的,实验和项目就应该是计算机课程的重点。
总之这门课稍微讲讲os往上的东西就好了,还是在lc3上耗费了太多的时间。
给分不知道怎么样,等出分了再说。
出分了,期中88期末92.5,按5:2:3算已经95了就没做附加实验,最终总评也是95,意料之中吧。
老师助教还挺负责,课上会有几次小测(但不是很严肃的那种,主要还是起一个点名的效果),实验占比较高,好好写的话一定会有好分数!给分神了!而且班级压力不是很大,毕竟卷狗大多在H班hhh