J.Glenn Brooksherar,是世界知名的計算機科學教育家。他在1975年獲得新墨西哥州立大學博士學位后,創(chuàng)立了Marquette大學的計算機科學學位項目,并在該校任教至今。他的主要研究方向是計算理論。除了本書之外,他還著有Theory of Computation:Forma/Languages,Automata,and Complexity。
圖書目錄
Chapter 0 Introduction 1 0.1 The Role of Algorithms 2 0.2 The Origins of Computing Machines 5 0.3 The Science of Algorithms 10 0.4 Abstraction 11 0.5 An Outline of Our Study 12 0.6 Social Repercussions 14 Chapter 1 Data Storage 19 1.1 Bits and Their Storage 20 1.2 Main Memory 27 1.3 Mass Storage 30 1.4 Representing Information as Bit Patterns 38 *1.5 The Binary System 45 *1.6 Storing Integers 50 *1.7 Storing Fractions 58 *1.8 Data Compression 62 *1.9 Communication Errors 68 Chapter 2 Data Manipulation 81 2.1 Computer Architecture 82 2.2 Machine Language 85 2.3 Program Execution 92 *2.4 Arithmetic/Logic Instructions 100 *2.5 Communicating with Other Devices 105 *2.6 Other Architectures 110 Chapter 3 Operating Systems 121 3.1 The History of Operating Systems 122 3.2 Operating System Architecture 126 3.3 Coordinating the Machines Activities 134 *3.4 Handling Competition Among Processes 138 3.5 Security 143 Chapter 4 Networking and the Internet 151 4.1 Network Fundamentals 152 4.2 The Internet 162 4.3 The World Wide Web 171 *4.4 Internet Protocols 181 4.5 Security 188 Chapter 5 Algorithms 203 5.1 The Concept of an Algorithm 204 5.2 Algorithm Representation 207 5.3 Algorithm Discovery 215 5.4 Iterative Structures 222 5.5 Recursive Structures 233 5.6 Efficiency and Correctness 242 Chapter 6 Programming Languages 261 6.1 Historical Perspective 262 6.2 Traditional Programming Concepts 271 6.3 Procedural Units 284 6.4 Language Implementation 292 6.5 Object-Oriented Programming 301 *6.6 Programming Concurrent Activities 309 *6.7 Declarative Programming 311 Chapter 7 Software Engineering 325 7.1 The Software Engineering Discipline 326 7.2 The Software Life Cycle 329 7.3 Software Engineering Methodologies 334 7.4 Modularity 336 7.5 Tools of the Trade 345 7.6 Quality Assurance 353 7.7 Documentation 357 7.8 The Human-Machine Interface 359 7.9 Software Ownership and Liability 362 Chapter 8 Data Abstractions 371 8.1 Basic Data Structure 372 8.2 Related Concepts 376 8.3 Implementing Data Structures 378 8.4 A Short Case Study 395 8.5 Customized Data Types 401 *8.6 Classes and Objects 404 *8.7 Pointers in Machine Language 406 Chapter 9 Database Systems 417 9.1 Database Fundamentals 418 9.2 The Relational Model 423 *9.3 Object-Oriented Databases 436 *9.4 Maintaining Database Integrity 439 *9.5 Traditional File Structures 443 9.6 Data Mining 452 9.7 Social Impact of Database Technology 454 Chapter 10 Computer Graphics 463 10.1 The Scope of Computer Graphics 464 10.2 Overview of 3D Graphics 466 10.3 Modeling 469 10.4 Rendering 478 *10.5 Dealing with Global Lighting 490 10.6 Animation 493 Chapter 11 Artificial Intelligence 503 11.1 Intelligence and Machines 504 11.2 Perception 509 11.3 Reasoning 515 11.4 Additional Areas of Research 528 11.5 Artificial Neural Networks 533 11.6 Robotics 542 11.7 Considering the Consequences 545 Chapter 12 Theory of Computation 555 12.1 Functions and Their Computation 556 12.2 Turing Machines 558 12.3 Universal Programming Languages 563 12.4 A Noncomputable Function 569 12.5 Complexity of Problems 575 *12.6 Public-Key Cryptography 585 Appendixes 595 A ASCII 597 B Circuits to Manipulate Twos Complement Representations 598 C A Simple Machine Language 601 D High-Level Programming Languages 604 E The Equivalence of Iterative and Recursive Structures 607 F Answers to Questions & Exercises 609 Index 655