Great ideas in computer science : a gentle introduction

書誌事項

Great ideas in computer science : a gentle introduction

Alan W. Biermann

MIT Press, c1997

2nd ed

  • : pbk

大学図書館所蔵 件 / 54

この図書・雑誌をさがす

注記

Includes bibliographical references and index

内容説明・目次

内容説明

In Great Ideas in Computer Science: A Gentle Introduction, Alan Biermann presents the "great ideas" of computer science that together comprise the heart of the field. He condenses a great deal of complex material into a manageable, accessible form. His treatment of programming, for example, presents only a few features of Pascal and restricts all programs to those constructions. Yet most of the important lessons in programming can be taught within these limitations. The student's knowledge of programming then provides the basis for understanding ideas in compilation, operating systems, complexity theory, noncomputability, and other topics. Whenever possible, the author uses common words instead of the specialized vocabulary that might confuse readers.Readers of the book will learn to write a variety of programs in Pascal, design switching circuits, study a variety of Von Neumann and parallel architectures, hand simulate a computer, examine the mechanisms of an operating system, classify various computations as tractable or intractable, learn about noncomputability, and explore many of the important issues in artificial intelligence.This second edition has new chapters on simulation, operating systems, and networks. In addition, the author has upgraded many of the original chapters based on student and instructor comments, with a view toward greater simplicity and readability.

目次

  • Studying academic computer science - an introduction: rumours
  • studying computer science
  • special software for nonmathematical readers. Part 1 An introduction to programming - coding decision trees: good news
  • decision trees
  • getting started in programming
  • reading and storing data
  • programming decision trees
  • the arrow notation and its uses
  • summary. Part 2 Text manipulation and algorithm design: what is text manipulation? algorithms and program design for text manipulation
  • string and integer data types
  • more text manipulation
  • programming text-editing functions
  • first attempts at a loop
  • building the editor
  • building a conversation machine
  • Turbo Pascal
  • summary. Part 3 Numerical computation and a study of functions: let us calculate some numbers
  • simple calculations
  • functions
  • looping and a study of functions
  • searching for the best value
  • storing information in arrays
  • finding sums, minima, and maxima
  • patterns in programming
  • putting things in a row and a special characteristics of functions
  • putting the functions in a row
  • summary. Part 4 Top-down programming, subroutines, and a database application: let us solve a mystery
  • top-down programming and the database program
  • subroutines
  • subroutines with internal variables
  • subroutines with array parameters
  • subroutine communication examples
  • storing and printing facts for the database
  • representing questions and finding their answers
  • assembling the database program and adding comments
  • another application - drawing a picture with Pascal
  • recursion
  • object-oriented programming
  • summary. Part 5 Simulation: predicting the future
  • winning an auto race
  • avoiding the plague
  • observing evolution
  • why will it look like? summary. Part 6 Software engineering: the real world
  • lessons learned from large-scale programming projects
  • software engineering methodologies
  • the program life cycle
  • summary. Part 7 Electric circuits: how do computers work? computer organization
  • circuits for computing primitive functions
  • circuits for computing complex functions
  • relays
  • the binary number system
  • the circuits for adding two digits
  • the adder circuit
  • storing characters in memory
  • transistors and very large scale integration
  • summary. Part 8 Machine architecture: let us build a computer
  • a sample architecture - the P88 machine
  • programming the P88 machine
  • summary. Part 9 Language translation: enabling the computer to understand Pascal
  • syntactic production rules
  • attaching semantics to the rules
  • the semantics of Pascal
  • the translation of looping programs
  • programming languages
  • summary. (Part contents).

「Nielsen BookData」 より

詳細情報

  • NII書誌ID(NCID)
    BA30365931
  • ISBN
    • 0262522233
  • LCCN
    96041198
  • 出版国コード
    us
  • タイトル言語コード
    eng
  • 本文言語コード
    eng
  • 出版地
    Cambridge, Mass.
  • ページ数/冊数
    xxiv, 539 p.
  • 大きさ
    23 cm
  • 分類
  • 件名
ページトップへ