选课类别:计划 | 教学类型:理论实验课 |
课程类别:本科计划内课程 | 开课单位:计算机科学与技术系 |
课程层次:通修 | 学分:4.0 |
本课程作为计算机科学技术专业和电子工程专业的入门课程,采取自底向上的教学模式,从介绍计算机系统的底层基础知识开始,逐步上升到操作系统和高级语言程序的接口层,将软件和硬件联系起来,阐述从问题描述到算出结果的十个层次的转换过程:从问题到算法的转换、从算法到高级语言程序的转换、从高级语言程序到(用指令集结构描述的)机器语言程序的转换、从指令集结构到微结构的转换、从微结构到逻辑电路的转换、从逻辑电路到晶体管器件、从器件到物理的转换。
本课程从MOS晶体管开始,依次介绍逻辑门、锁存器、各种组合和时序逻辑结构、有限状态自动机的设计;然后围绕一个简单的计算机设计实例(LC-3),依次介绍冯·诺伊曼计算机系统结构模型、指令系统设计、汇编语言程序设计和微结构设计,为初学者建立起对计算机系统的完整认识。在此基础上,介绍汇编语言程序设计、物理设备的输入和输出机制、操作系统的陷入机制和子程序调用和返回机制、以及栈和数据转换的原理和机制。
大家好,我是这门课2022秋助教。
课程信息收集站:ICS2022资料分享,这个只是助教为了方便同学整理的资料,包括:作业、作业答案、实验、作业问题的解答等。
希望这门课大家都能有所收获。有问题可以各种方式找我,如果不想暴露自己的实名,可以用QQ小号联系我邮箱:2352135769@qq.com,我肯定不会去查你是谁。甚至于如果在邮件里说“这是让同学帮忙发的”,那我也信任这句话。(刚在班级群通知就有俩人邮箱联系我了)
2022秋季学期,本课程所有助教应该都比较热心,三个本科生助教应该问问题基本就是秒回,若不是秒回则可能是因为助教在休息或者干活没看消息,至少我绝不会拖延,即便是百度第一页的东西或是百度翻译能很好翻译的单词、句子。两位研究生助教貌似因为不常用QQ所以并不是很快,但是也很有耐心。
因为我去年曾经在这门课上有一些不好的体验,所以我今年希望能改善相关问题。
个人感觉,大部分人应该找我聊天还是挺愉快的。
当然我希望提升这门课同学的上课体验,不过也有同学反映了我的一些问题,比如说评课社区也有人发过。至于所谓故作高深啥的,其实我一般说话还是比较明白的,但是有的话不让明说,比如作业是谁出的题之类的。至于举报那次,是有人刷屏刷烂梗,有好几个人跟我私聊说太恶心了建议撤回,有四五个人给我说建议举报,还有俩同学给我发了他们的举报截图。说实在的我也挺烦这种事;我之前QQ也没有举报过(除了某嵌入式课程群里的黄色广告的,不知道咋混进来的)。
开学的一段QQ群里开了匿名,我们也没咋管(除了危险言论,比完全不管的水群还是严得很多),那会群聊比较乱。后来第一次作业布置之后就基本上不开匿名了,毕竟这时候就得准备好好学习了。不过我也不希望群聊太冷,所以小范围开玩笑或者表情包也是允许的。近期本来想开匿名讨论学习问题的,但是恰逢QQ匿名功(北)能(京)升(开)级(会)所以也没匿名。我是第一次当助教,群聊处理这方面的作为我以后得改进。第一次作业也是因为各种沟通问题除了幺蛾子,后边的应该会吸取我们的教训,正常一些。
不过我觉得课程信息收集这个事情,我应该做的算是比较好的。当然有很多人反映git不会用,其实把它当成正常网站就好,以后应该会在习题课讲。LUG的git操作比较抽象,我也在考虑在Gitee(操作相对友善一些)同步。
我水平比较低,高深的东西不能带来太多,但是希望同学们在这门课上都有更好的体验。同学的建议我尽量解决。当然,一些建议是不太可行的,而且有的决策我也没法改变,这种事情可以自己解决,或者直接向某班老师说。
课程总体上挺好的,事实上也学到了不少汇编层面的知识,但是课程群给人的感觉真的一言难尽。
课程群的内卷氛围十分严重,群里有不少炸药桶,而附加实验则是最佳的引爆器,只要群里有人提到附加实验,就像在炸药桶旁边玩火,一不小心就会爆炸。其实附加实验除了自由选择做不做之外其他属性和普通实验一样吧,选择写的同学有写的权利,选择不写的同学有不写的权利,然而课程群里经常有同学攻击写附加实验的同学是什么心理,写附加实验的同学不是恶性内卷,毕竟写实验是能学到东西的,那些想着妨碍别人写附加实验的同学才是恶性内卷。
另一个问题就是“提问的智慧”,这个词在返乡前后被经常提起,而且群里也有一些同学去攻击提出“看起来比较蠢”的问题的同学,这样也让不少人不太敢在群里提问了。个人感觉提出比较“愚蠢”的问题并不可怕,而因为害怕提问缺乏“智慧”而不敢在课程群里提问导致问题最终没有解决则是可悲的,教学是相长的,提问确实有智慧,但不耻于提问更是一种智慧,营造一种让所有人都能轻松提出疑惑的课程群氛围是一种大智慧。先学会知识的人其实也不必有一种优越感,看不起那些尚未学会知识的人,闻道有先后,学的多的人帮助学的少的人,大家共同进步,学有余力的人可以发挥自己的能力多做一些事情多学一些知识,学习有困难的人可以在课程群里寻求善意的帮助,私以为这才是良好的课程氛围。
立即登录,说说你的看法
高三时,我做过最远的卷子,是甘肃某市的联考试卷。
大二了,我做过最远的卷子,是The University of Texas at Austin的往年真题。
感谢ICS,让4级压线过的我提前备考GRE。
还没出分,人人都在卷附加实验(附加实验似乎变成必做实验了
幸亏做了个附加实验,正好压线总评85.
TIP:
考前可以去刷 University of Texas at Austin的该课程 往年真题 ,有奇效,神奇的海螺会告诉你网址;
数据通路 的知识点在期末占了至少30分,且大概率出现”自定义指令并要求写出数据通路“的题目;
本次的 lab6标准很严 ,为”使用cpp或其他语言编写之前5次实验的程序“,为助教手动批改,报告好好写的都卷到了;
附加实验中的 labS其实还挺水的 ,可以考虑一做,总评直接加分。因此在不怎么调分的情况下,优秀率大抵到40%了,没做附加实验的人可能吃亏。
考完了微机原理,回来给ICS的评分上调一分,当年还是稚嫩天真了。
评课社区总给人一种错觉,这门课、很简单,选了就有4.3。看了几位大佬的评课,我来说说另一个视角。
首先选课方面。这门课这学期共有三个班级,老师分别是安虹,张辉,苗付友。其中前两个班开给计科,后者开给人工智能和大数据。课程主页在https://acsa.ustc.edu.cn/ics/,三个班作业、实验都是一致的,PPT以安虹教授的框架为主,内容稍有出入。这门课的教材是ICS 3rd edition.pdf,内容详实,所以老师和PPT能起到的作用非常少,不必为了某个老师换班。
其次课程内容学习方面。以前是H课,课程要求较高,现在已经放低要求了。上课内容是1-9章,没有点名签到小测,完全可以自学课本。作业共六次,交了就有分。实验六项,要写实验报告。讨论课多少次记不清了,但是每次都尽量来,不然就提前请假。讨论课有个topic report环节,可以组队,在总评上加1-2分,如果没有人愿意上的话就变成习题课了。这学期最后一次讨论课有个二货上去念PPT,内容粘贴自百度百科,应该都加到分了。从前的实验给分标准比较卷,现在是length、performance在助教的两倍以内即可得到满分,本学期的6个普通实验都很水,加上助教又放水,导致前五个实验大家几乎都是满分。因为手改、又得压分,所以唯一拉开差距的就是lab6。lab6是用高级语言复现前面五个实验,我用Python写的,PC、nzp都考虑到了,算performance也不厌其烦地求了运行10,000次的时间,报告也很详细。
最后是分数。先把算法贴出来
· Homework (6 points )
· No score wil be given for identical assignments
· Discussion (6 points +2 points for topic report )
· 1 point wil be deducted for each unexcused absence
· Topic report is not mandatory
· Programming (48 points +10 points for extra experiments )
· Extra experiments are mandatory only for CS gifted class.
· Examination (40 points )
· Mid-term 20 points and Final 20 points.
· Open-book without any networked smart devices.
因为期末会很难,不做附加实验的话,中等水平分数也就在84上下,所以对绩点有刚性需求且学有余力的同学可以选择尽早开始做。如果预料自己的绩点会很难看也可以早点开始做。附加实验应该是这门课最卷的地方了,一个5分、两个10分,别人都做,你做不做?大佬做完加了10分,搁群里说简单云云,一时间群炸了,戴着各种面具的人进“粉墨登场”,看得令人心累。这门课本身算不上难和卷,初衷也不是鼓励大家卷,但是在内卷的大环境下还是成了一门让普通学生难受、焦虑的课。
期末注重数据通路的考察(和上课内容正交),吃了很多亏,建议复习的时候可以看一下patt教授的主页http://users.ece.utexas.edu/~patt/,熟悉一下题型。今年的考纲:2021 midterm重点.pdf 期末考试.pdf。
出分了,来点评一下这个课。
关于教材:英文强,直接看第三版的英文书就好了;英语较弱的话就买本中文书,但中文书是第二版,有些地方跟第三版不太一样,不一样的地方就看一下英文书就好了。
关于学习:上课我是没怎么听的,基本是自己看书,课后看看老师的ppt,ppt三个班基本是一样的。这门课有个很大的优点,就是有一个公共的课程主页,ppt下载直接在主页下载就好了,很方便。我觉得把书本好好看懂是有很大的收获,除了前面的正文,还有后面的附录都要好好看。
关于作业:大概是有6份,只需要交前五份,只要交了就有分,建议自己独立认真地完成,要不然考试要遭重。作业难度不大,基本是书上的题,或者是助教改编的题。
关于实验:基础实验6次,总体难度都不太大,细节就不说了。关于给分,执行行数在助教的两倍以内就是满分,这个区分度其实就不是很大了。报告给分不太清楚,因为没有公布。
附加实验:模拟器和汇编器(用C++),基本是在助教给好的框架下,完成to be done就好了,做了感觉还是学到不少东西的。时间多完全可以试着做做。做一个加5分呢。
关于考试:我感觉期中和期末难度差不多,期中还行85+,期末不清楚,感觉考的还行(可能是错觉)。可以参考一些往年的patt主页的卷子。题目类型差不多。
课程体验:郝助教和郑助教都很负责,及时回答问题,帮助debug,两位助教让这门课的课程体验直接上升一个档次。而且每周的讨论课算签到(哦对这个也算分的,做presentation也可以加分),这个也可以帮助同学及时与助教线下沟通解决问题。
关于总评:期中期末各 20,平时实验 48,作业 6,讨论课出勤 6。【附加实验10+ 1 或 2 (讨论课报告)】
做了附加实验10分,期中85+,总评94,没有公布期末成绩和报告分,虽然没有4.3,也还算满意吧!总之是这学期课程体验最好的一门课,相比于某些数学课。。。都是泪
助教习题课讲得很不错,非常细致,好评。
这课比较适合大一新生学。不过还是换个更有用的汇编比较好。。
大三老狗出于个人兴趣选的这门课。感觉收获确实很大。
而且按照我们之前的培养方案直接上计组,我感觉导致不少同学上来被打懵了。先学ICS,再学计组感觉更加合理。
给9分因为最后总评89,卡绩了。你们知道一个4学分的课对大三老狗多重要吗,呜呜。
给后面的同学一点提示:
一定要注意最后总评由哪些部分组成
我们这届是期中期末各 20,平时实验 48,作业 6,讨论课出勤 6
我因为是大三,然后也没仔细看总评的组成。导致我讨论课几乎没咋去。。。可能卡绩卡在这里了。
苗老师和助教人都超级好,nice!
其实往年真题我是知道的,奈何我太懒没有去做。后面的学弟学妹们记得做。搜University of Texas at Austin+课程关键字即可。
课程内容和质量非常好,建议学弟学妹认真学习。是我在你科计科课程里面学过体验最好的一门。
一坨,等考完再评
点评内容太短啦!
点评内容太短啦!
点评内容太短啦!
更新,直到大作业来了我才知道上课讲的那是和大作业一点关系没有啊
看见隔壁张老师已经被冲爆了所以来占个坑。辅修计算机人表示这门课完全躺平,经常课上写理力、复变、概统。苗老师虽然也是PPTreader但是没有搞像隔壁张老师那样的骚操作,属于是love & peace了。
出分后补评:没写附加实验,lab6也没卷,期末考试现场学习数据结构,数据通路和IO(在复习光学,傻逼jwc光学和ics排同一天)其他老老实实都写了,最后总评75,和某坚的程设一样(笑)
乐子人出门右转https://icourse.club/course/20775/圣地巡礼(doge),属于是在各种比烂下瘸子里挑将军挑出来了(笑)
这学期辅修计组,自我感觉修完ics再修计组确实好点,至少看到一些新奇的名词(乡野村夫勿cue)不会那么害怕。
——————手动分割——————
计组出分了,后三个实验没写,考试没复习,2.0,感谢llxx不挂之恩。感觉ics对计组最大的帮助就是汇编语言的编程(雾),至少可以轻松应付计组lab3