Computer Science Overview
E N D
Presentation Transcript
Computer Science Overview CS 21a
Basic Terminologies • Computer • Program and Algorithm • Hardware and Software • Operating System • Programming Language • Compiler
Computer • Computer • an electronic device that can store, retrieve, and process data through programs • Parts of a Computer • Central Processing Unit (CPU) • Memory • Input/Output Devices
Program and Algorithm • Program • a sequence of instructions for a computer • Algorithm • a sequence of unambiguous instructions designed to perform a given task. • “performing a task” implies that it must terminate and produce output • Program versus Algorithm
Hardware • Definition • the physical components of a computer • Parts of a Computer Revisited • CPU: made up of the Control Unit (CU) and the Arithmetic/Logic Unit (ALU) • Memory: internal data storage • I/O Devices: presents (output) and accepts (input) data to and from the outside world
Software • Definition • the collection of all programs • Examples of Programs • word processor • browser • application programs • compiler • operating system
Operating System • Examples • Windows, DOS, UNIX • Definition • a program that manages the computer’s resources • resources: devices, programs, and files
Languages and Compilers • Programming Language • a set of rules, symbols and special words used to construct a program • Machine Language: a set of binary-coded instructions used directly by the computer • Compiler • a program that translates a “high-level” program into machine language instructions
History of Computers • 5 Generations • 0th: the “difference engine” (Babbage) • 1st: vacuum tube technology (Mark I, ENIAC) • 2nd: transistors (faster, smaller, more reliable) • 3rd: integrated circuits (“ICs”) • 4th: large-scale integration (LSI), VLSI (led to the development of microcomputers)
Computer Science • Not just “programming” • A discipline, a science • Seeks to build a foundation for • computer design • program development • information processing • algorithmic solutions of problems
Fields in Computer Science • Software Engineering • Theory of Computing • Database Systems • Computer Architecture • Operating Systems • Data Communications and Networking • and a lot more ...
Software Engineering • Development of Programs • how to program (CS 21a, CS 21b) • Systems Analysis and Design • disciplined activities that precedes programming (CS 165, MIS 121) • Software Development Phases • engineering concepts apply to developing software (CS 123)
Theory of CS • Data Structures and Algorithms • analyze problems, representations, and algorithmic solutions (CS 110) • Discrete Mathematics • areas where Math and CS meet (CS 101) • Theory of Computation • formal models of computational solvability (CS 130)
Database Systems • Database System • a computerized system that maintains information and makes it available on demand • CS 122 • Data models and database design • Data manipulation languages • Data protection issues: DB integrity, security, concurrency, recovery
Computer Architecture • CS 150/CS 152 - studies the structure, characteristics and operation of modern day computer systems • CPU design, function and operation • Memory organization, I/O architecture • Pipelining • CISC, RISC, super-scalar architectures • Parallel and network architectures
Operating Systems • CS 161/162 - studies the design and implementation of operating systems and the theories and principles used in its development • process models, scheduling, synchronization • virtual memory, caching • I/O device management • file systems and structures
Data Communications and Computer Networks • CS 154 / CS 156 - covers the fundamentals of data communications, computer networking and internetworking • Data communications • Network architectures • Communication protocols • LAN,MAN,WAN concepts and technologies • Internet and TCP/IP
Other Fields • Compiler Design • Artificial Intelligence • Computer-Aided Instruction • Multimedia Systems • Parallel Processing • Management Information Systems (MIS part of CS versus CS part of MIS)