Table of Contents
Introduction.
The Study of Algorithms.The Development of Algorithmic Machines.The
Evolution of Computer Science.The Role of
Abstraction.Ethical/Social/Legal Issues.
I. MACHINE ARCHITECTURE.
1. Data Storage.
Storage of Bits.Main Memory.Mass Storage.Coding Information for
Storage.The Binary System.Storing Integers.Storing Fractions.Data
Compression.Communication Errors.
2. Data Manipulation.
The Central Processing Unit.The Stored-Program Concept.Program
Execution.Other Architectures.Arithmetic/Logic
Instructions.Communicating with Other Devices.
II. SOFTWARE.
3. Operating Systems and Networks.
The Evolution of Operating Systems.Operating System
Architecture.Coordinating the Machine's Activities.Handling
Competition Among Processes.Networks.Network Protocols.
4.
Algorithms.
The Concept of an Algorithm.Algorithm Representation.Algorithm
Discovery.Iterative Structures.Recursive Structures.Efficiency and
Correctness.
5. Programming Languages.
Historical Perspective.Traditional Programming Concepts.Program
Units.Language Implementation.Object-Oriented Programming.Parallel
Computing.Declarative Programming.
6. Software
Engineering.
The Software Engineering Discipline.The Software Life
Cycle.Modularity.Design Patterns.Development Tools and
Techniques.Documentation.Software Ownership and Liability.
III. DATA ORGANIZATION.
7. Data Structures.
Arrays.Lists.Stacks.Queues.Trees.Customized Data Types.Pointers in
Machine Language.
8. File Structures.
Sequential Files.Text Files.Indexed Files.Hashed Files.The Role of
the Operating System.
9. Database Structures.
General Issues.The Layered Approach to Database Implementation.The
Relational Model.Object-Oriented Databases.Maintaining Database
Integrity.Social Impact of Database Technology.
IV. THE POTENTIAL OF ALGORITHMIC MACHINES.
10. Artificial Intelligence.
Intelligence and Machines.Understanding Images.Reasoning.Control
System Activities.Using Heuristics.Artificial Neural
Networks.Genetic Algorithms.Applications of Artificial
Intelligence.Considering the Consequences.
11. Theory of
Computation.
A Bare Bones Programming Language.Turing Machines.Computable
Functions.A Noncomputable Function.Complexity of Problems.Public
Key Cryptography.
APPENDICES.
ASCII.Circuits to Manipulate Two's Complement Representations.A
Simple Machine Language.Program Examples.The Equivalence of
Iterative and Recursive Structures.Answers to Questions/Exercises.
About the Author
J. Glenn Brookshear is an Associate Professor at
Marquette University. He received his Ph.D. from New Mexico State
University in 1975, then was hired by Marquette to build a strong
Computer Science curriculum. In addition to his highly successful
Computer Science: An Overview, Brookshear has authored
Theory of Computation: Formal Languages, Automata, and
Complexity, also published by Addison-Wesley.