You are previewing Introduction to Computer Science, 2nd Edition.
O'Reilly logo
Introduction to Computer Science, 2nd Edition

Book Description

The second edition of Introduction to Computer Science furthers the first edition by including discussions on the recent topics. Few of the newly added topics are: blue-ray disk, USB drive, virtual reality etc. Inclusion of large number of practice question makes the book very useful for students.

Table of Contents

  1. Cover
  2. Title Page
  3. Brief Contents
  4. Contents
  5. Preface
  6. 1. Introduction to Computers
    1. 1.1 Introduction
    2. 1.2 Characteristics of Computers
    3. 1.3 Evolution of Computers
      1. 1.3.1 Sand Tables
      2. 1.3.2 Abacus
      3. 1.3.3 Napier Bones
      4. 1.3.4 Slide Rule
      5. 1.3.5 Pascaline
      6. 1.3.6 Stepped Reckoner
      7. 1.3.7 Punch Card System
      8. 1.3.8 Difference Engine
      9. 1.3.9 Analytical Engine
      10. 1.3.10 Hollerith's Tabulator
      11. 1.3.11 Other Developments
      12. 1.3.12 Some Early Computers
    4. 1.4 Generations of Computers
      1. 1.4.1 First Generation (1940–56)—Vacuum Tubes
      2. 1.4.2 Second Generation (1956–63)—Transistors
      3. 1.4.3 Third Generation (1964–Early 1970s)—Integrated Circuits
      4. 1.4.4 Fourth Generation (Early 1970s–Till Date)—Microprocessors
      5. 1.4.5 Fifth Generation (Present and Beyond)—Artificial Intelligence
    5. 1.5 Classification of Computers
      1. 1.5.1 Classification According to Purpose
      2. 1.5.2 Classification According to Type of Data-handling Techniques
      3. 1.5.3 Classification According to Functionality
    6. 1.6 The Computer System
      1. 1.6.1 Components of a Computer System
    7. 1.7 Applications of Computers
    8. Let Us Summarize
    9. Exercises
    10. Answers
  7. 2. Number Systems and Logic Gates
    1. 2.1 Introduction
    2. 2.2 Number Systems
      1. 2.2.1 Base (or Radix) of System
      2. 2.2.2 Types of Number System
    3. 2.3 Conversion between Number Bases
      1. 2.3.1 Conversion of Decimal to Binary
      2. 2.3.2 Conversion of Decimal Fractions to Binary Fractions
      3. 2.3.3 Conversion of Binary to Decimal
      4. 2.3.4 Conversion of Binary Fractions to Decimal Fractions
      5. 2.3.5 Conversion of Decimal to Octal
      6. 2.3.6 Conversion of Decimal Fractions to Octal Fractions
      7. 2.3.7 Conversion of Octal to Decimal
      8. 2.3.8 Conversion of Octal Fractions to Decimal Fractions
      9. 2.3.9 Conversion of Binary to Octal
      10. 2.3.10 Conversion of Binary Fractions to Octal Fractions
      11. 2.3.11 Conversion of Octal to Binary
      12. 2.3.12 Conversion of Octal Fractions to Binary Fractions
      13. 2.3.13 Conversion of Decimal to Hexadecimal
      14. 2.3.14 Conversion of Decimal Fractions to Hexadecimal Fractions
      15. 2.3.15 Conversion of Hexadecimal to Decimal
      16. 2.3.16 Conversion of Hexadecimal Fractions to Decimal Fractions
      17. 2.3.17 Conversion of Binary to Hexadecimal
      18. 2.3.18 Conversion of Binary Fractions to Hexadecimal Fractions
      19. 2.3.19 Conversion of Hexadecimal to Binary
      20. 2.3.20 Conversion of Hexadecimal Fractions to Binary Fractions
      21. 2.3.21 Conversion of Octal to Hexadecimal
      22. 2.3.22 Conversion of Octal Fractions to Hexadecimal Fractions
      23. 2.3.23 Conversion of Hexadecimal to Octal
      24. 2.3.24 Conversion of Hexadecimal Fractions to Octal Fractions
    4. 2.4 Arithmetic System
      1. 2.4.1 Binary Arithmetic
      2. 2.4.2 Octal Arithmetic
      3. 2.4.3 Hexadecimal Arithmetic
    5. 2.5 Signed and Unsigned Numbers
      1. 2.5.1 Complements
      2. 2.5.2 Addition—Subtraction of Signed Numbers Using 2s Complement Addition
    6. 2.6 Concept of Overflow
    7. 2.7 Binary Coding
      1. 2.7.1 BCD
      2. 2.7.2 ASCII
      3. 2.7.3 EBCDIC
    8. 2.8 Logic Gates
      1. 2.8.1 Basic Logic Gates
      2. 2.8.2 Logic Operations
    9. 2.9 Boolean Algebra
      1. 2.9.1 Laws of Boolean Algebra
      2. 2.9.2 Rules of Boolean Algebra
      3. 2.9.3 Boolean Functions
    10. 2.10 Combination of Logic Gates
      1. 2.10.1 NAND Gate
      2. 2.10.2 NOR Gate
      3. 2.10.3 Exclusive-OR (XOR) and Exclusive-NOR (XNOR) Gate
    11. Let Us Summarize
    12. Exercises
    13. Answers
  8. 3. Computer Architecture
    1. 3.1 Introduction
    2. 3.2 Central Processing Unit
      1. 3.2.1 Arithmetic/Logic Unit
      2. 3.2.2 Registers
      3. 3.2.3 Control Unit
    3. 3.3 Main Memory Unit
      1. 3.3.1 Random Access Memory
      2. 3.3.2 Read-only Memory
    4. 3.4 Interconnection of Units
      1. 3.4.1 System Bus
    5. 3.5 Cache
    6. 3.6 Communication between Various Units of a Computer System
      1. 3.6.1 Processor to Memory Communication
      2. 3.6.2 Processor to I/O Devices Communication
    7. 3.7 The Instruction Format
      1. 3.7.1 The Instruction Cycle
    8. 3.8 Instruction Set
      1. 3.8.1 CISC Architecture
      2. 3.8.2 RISC Architecture
      3. 3.8.3 Comparing CISC and RISC Architectures
    9. 3.9 Processor Speed
    10. 3.10 Multiprocessor Systems
    11. Let Us Summarize
    12. Exercises
    13. Answers
  9. 4. Primary Memory
    1. 4.1 Introduction
    2. 4.2 Memory Representation
    3. 4.3 Memory Hierarchy
      1. 4.3.1 Storage Evaluation Criteria
    4. 4.4 Random Access Memory
      1. 4.4.1 Measuring RAM's Effectiveness
      2. 4.4.2 Size of RAM
      3. 4.4.3 Main Memory Organization
    5. 4.5 Types of RAM
      1. 4.5.1 Static RAM
      2. 4.5.2 Dynamic RAM
    6. 4.6 Read-only Memory
      1. 4.6.1 ROM Analogy
      2. 4.6.2 RAM, ROM and CPU Interaction
    7. 4.7 Types of ROM
    8. Let Us Summarize
    9. Exercises
    10. Answers
  10. 5. Secondary Storage
    1. 5.1 Introduction
      1. 5.1.1 Need of Secondary Storage
      2. 5.1.2 Benefits of Secondary Storage
    2. 5.2 Classification of Secondary Storage Devices
    3. 5.3 Magnetic Tape
      1. 5.3.1 Magnetic Tape Organization
      2. 5.3.2 Advantages of Magnetic Tapes
      3. 5.3.3 Disadvantages of Magnetic Tapes
    4. 5.4 Magnetic Disk
      1. 5.4.1 Storage Organization of a Magnetic Disk
      2. 5.4.2 Storage Capacity of a Magnetic Disk
      3. 5.4.3 Accessing Data from a Magnetic Disk
      4. 5.4.4 Types of Magnetic Disk
      5. 5.4.5 Advantages of Magnetic Disks
      6. 5.4.6 Disadvantages of Magnetic Disks
    5. 5.5 Optical Disk
      1. 5.5.1 Storage Organization of an Optical Disk
      2. 5.5.2 Storage Capacity of an Optical Disk
      3. 5.5.3 Types of Optical Disks
      4. 5.5.4 Advantages of Optical Disks
      5. 5.5.5 Disadvantages of Optical Disks
    6. 5.6 Magneto-optical Disk
    7. 5.7 Memory Stick
    8. 5.8 Universal Serial Bus
      1. 5.8.1 Pen Drive
      2. 5.8.2 External Hard Disk Drive
    9. 5.9 Mass Storage Devices
    10. Let Us Summarize
    11. Exercises
    12. Answers
  11. 6. Input Devices
    1. 6.1 Introduction
    2. 6.2 Types of Input Devices
      1. 6.2.1 Keyboard
      2. 6.2.2 Pointing Devices
      3. 6.2.3 Speech Recognition System
      4. 6.2.4 Digital Camera
      5. 6.2.5 Webcam
      6. 6.2.6 Scanners
    3. 6.3 Optical Character Recognition
      1. 6.3.1 Working of an OCR
    4. 6.4 Optical Mark Recognition
      1. 6.4.1 Working of an OMR
    5. 6.5 Magnetic-ink Character Recognition
    6. 6.6 Bar Code Reader
      1. 6.6.1 Working of a Bar Code Reader
    7. Let Us Summarize
    8. Exercises
    9. Answers
  12. 7. Output Devices
    1. 7.1 Introduction
    2. 7.2 Types of Output
    3. 7.3 Classification of output devices
      1. 7.3.1 Printers
      2. 7.3.2 Plotters
      3. 7.3.3 Computer Output Microfilm
      4. 7.3.4 Monitors
      5. 7.3.5 Voice Response Systems
      6. 7.3.6 Projectors
      7. 7.3.7 Electronic Whiteboard
      8. 7.3.8 Headphones and Headsets
    4. 7.4 Terminals
    5. Let Us Summarize
    6. Exercises
    7. Answers
  13. 8. Computer Program
    1. 8.1 Introduction
    2. 8.2 Developing a Program
      1. 8.2.1 Program Development Cycle
    3. 8.3 Algorithm
    4. 8.4 Flowchart
      1. 8.4.1 Importance of Flowcharts
      2. 8.4.2 Flowchart Symbols
      3. 8.4.3 Guidelines for Preparing Flowcharts
      4. 8.4.4 Flowchart Structures
      5. 8.4.5 Limitations of Flowcharts
    5. 8.5 Decision Tables
      1. 8.5.1 Steps to Develop a Decision Table
      2. 8.5.2 Benefits of Decision Tables
      3. 8.5.3 Limitations of Decision Tables
    6. 8.6 Pseudocode
      1. 8.6.1 Why Pseudocode?
      2. 8.6.2 Pseudocode Structures
      3. 8.6.3 Pseudocode Guidelines
      4. 8.6.4 Advantages of Using Pseudocode
      5. 8.6.5 Disadvantages of Using Pseudocode
    7. 8.7 Program Testing and Debugging
      1. 8.7.1 Testing Approaches
    8. 8.8 Program Documentation
      1. 8.8.1 Types of Documentation
    9. 8.9 Programming Paradigms
      1. 8.9.1 Unstructured Programming
      2. 8.9.2 Structured Programming
      3. 8.9.3 Object-oriented Programming
    10. 8.10 Characteristics of a Good Program
    11. Let Us Summarize
    12. Exercises
    13. Answers
  14. 9. Computer Languages
    1. 9.1 Introduction
    2. 9.2 Evolution of Programming Languages
    3. 9.3 Classification of Programming Languages
    4. 9.4 Generations of Programming Languages
      1. 9.4.1 First Generation: Machine Language
      2. 9.4.2 Second Generation: Assembly Language
      3. 9.4.3 Third Generation: High-level Language
      4. 9.4.4 Fourth Generation: 4GL
      5. 9.4.5 Fifth Generation: Very High-level Languages
    5. 9.5 Features of a Good Programming Language
      1. 9.5.1 Ease of Use
      2. 9.5.2 Portability
      3. 9.5.3 Naturalness for the Application
      4. 9.5.4 Reliability
      5. 9.5.5 Safety
      6. 9.5.6 Performance
      7. 9.5.7 Cost
      8. 9.5.8 Promote Structured Programming
      9. 9.5.9 Compact Code
      10. 9.5.10 Maintainability
      11. 9.5.11 Reusability
      12. 9.5.12 Provides Interface to Other Language
      13. 9.5.13 Concurrency Support
      14. 9.5.14 Standardization
    6. 9.6 Selection of a Programming Language
    7. Let Us Summarize
    8. Exercises
    9. Answers
  15. 10. Computer Software
    1. 10.1 Introduction
    2. 10.2 Software—Definition
    3. 10.3 Relationship between Software and Hardware
    4. 10.4 Software Categories
      1. 10.4.1 System Software
      2. 10.4.2 Application Software
    5. 10.5 Terminology Software
      1. 10.5.1 Firmware
      2. 10.5.2 Liveware
      3. 10.5.3 Public-domain Software
      4. 10.5.4 Freeware
      5. 10.5.5 Shareware
      6. 10.5.6 Commercial Software
      7. 10.5.7 Proprietary Software
      8. 10.5.8 Semi-free Software
    6. Let Us Summarize
    7. Exercises
    8. Answers
  16. 11. Operating System
    1. 11.1 Introduction
    2. 11.2 Operating System: Definition
    3. 11.3 Evolution of Operating System
    4. 11.4 Types of Operating System
    5. 11.5 Functions of Operating System
      1. 11.5.1 Process Management
      2. 11.5.2 Memory Management
      3. 11.5.3 File Management
      4. 11.5.4 Device Management
      5. 11.5.5 Security Management
      6. 11.5.6 User Interface
    6. 11.6 Modern Operating Systems
      1. 11.6.1 Windows XP
      2. 11.6.2 Windows Vista
      3. 11.6.3 Windows 7
    7. Let Us Summarize
    8. Exercises
    9. Answers
  17. 12. Data Communication and Computer Network
    1. 12.1 Introduction
    2. 12.2 Data Communication
      1. 12.2.1 Data Communication Components
      2. 12.2.2 Data Transmission Mode
      3. 12.2.3 Data Communication Measurement
    3. 12.3 Transmission Media
      1. 12.3.1 Guided/Wired Media
      2. 12.3.2 Unguided/Wireless Media
      3. 12.3.3 Analog and Digital Data Transmission
      4. 12.3.4 Modulation Techniques
    4. 12.4 Multiplexing
      1. 12.4.1 Multiplexers
      2. 12.4.2 Asynchronous and Synchronous Transmission
    5. 12.5 Switching
      1. 12.5.1 Circuit Switching
      2. 12.5.2 Packet Switching
      3. 12.5.3 Message Switching
    6. 12.6 Computer Network
      1. 12.6.1 Local Area Network
      2. 12.6.2 Metropolitan Area Network
      3. 12.6.3 Wide Area Network
    7. 12.7 Network Topologies
      1. 12.7.1 Bus Topology
      2. 12.7.2 Ring Topology
      3. 12.7.3 Star Topology
      4. 12.7.4 Tree Topology
      5. 12.7.5 Mesh Topology
    8. 12.8 Communication Protocols
      1. 12.8.1 The OSI Model
      2. 12.8.2 Categories of the OSI Layers
    9. 12.9 Network Devices
      1. 12.9.1 Network Interface Card
      2. 12.9.2 Hub
      3. 12.9.3 Repeater
      4. 12.9.4 Switch
      5. 12.9.5 Bridge
      6. 12.9.6 Router
      7. 12.9.7 Gateway
    10. Let Us Summarize
    11. Exercises
    12. Answers
  18. 13. Database Fundamentals
    1. 13.1 Introduction
    2. 13.2 Data, Information and Knowledge
      1. 13.2.1 Prerequisites of Information
      2. 13.2.2 Need for Information
    3. 13.3 Database: Definition
      1. 13.3.1 Fundamentals of Database
    4. 13.4 Logical Data Concepts
      1. 13.4.1 Entity
      2. 13.4.2 Attributes
      3. 13.4.3 Relationship
      4. 13.4.4 Types of Relationship
    5. 13.5 Physical Data Concepts
      1. 13.5.1 Sequential Files
      2. 13.5.2 Direct Files
      3. 13.5.3 Indexed Sequential Files
    6. 13.6 Database Management System
      1. 13.6.1 Need for Database Management System
      2. 13.6.2 Benefits of Database Management System
      3. 13.6.3 Components of a DBMS
      4. 13.6.4 Database Administrator
    7. 13.7 DBMS Architecture
      1. 13.7.1 Internal (Physical) Level
      2. 13.7.2 Conceptual Level
      3. 13.7.3 External Level
      4. 13.7.4 Data Independence
    8. 13.8 Database Models
      1. 13.8.1 Hierarchical Database Model
      2. 13.8.2 Network Database Model
      3. 13.8.3 Relational Database Model
      4. 13.8.4 Object-oriented Database Model
    9. 13.9 Codd's Twelve Rules
    10. 13.10 Database Languages
    11. 13.11 Structured Query Language
      1. 13.11.1 SQL Data Types
      2. 13.11.2 SQL Commands
    12. Let Us Summarize
    13. Exercises
    14. Answers
  19. 14. Internet Basics
    1. 14.1 Introduction
    2. 14.2 Evolution of Internet
      1. 14.2.1 Internet Organizations and Committees
    3. 14.3 Basic Internet Terms
      1. 14.3.1 World Wide Web (WWW)
      2. 14.3.2 Web Page
      3. 14.3.3 Website
      4. 14.3.4 Home Page
      5. 14.3.5 Browser
      6. 14.3.6 Uniform Resource Locator
      7. 14.3.7 Hypertext
      8. 14.3.8 Internet Service Provider
      9. 14.3.9 Web Server
      10. 14.3.10 Download and Upload
      11. 14.3.11 Online and Offline
    4. 14.4 Getting Connected to Internet
      1. 14.4.1 The Computer
      2. 14.4.2 Modem
      3. 14.4.3 Internet Connection
      4. 14.4.4 Internet Software
    5. 14.5 Internet Applications
      1. 14.5.1 Electronic Mail
      2. 14.5.2 File Transfer Protocol
      3. 14.5.3 Telnet
      4. 14.5.4 Internet Relay Chat
      5. 14.5.5 Chatting and Instant Messaging
      6. 14.5.6 Internet Telephony
      7. 14.5.7 Video Conferencing
      8. 14.5.8 Commerce Through Internet
      9. 14.5.9 Newsgroups (Usenet)
      10. 14.5.10 Mailing Lists (Listserver)
    6. 14.6 Electronic Mail: An Introduction
      1. 14.6.1 E-mail Address Structure
      2. 14.6.2 Sending and Receiving E-mail
      3. 14.6.3 How E-mail Works
      4. 14.6.4 Advantages and Disadvantages of E-mail
      5. 14.6.5 Netiquette
    7. 14.7 Searching the Web (Search Engines)
      1. 14.7.1 Refining the Search
    8. 14.8 Data over Internet
      1. 14.8.1 Static Component
      2. 14.8.2 Dynamic Component
      3. 14.8.3 Perl
      4. 14.8.4 JavaScript and JScript
      5. 14.8.5 VBScript
      6. 14.8.6 Active Server Pages
      7. 14.8.7 PHP
      8. 14.8.8 eXtensible Markup Language
      9. 14.8.9 Java
    9. 14.9 Internet and Viruses
      1. 14.9.1 Types of Computer Viruses
      2. 14.9.2 Ill-effects of Viruses
      3. 14.9.3 Remedy of Viruses
      4. 14.9.4 Using Antivirus Software
    10. Let Us Summarize
    11. Exercises
    12. Answers
  20. 15. Multimedia
    1. 15.1 Introduction
    2. 15.2 Multimedia: Definition
    3. 15.3 Building Blocks of Multimedia
      1. 15.3.1 Text
      2. 15.3.2 Graphics
      3. 15.3.3 Audio
      4. 15.3.4 Video
      5. 15.3.5 Animation
    4. 15.4 Multimedia System
      1. 15.4.1 Desirable Features of a Multimedia System
      2. 15.4.2 Data Compression
    5. 15.5 Multimedia Applications
      1. 15.5.1 Multimedia and Education
      2. 15.5.2 Multimedia and Entertainment
      3. 15.5.3 Multimedia and Training
      4. 15.5.4 Multimedia and Business
      5. 15.5.5 Multimedia Interactive Kiosks
    6. 15.6 Virtual Reality
      1. 15.6.1 Characteristics of Virtual Reality
    7. Let Us Summarize
    8. Exercises
    9. Answers
  21. Glossary
  22. Acknowledgements
  23. Copyright