STEAM GROUP
REED CS 221 CSCI221
STEAM GROUP
REED CS 221 CSCI221
0
IN-GAME
0
ONLINE
Founded
18 February, 2020
ABOUT REED CS 221

CSCI 221: CS Fundamentals II

This is a second course in computer science that serves as an introduction to computer systems fundamentals and provides its students a transition to advanced programming. We introduce students to how programming systems are constructed--- from transistors, to logic gates and registers, through an instruction set architecture, to the runtime system of C and C++ programs. This is a dense survey so students gain maturity in how programs actually execute on computer systems. This has value in two ways (1) it gives them a realistic sense of the performance and optimization of their programs, and (2) it provides a foundation for thinking about the tools and systems they might someday construct themselves. Furthermore, learning these fundamentals is useful for understanding the various security vulnerabilities that arise in our current hardware and software infrastructure.

The course also serves as an introduction to C programming and to modern object-oriented programming in C++. To master these languages, we cover techniques for structuring code and representing data, including using standard object libraries and widely adopted idioms for careful management of object heap data, and of a program's references to it.

There will be significant programming projects in C, MIPS assembly, and C++ as well as logic circuit construction in Logisim. Development tools including the Unix command line and editors, compilers, building and debugging tools, and repositories for version control and sharing will also be covered. We meet once a week (Thursday) for in-lab exercises, have weekly homeworks (assigned either Thursday or Friday, due Wednesday), and have several longer term programming projects usually due every third week.

Prerequisite: CSCI 121 or the equivalent.

Lecture: 3:10-4:00pm MWF in Eliot 314
Laboratory:
• Section SL1 1:40pm-3:00pm Th in ETC 208
• Section SL2 3:10pm-4:30pm Th in ETC 208

Office hours: 12++ Mo, 2-3+ Tu, 11++ W, 2-3 F in LIB 314.
Key:
++ means 30 minutes, or more if people are stacked up
+ means a half hour more, if people are stacked up

Tutoring: 7-9pm Su, Mo, Tu, Th in Library 387.

CSCI 221: CS Fundamentals II[jimfix.github.io]
POPULAR DISCUSSIONS
VIEW ALL (1)
RECENT ANNOUNCEMENTS
WELCOME HERE ARE THE RULES
5 Comments
Magpie Shekelburg 28 Jul, 2020 @ 8:52pm 
MEEEEEEEEEEEPL
Chiron 24 Jul, 2020 @ 10:50pm 
OMG I FORGOT ABOUT THIS PAGE
Magpie Shekelburg 19 Feb, 2020 @ 10:47am 
:dhe_frog: :dhe_frog: :tongue: :thenovelisttommy: :thenovelisttommy: :thenovelisttommy: :tongue:
Chiron 18 Feb, 2020 @ 11:52pm 
OMG OMG OMG OMG OMG ARIEL WOW WHAT SUCH A COOL PAGE OMG ELIIIII
Magpie Shekelburg 18 Feb, 2020 @ 9:03pm 
Wow, such a cool page, Ariel!!!! :tongue: :tongue: :dhe_frog: :thenovelisttommy: :thenovelisttommy: :thenovelisttommy: :tongue: :tongue:
VIEW ALL (6)
GROUP MEMBERS
Administrators
Members
0
IN-GAME
0
ONLINE
3 IN CHAT
Enter chat room
Founded
18 February, 2020