Abbey's Bookshop Logo
Go to my checkout basket
Login to Abbey's Bookshop
Register with Abbey's Bookshop
Gift Vouchers
Browse by Category

facebook
Google Book Preview
Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security...
— —
Brian W. Kernighan
Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security by Brian W. Kernighan at Abbey's Bookshop,

Understanding the Digital World: What You Need to Know about Computers, the Internet, Privacy, and Security

Brian W. Kernighan


9780691176543

Princeton University Pres


Network programming;
Computer security;
Network security;
Computer science


Hardback

256 pages

$52.99
We can order this in for you
How long will it take?
order qty:  
Add this item to my basket

Computers are everywhere. Some of them are highly visible, in laptops, tablets, cell phones, and smart watches. But most are invisible, like those in appliances, cars, medical equipment, transportation systems, power grids, and weapons. We never see the myriad computers that quietly collect, share, and sometimes leak vast amounts of personal data about us. Through computers, governments and companies increasingly monitor what we do. Social networks and advertisers know far more about us than we should be comfortable with, using information we freely give them. Criminals have all-too-easy access to our data. Do we truly understand the power of computers in our world? 

Understanding the Digital World explains how computer hardware, software, networks, and systems work. Topics include how computers are built and how they compute; what programming is and why it is difficult; how the Internet and the web operate; and how all of these affect our security, privacy, property, and other important social, political, and economic issues. This book also touches on fundamental ideas from computer science and some of the inherent limitations of computers.  It includes numerous color illustrations, notes on sources for further exploration, and a glossary to explain technical terms and buzzwords. 

Understanding the Digital World is a must-read for all who want to know more about computers and communications. It explains, precisely and carefully, not only how they operate but also how they influence our daily lives, in terms anyone can understand, no matter what their experience and knowledge of technology.

By:   Brian W. Kernighan
Imprint:   Princeton University Pres
Country of Publication:   United States
Dimensions:   Height: 254mm,  Width: 178mm,  Spine: 23mm
Weight:   907g
ISBN:   9780691176543
ISBN 10:   069117654X
Pages:   256
Publication Date:   December 2016
Audience:   General/trade ,  College/higher education ,  ELT Advanced ,  Primary
Format:   Hardback
Publisher's Status:   Unspecified

Preface xi Introduction 1 Part I: Hardware 7 1. What's in a Computer? 11 1.1 Logical Construction 13 1.1.1 CPU 13 1.1.2 RAM 14 1.1.3 Disks and other secondary storage 15 1.1.4 Et cetera 17 1.2 Physical Construction 17 1.3 Moore's Law 21 1.4 Summary 22 2. Bits, Bytes, and Representation of Information 23 2.1 Analog versus Digital 23 2.2 Analog-Digital Conversion 25 2.3 Bits, Bytes, and Binary 30 2.3.1 Bits 30 2.3.2 Powers of two and powers of ten 31 2.3.3 Binary numbers 32 2.3.4 Bytes 34 2.4 Summary 36 3. Inside the CPU 37 3.1 The Toy Computer 38 3.1.1 The first Toy program 38 3.1.2 The second Toy program 40 3.1.3 Branch instructions 41 3.1.4 Representation in RAM 43 3.2 Real CPUs 43 3.3 Caching 46 3.4 Other Kinds of Computers 47 3.5 Summary 49 Wrapup on Hardware 51 Part II: Software 53 4. Algorithms 55 4.1 Linear Algorithms 56 4.2 Binary Search 58 4.3 Sorting 59 4.4 Hard Problems and Complexity 63 4.5 Summary 65 5. Programming and Programming Languages 67 5.1 Assembly Language 68 5.2 High-Level Languages 69 5.3 Software Development 75 5.3.1 Libraries, interfaces, and development kits 76 5.3.2 Bugs 77 5.4 Intellectual Property 79 5.4.1 Trade secret 80 5.4.2 Copyright 80 5.4.3 Patents 81 5.4.4 Licenses 82 5.5 Standards 84 5.6 Open Source 84 5.7 Summary 86 6. Software Systems 87 6.1 Operating Systems 88 6.2 How an Operating System Works 92 6.2.1 System calls 93 6.2.2 Device drivers 93 6.3 Other Operating Systems 94 6.4 File Systems 95 6.4.1 Disk file systems 96 6.4.2 Removing files 98 6.4.3 Other file systems 99 6.5 Applications 100 6.6 Layers of Software 102 6.7 Summary 104 7. Learning to Program 105 7.1 Programming Language Concepts 106 7.2 A First JavaScript Example 107 7.3 A Second JavaScript Example 107 7.4 Loops 110 7.5 Conditionals 111 7.6 Libraries and Interfaces 112 7.7 How JavaScript Works 114 7.8 Summary 114 Wrapup on Software 117 Part III: Communications 119 8. Networks 125 8.1 Telephones and Modems 126 8.2 Cable and DSL 126 8.3 Local Area Networks and Ethernet 128 8.4 Wireless 130 8.5 Cell Phones 131 8.6 Bandwidth 135 8.7 Compression 135 8.8 Error Detection and Correction 137 8.9 Summary 139 9. The Internet 141 9.1 An Internet Overview 142 9.2 Domain Names and Addresses 145 9.2.1 Domain Name System 145 9.2.2 IP addresses 146 9.2.3 Root servers 147 9.2.4 Registering your own domain 148 9.3 Routing 148 9.4 TCP/IP Protocols 150 9.4.1 IP, the Internet Protocol 151 9.4.2 TCP, the Transmission Control Protocol 152 9.5 Higher-Level Protocols 153 9.5.1 Telnet and SSH: remote login 154 9.5.2 SMTP: Simple Mail Transfer Protocol 154 9.5.3 File sharing and peer-to-peer protocols 156 9.6 Copyright on the Internet 157 9.7 The Internet of Things 159 9.8 Summary 159 10. The World Wide Web 163 10.1 How the Web Works 164 10.2 HTML 165 10.3 Cookies 167 10.4 Active Content in Web Pages 168 10.5 Active Content Elsewhere 170 10.6 Viruses, Worms and Trojan Horses 171 10.7 Web Security 173 10.7.1 Attacks on clients 174 10.7.2 Attacks on servers 177 10.7.3 Attacks on information in transit 179 10.8 Defending Yourself 179 10.9 Summary 181 11. Data and Information 183 11.1 Search 184 11.2 Tracking 188 11.3 Social Networks 193 11.4 Data Mining and Aggregation 195 11.5 Cloud Computing 197 11.6 Summary 202 12. Privacy and Security 203 12.1 Cryptography 204 12.1.1 Secret-key cryptography 205 12.1.2 Public-key cryptography 206 12.2 Anonymity 210 12.2.1 Tor and the Tor Browser 211 12.2.2 Bitcoin 213 12.3 Summary 215 13. Wrapping Up 217 Notes 221 Glossary 227 Index 233

Brian W. Kernighan is a professor in the Department of Computer Science at Princeton University. He is the coauthor of ten other books, including the computing classic The C Programming Language (Prentice Hall). He lives in Princeton, New Jersey.


[Kernighan's] credentials as a computer scientist are stellar but what comes through in this book is a humanitarian concern about the place of technology in the modern world... The grounding [the book] provides in the fundamentals of computing and how the technology interacts with our lives will remain relevant for a very long time. --Steve Mansfield-Devine, Network Security

My Shopping Basket
Your cart does not contain any items.