0% found this document useful (1 vote)
2K views

Invitation To Computer Science 8th Edition PDF

Invitation to Computer Science 8th Edition

Uploaded by

jejoteg540
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
2K views

Invitation To Computer Science 8th Edition PDF

Invitation to Computer Science 8th Edition

Uploaded by

jejoteg540
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Find The Original Textbook (PDF) in The Link Below

CLICK HERE
CONTENT

Chapter 1 An Introduction to Computer Science 2


1.1 Introduction 2
Special Interest Box: In the Beginning ... 5
1.2 The Definition of Computer Science 6
Special Interest Box: Abu Ja’far Muhammad ibn
Musa Al-Khwarizmi (AD 780–850?) 10
1.3 Algorithms 12
1.3.1 The Formal Definition of an Algorithm 12
1.3.2 The Importance of Algorithmic
Problem Solving 17
Practice Problems 18
1.4 A Brief History of Computing 18
1.4.1 The Early Period: Up to 1940 18
Special Interest Box: The Original “Technophobia” 22
Special Interest Box: Charles Babbage (1791–1871)
Ada Augusta Byron, Countess of Lovelace (1815–
1852) 24
1.4.2 The Birth of Computers: 1940–1950 24
Special Interest Box: John Von Neumann (1903–1957)
28
1.4.3 The Modern Era: 1950 to the Present 28
Special Interest Box: And the Verdict Is ... 29
Special Interest Box: The World’s First Microcomputer
31
1.5 Organization of the Text 34
Laboratory Experience 1 38
EXERCISES 39
CHALLENGE WORK 41
LEVEL 1 The Algorithmic Foundations
of Computer Science 42
Chapter 2 Algorithm Discovery and Design 44
2.1 Introduction 44
2.2 Representing Algorithms 44
2.2.1 Pseudocode 44
2.2.2 Sequential Operations 48
2.2.3 Conditional and Iterative Operations 50
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
viii Contents
Practice Problems 51
Special Interest Box: From Little Primitives Mighty
Algorithms Grow 60
2.3 Examples of Algorithmic Problem Solving 60
2.3.1 Example 1: Go Forth and Multiply 60
Practice Problems 61
Practice Problems 64
2.3.2 Example 2: Looking, Looking,
Looking 65
Laboratory Experience 2 70
2.3.3 Example 3: Big, Bigger, Biggest 70
Practice Problems 76
Laboratory Experience 3 76
2.3.4 Example 4: Meeting Your Match 77
Special Interest Box: Hidden Figures 84
2.4 Conclusion 84
Practice Problems 85
EXERCISES 86
CHALLENGE WORK 89
Chapter 3 The Efficiency of Algorithms 92
3.1 Introduction 92
3.2 Attributes of Algorithms 92
Practice Problems 97
3.3 Measuring Efficiency 97
3.3.1 Sequential Search 97
3.3.2 Order of Magnitude—Order n 100
Special Interest Box: Flipping Pancakes 102
3.3.3 Selection Sort 102
Practice Problem 103
Practice Problems 109
3.3.4 Order of Magnitude—Order n2
109
Special Interest Box: The Tortoise and the Hare 113
Laboratory Experience 4 114
Practice Problem 115
3.4 Analysis of Algorithms 115
3.4.1 Data Cleanup Algorithms 115
3.4.2 Binary Search 123
Practice Problems 123
Practice Problems 129
Laboratory Experience 5 130
3.4.3 Pattern Matching 130
3.4.4 Summary 131
Practice Problem 132
3.5 When Things Get Out of Hand 132
Practice Problems 137
3.6 Summary of Level 1 137
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
Contents ix
Laboratory Experience 6 138
EXERCISES 139
CHALLENGE WORK 149
LEVEL 2 The Hardware World 150
Chapter 4 The Building Blocks: Binary Numbers,
Boolean
Logic, and Gates 152
4.1 Introduction 152
4.2 The Binary Numbering System 153
4.2.1 Binary Representation of Numeric and
Textual Information 153
Special Interest Box: A Not So Basic Base 158
Practice Problems 166
4.2.2 Binary Representation of Sound
and Images 167
Practice Problems 175
4.2.3 The Reliability of Binary
Representation 176
4.2.4 Binary Storage Devices 177
Special Interest Box: Moore’s Law and the Limits
of Chip Design 182
4.3 Boolean Logic and Gates 183
4.3.1 Boolean Logic 183
Practice Problems 187
4.3.2 Gates 188
Special Interest Box: George Boole (1815–1864) 192
4.4 Building Computer Circuits 193
4.4.1 Introduction 193
4.4.2 A Circuit Construction Algorithm 195
Practice Problems 199
4.4.3 Examples of Circuit Design and
Construction 200
Laboratory Experience 7 200
Laboratory Experience 8 208
Practice Problems 209
Special Interest Box: Dr. William Shockley
(1910–1989) 209
4.5 Control Circuits 211
4.6 Conclusion 215
EXERCISES 217
CHALLENGE WORK 220
Chapter 5 Computer Systems Organization 222
5.1 Introduction 222
5.2 The Components of a Computer System 225
5.2.1 Memory and Cache 227
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
x Contents
Special Interest Box: Powers of 10 230
5.2.2 Input/Output and Mass Storage 238
Practice Problems 239
Practice Problems 244
5.2.3 The Arithmetic/Logic Unit 245
5.2.4 The Control Unit 249
Practice Problems 256
5.3 Putting the Pieces Together—the Von Neumann
Architecture 258
Special Interest Box: An Alphabet Soup of Speed
Measures: MHz, GHz, MIPS, and GFLOPS 264
Laboratory Experience 9 265
5.4 Non–Von Neumann Architectures 265
Special Interest Box: Speed to Burn 269
5.5 Summary of Level 2 271
Special Interest Box: Quantum Computing 272
EXERCISES 273
CHALLENGE WORK 276
LEVEL 3 The Virtual Machine 278
Chapter 6 An Introduction to System Software and
Virtual Machines 280
6.1 Introduction 280
6.2 System Software 282
6.2.1 The Virtual Machine 282
6.2.2 Types of System Software 284
6.3 Assemblers and Assembly Language 286
6.3.1 Assembly Language 286
Practice Problems 294
6.3.2 Examples of Assembly Language
Code 295
Practice Problems 299
Laboratory Experience 10 300
6.3.3 Translation and Loading 300
Practice Problems 307
6.4 Operating Systems 308
6.4.1 Functions of an Operating System 308
Special Interest Box: A Machine for the Rest of Us 311
Practice Problems 315
6.4.2 Historical Overview of Operating Systems
Development 318
Special Interest Box: Now That’s Big! 320
6.4.3 The Future 327
Special Interest Box: Gesture-Based Computing 330
EXERCISES 331
Challenge Work 334
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
Contents xi
Chapter 7 Computer Networks and Cloud
Computing 336
7.1 Introduction 336
7.2 Basic Networking Concepts 338
7.2.1 Communication Links 338
Special Interest Box: The Internet of Things 345
Practice Problems 346
7.2.2 Local Area Networks 346
Practice Problems 349
7.2.3 Wide Area Networks 349
7.2.4 Overall Structure of the Internet 351
Special Interest Box: Firewalls 354
7.3 Communication Protocols 356
7.3.1 Physical Layer 357
7.3.2 Data Link Layer 358
Practice Problems 362
7.3.3 Network Layer 363
Special Interest Box: I Can’t Believe We’ve Run Out
364
7.3.4 Transport Layer 366
Practice Problems 367
7.3.5 Application Layer 371
7.4 Network Services and Benefits 374
Laboratory Experience 11 375
7.4.1 Interpersonal Communications 375
7.4.2 Social Networking 376
7.4.3 Resource Sharing 376
7.4.4 Electronic Commerce 378
7.5 Cloud Computing 379
7.6 A History of the Internet and the World Wide
Web 382
7.6.1 The Internet 382
7.6.2 The World Wide Web 387
Special Interest Box: Geography Lesson 388
Special Interest Box: Net Neutrality 389
7.7 Conclusion 390
EXERCISES 390
CHALLENGE WORK 393
Chapter 8 Information Security 394
8.1 Introduction 394
8.2 Threats and Defenses 395
8.2.1 Authentication and Authorization 396
Special Interest Box: The Metamorphosis of Hacking
397
Practice Problems 401
8.2.2 Threats from the Network 402
Special Interest Box: Beware the Trojan Horse 403
Special Interest Box: Your Money or Your Files 404
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
xii Contents
Special Interest Box: Defense against the Dark Arts
406
Practice Problem 407
8.2.3 White Hats vs. Black Hats 407
8.3 Encryption 407
Special Interest Box: You’ve Been Hacked 408
8.3.1 Encryption Overview 409
8.3.2 Simple Encryption Algorithms 410
Practice Problems 412
Laboratory Experience 12 413
8.3.3 DES 413
Special Interest Box: Hiding in Plain Sight 413
8.3.4 Public-Key Systems 417
Special Interest Box: Quantum Computing vs. RSA 419
Practice Problem 419
8.4 Web Transmission Security 420
8.5 Embedded Computing 422
Special Interest Box: Mischief-Makers in the Internet
of Things 425
8.6 Conclusion 425
8.7 Summary of Level 3 426
EXERCISES 427
CHALLENGE WORK 429
LEVEL 4 The Software World 432
Chapter 9 Introduction to High-Level Language
Programming 434
9.1 The Language Progression 434
9.1.1 Where Do We Stand and What Do We
Want? 435
9.1.2 Getting Back to Binary 438
9.2 A Family of Languages 439
Special Interest Box: Ada, C11, C#, Java,
and Python Online Chapters 439
9.3 Two Examples in Five-Part Harmony 440
9.3.1 Favorite Number 440
9.3.2 Data Cleanup (Again) 444
9.4 Feature Analysis 454
9.5 Meeting Expectations 454
9.6 The Big Picture: Software Engineering 463
9.6.1 Scaling Up 464
9.6.2 The Software Development Life Cycle 464
Special Interest Box: Vital Statistics for Real Code 466
9.6.3 Modern Environments 472
9.6.4 Agile Software Development 474
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
Contents xiii
Special Interest Box: Software Engineering Failures
475
9.7 Conclusion 476
EXERCISES 477
CHALLENGE WORK 477
Online Chapters
This text includes five language-specific online-only
downloadable
chapters on Ada, C++, C#, Java, and Python, available
on the com-
panion site for this text (www.cengage.com) and in
MindTap.
Chapter 10 The Tower of Babel: Programming
Languages 480
10.1 Why Babel? 480
10.2 Procedural Languages 482
10.2.1 Plankalkül 482
10.2.2 Fortran 483
10.2.3 COBOL 484
Special Interest Box: Old Dog, New Tricks #1 485
Practice Problems 486
Practice Problem 487
Special Interest Box: Uncle Sam Wants Who? 487
10.2.4 C/C11 488
Practice Problems 492
10.2.5 Ada 492
Practice Problem 493
10.2.6 Java 494
Practice Problem 496
10.2.7 Python 496
10.2.8 C# and .NET 497
Practice Problem 497
Special Interest Box: The “Popularity” Contest 498
Special Interest Box: Old Dog, New Tricks #2 500
Practice Problem 501
10.3 Special-Purpose Languages 501
10.3.1 SQL 501
10.3.2 HTML 502
Laboratory Experience 13 505
10.3.3 JavaScript 505
Special Interest Box: Beyond HTML 506
Special Interest Box: PHP 509
Practice Problems 509
10.3.4 R 510
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
xiv Contents
10.4 Alternative Programming Paradigms 513
10.4.1 Functional Programming 513
Special Interest Box: It’s All in How You
Look, Look, Look, . . . at It 518
Practice Problems 519
Laboratory Experience 14 520
10.4.2 Logic Programming 520
Practice Problems 525
10.4.3 Parallel Programming 526
Special Interest Box: New Dogs, New Tricks 531
Practice Problems 532
10.5 New Languages Keep Coming 532
10.5.1 Go 532
Special Interest Box: Go is Going Places 533
10.5.2 Swift 534
10.5.3 Milk 535
10.6 Conclusion 535
EXERCISES 537
Challenge Work 540
Chapter 11 Compilers and Language Translation 542
11.1 Introduction 542
11.2 The Compilation Process 545
11.2.1 Phase I: Lexical Analysis 546
11.2.2 Phase II: Parsing 550
Practice Problems 550
Practice Problems 556
Practice Problems 567
11.2.3 Phase III: Semantics and Code
Generation 568
Practice Problem 577
11.2.4 Phase IV: Code Optimization 577
Laboratory Experience 15 577
Special Interest Box: “Now I Understand,”
Said the Machine 582
11.3 Conclusion 583
EXERCISES 584
CHALLENGE WORK 587
Chapter 12 Models of Computation 588
12.1 Introduction 588
12.2 What Is a Model? 589
12.3 A Model of a Computing Agent 591
12.3.1 Properties of a Computing Agent 591
Practice Problems 592
12.3.2 The Turing Machine 593
Special Interest Box: Alan Turing, Brilliant Eccentric
593
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
Contents xv
Practice Problems 600
12.4 A Model of an Algorithm 602
12.5 Turing Machine Examples 604
12.5.1 A Bit Inverter 605
Practice Problems 607
12.5.2 A Parity Bit Machine 607
12.5.3 Machines for Unary Incrementing 610
Practice Problem 610
12.5.4 A Unary Addition Machine 614
Practice Problems 616
Laboratory Experience 16 616
12.6 The Church–Turing Thesis 617
Special Interest Box: The Turing Award 618
12.7 Unsolvable Problems 621
Special Interest Box: Couldn’t Do, Can’t Do, Never
Will Be Able to . . . 626
Practice Problems 626
Laboratory Experience 17 627
12.8 Conclusion 627
12.9 Summary of Level 4 628
EXERCISES 629
CHALLENGE WORK 633
LEVEL 5 Applications 636
Chapter 13 Simulation and Modeling 638
13.1 Introduction 638
13.2 Computational Modeling 639
13.2.1 Introduction to Systems and Models 639
13.2.2 Computational Models, Accuracy,
and Errors 642
13.2.3 An Example of Model Building 644
Practice Problems 653
Laboratory Experience 18 654
13.3 Running the Model and Visualizing Results 654
13.4 Conclusion 664
Special Interest Box: The Mother of All
Computations! 664
EXERCISES 665
CHALLENGE WORK 667
Chapter 14 Ecommerce, Databases, and Data
Science 670
14.1 Introduction 670
14.2 Ecommerce 671
Special Interest Box: Shopping on the Web 672
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
xvi Contents
14.2.1 Decisions, Decisions 673
14.2.2 Anatomy of a Transaction 675
Special Interest Box: A Rose by Any Other Name. . .
677
14.2.3 Designing Your Website 680
Special Interest Box: Less Is More 682
14.2.4 Behind the Scenes 682
Practice Problems 683
14.2.5 Other Ecommerce Models 683
14.2.6 Electronic Payment Systems 685
Special Interest Box: Blockchain: A New Revolution?
687
14.3 Databases 688
14.3.1 Data Organization 688
14.3.2 Database Management Systems 690
14.3.3 Other Considerations 696
Special Interest Box: SQL, NoSQL, NewSQL 697
Practice Problems 698
Laboratory Experience 19 699
14.4 Data Science 699
14.4.1 Tools 700
Special Interest Box: Algorithm Bias 703
Practice Problem 704
14.4.2 Personal Privacy 704
Special Interest Box: What Your Smartphone
Photo Knows 705
14.4.3 For the Greater Good 706
14.5 Conclusion 707
EXERCISES 708
CHALLENGE WORK 711
Chapter 15 Artificial Intelligence 712
15.1 Introduction 712
Special Interest Box: Victory in the Turing Test? 714
15.2 A Division of Labor 715
Special Interest Box: Predicted AI Milestones 718
15.3 Knowledge Representation 718
Practice Problems 722
15.4 Recognition Tasks 723
Special Interest Box: Brain on a Chip 728
Laboratory Experience 20 729
Practice Problems 730
15.5 Reasoning Tasks 730
15.5.1 Intelligent Searching 730
15.5.2 Swarm Intelligence 733
Special Interest Box: Robot Swarms 734
15.5.3 Intelligent Agents 734
15.5.4 Expert Systems 736
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
Contents xvii
Practice Problems 739
15.5.5 The Games We Play 739
15.6 Robots and Drones 744
15.6.1 Robots 744
Special Interest Box: Wait—Where Am I? 746
15.6.2 Drones 749
15.7 Conclusion 751
EXERCISES 752
CHALLENGE WORK 754
Chapter 16 Computer Graphics and Entertainment:
Movies,
Games, and Virtual Communities 758
16.1 Introduction 758
16.2 Computer-Generated Imagery (CGI) 761
16.2.1 Introduction to CGI 761
Special Interest Box: Computer Horsepower 763
16.2.2 How It’s Done: The Graphics
Pipeline 763
16.2.3 Object Modeling 764
16.2.4 Object Motion 767
Practice Problem 768
Practice Problem 772
16.2.5 Rendering and Display 772
16.2.6 The Future of CGI 775
16.3 Video Gaming 776
Special Interest Box: The Good, the Bad, and
the Ugly 780
16.4 Multiplayer Games and Virtual Communities 781
16.5 Conclusion 783
Special Interest Box: The Computer Will See You
Now 784
16.6 Summary of Level 5 785
Exercises 786
Challenge Work 788
LEVEL 6 Social Issues in Computing 790
Chapter 17 Making Decisions about Computers,
Information, and Society 792
17.1 Introduction 792
17.2 Case Studies 793
17.2.1 Case 1: Is It Sharing or Stealing? 793
Special Interest Box: Death of a Dinosaur 797
Practice Problems 800
Special Interest Box: The Sound of Music 801
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. Due to electronic rights, some third
party content may be suppressed from the eBook
and/or eChapter(s).
Editorial review has deemed that any suppressed
content does not materially affect the overall learning
experience. Cengage Learning reserves the right to
remove additional content at any time if subsequent
rights restrictions require it.
Copyright 2019 Cengage Learning. All Rights
Reserved. May not be copied, scanned, or duplicated,
in whole or in part. WCN 02-200-202
xviii Contents
17.2.2 Case 2: Legalized Snooping—Privacy vs.
Security 801
Special Interest Box: Hero or Traitor? 803
Practice Problems 809
17.2.3 Case 3: Hackers—Public Enemies
or Gadflies? 809
Practice Problems 815
17.2.4 Case 4: Genetic Information
and Medical Research 815
Special Interest Box: Professional Codes of Conduct
821
17.3 Personal Privacy and Social Media 822
Practice Problems 826
17.4 Fake News, Politics, and Social Media 827
17.5 Conclusion 830
17.6 Summary of Level 6 830
EXERCISES 831
Answers to Practice Problems 833
Index 877

Find The Original Textbook (PDF) in The Link Below

CLICK HERE

You might also like