Академический Документы
Профессиональный Документы
Культура Документы
UndergraduateCatalog:ComputerScienceWPI
Home >Academics >Course Catalogs >Undergraduate Catalog >20162017 Undergraduate Catalog >Course
Descriptions >Computer Science
ComputerScience
CS 110X. INTRODUCTION TO PROGRAMMING FOR NONMAJORS
This course introduces students to the fundamental principles of programming in imperative and scripting languages.
Topics include control structures, iterators, functional decomposition, basic data structures (such as records).
Students will be expected to implement, test and debug programs. Through the use of compelling applications and
lab exercises, students will learn how to interface with external data systems and control devices. Recommended
background: none.
https://web.wpi.edu/academics/catalogs/ugrad/cscourses.html
1/5
10/10/2016
UndergraduateCatalog:ComputerScienceWPI
CS 2011. INTRODUCTION TO MACHINE ORGANIZATION AND ASSEMBLY LANGUAGE
Cat. I This course introduces students to the structure and behavior of modern digital computers and the way they
execute programs. Machine organization topics include the Von Neumann model of execution, functional organization
of computer hardware, the memory hierarchy, caching performance, and pipelining. Assembly language topics include
representations of numbers in computers, basic instruction sets, addressing modes, stacks and procedures, lowlevel
I/O, and the functions of compilers, assemblers, linkers, and loaders. The course also presents how code and data
structures of higherlevel languages are mapped into the assembly language and machine representations of a
modern processor. Programming projects will be carried out in the C language and the assembly language of a modern
processor. Recommended background: CS 2301 or CS 2303, or a significant knowledge of C/C++.
CS 2223. ALGORITHMS
Cat. I Building on a fundamental knowledge of data structures, data abstraction techniques, and mathematical tools,
a number of examples of algorithm design and analysis, worst case and average case, will be developed. Topics
include greedy algorithms, divideandconquer, dynamic programming, heuristics, and probabilistic algorithms.
Problems will be drawn from areas such as sorting, graph theory, and string processing. The influence of the
computational model on algorithm design will be discussed. Students will be expected to perform analysis on a
variety of algorithms. Recommended background: CS 2102 and CS 2022.
https://web.wpi.edu/academics/catalogs/ugrad/cscourses.html
2/5
10/10/2016
UndergraduateCatalog:ComputerScienceWPI
and for CS 503. Recommended Background: CS 2022 and CS 2223. Students who have credit for CS 4121 cannot
receive credit for CS 3133.
https://web.wpi.edu/academics/catalogs/ugrad/cscourses.html
3/5
10/10/2016
UndergraduateCatalog:ComputerScienceWPI
Cat. I This course studies the problem of making computers act in ways which we call "intelligent". Topics include
major theories, tools and applications of artificial intelligence, aspects of knowledge representation, searching and
planning, and natural language understanding. Students will be expected to complete projects which express
problems that require search in state spaces, and to propose appropriate methods for solving the problems.
Undergraduate credit may not be earned both for this course and for CS 534. Recommended background: CS 2102, CS
2223, and CS 3133.
https://web.wpi.edu/academics/catalogs/ugrad/cscourses.html
4/5
10/10/2016
UndergraduateCatalog:ComputerScienceWPI
Cat. II This course studies the compiling process for highlevel languages. Topics include lexical analysis, syntax
analysis, semantic analysis, symbol tables, intermediate languages, optimization, code generation and runtime
systems. Students will be expected to use compiler tools to implement the front end, and to write a program to
implement the back end, of a compiler for a recursive programming language. Undergraduate credit may not be
earned for both this course and for CS 544. Recommended Background: CS 2102 and CS 3133. This course will be
offered in 201617, and in alternating years thereafter.
CS 4802. BIOVISUALIZATION
Cat. II This course will use interactive visualization to model and analyze biological information, structures, and
processes. Topics will include the fundamental principles, concepts, and techniques of visualization (both scientific
and information visualization) and how visualization can be used to study bioinformatics data at the genomic,
cellular, molecular, organism, and population levels. Students will be expected to write small to moderate programs
to experiment with different visual mappings and data types. Recommended background: CS 2102, CS 2223, and one
or more biology courses. This course will be offered in 201617, and in alternating years thereafter.
Resources:
Academic Calendars
Copyright
myWPI
Ph: +15088315000
Campus Maps
Directories
Bookstore
Contact Us | Directions
Human Resources
Gordon Library
016092280
~Feedback&Questions~
https://web.wpi.edu/academics/catalogs/ugrad/cscourses.html
5/5