web hosting : casino : gambling : domain names : mortgages : poker : travel : debt consolidation : mortgage : education : search engine optimization : insurance


Avobe.com - Free Encyclopedia

Apple Store




Simple English
Meta English

Afrikaans
Arabic (العربية)
Danish (Dansk)
Esperanto
Basque (Euskara)
Estonian (Eesti)
Spanish (Español)
Finnish (Suomi)
French (Français)
Malay (Bahasa Melayu)
Norwegian (Norsk)
Norwegian (Bokmål)
Romanian (Română)
Russian (Русский)
Sanskrit (Samskrta)
Occitan
Persian (فارسی)
Portuguese (Português)

September 11 Attack




 









Popular Keywords: old books, old book, cook books, poetry, find books, travel books, book search, bargain books, cheap books, inexpensive books, book compare, book comparison, comics, books and collectibles book, books, new books, new book, used books, used book, rare books, rare book, second hand books, second hand book, out of print books, out of print book, textbooks, used textbooks, cheap textbooks, college textbooks



संगणकशास्‍त्रं

In its most general sense, computer science (CS or compsci) is the study of computation and information processing, both in hardware and in software. In practice, computer science includes a variety of topics relating to computers, which range from the abstract analysis of algorithms, formal grammars, etc. to more concrete subjects like programming languages, software, and computer hardware. As a scientific discipline, it differs significantly from mathematics, programming, software engineering, and computer engineering, although these fields are often confused.

The Church-Turing thesis states that all known kinds of general computing devices are essentially equivalent in what they can do, although they vary in time and space efficiency. This thesis is a fundamental principle of computer science. Most research in computer science has been related to von Neumann computerss or Turing machines (computers that do one small, deterministic task at a time). These models resemble most real computers in use today. Computer scientists also study other kinds of machines, some practical (like parallel machines) and some theoretical (like random, oracle, and quantum machines).

Computer scientists study what programs can and cannot do (see computability and artificial intelligence), how programs should efficiently perform specific tasks (see algorithms), how programs should store and retrieve specific kinds of information (see data structures and data bases), and how programs and people should communicate with each other (see human computer interaction and user interfaces).

Computer science has roots in electrical engineering, mathematics and linguistics. In the last third of the 20th century computer science has become recognized as a distinct discipline and has developed its own methods and terminology.

Table of contents
1 Related fields
2 Major fields of importance for computer science
3 History
4 Prominent pioneers in computer science
5 See also
6 External links

Related fields

Computer science is closely related to several other fields. These fields overlap considerably, though important differences exist

Major fields of importance for computer science

Mathematical foundations

  • Boolean algebra
  • Discrete mathematics
  • Graph theory
  • Information theory
  • Symbolic logic
  • Probability and Statistics

Theoretical computer science

  • Algorithmic information theory
  • Computability theory
  • Cryptography
  • Formal semantics
  • Theory of computation (or theoretical computer science)
    • analysis of algorithms and problem complexity
    • logics and meanings of programs
    • Mathematical logic and Formal languages
  • Type theory

Hardware

(see also electrical engineering)
  • Control structures and Microprogramming
  • Arithmetic and Logic structures
  • Memory structures
  • input/output and Data communications
  • Logic Design
  • Integrated circuits
    • VLSI design
  • Performance and reliability

Computer systems organization

(see also electrical engineering)
  • Computer architecture
  • Computer networks
    • Distributed computing
  • Performance of systems
  • Computer system implementation

Software

  • Computer program and Computer programming
    • Parallel Programming
    • Program specification
    • Program verification
  • Programming techniques
  • Software engineering
    • Optimization
    • Software metrics
    • Configuration management and Software Configuration Management (SCM)
    • Structured programming
    • Object orientation
    • Design patterns
  • Programming languages
  • Operating Systems
  • Compilers
    • Lexical analysis
    • Parsing

Data and information systems

  • Data structures
  • Data storage representations
  • Data encryption
  • Data compression
  • Coding and Information theory
  • Files
    • File formats
  • Information systems
    • Databases
    • Information Storage and retrieval
    • Information Interfaces and Presentation

Computing methodologies

  • Symbolic and Algebraic manipulation
  • Artificial intelligence
  • Computer graphics
  • Image processing and computer vision
  • Pattern recognition
    • Speech recognition
  • Simulation and Modeling
  • Document and text processing
  • Digital signal processing

Computer applications

  • Administrative data processing
    • Enterprise resource planning
    • Customer relationship management
  • Mathematical software
    • Numerical analysis
    • Automated theorem proving
    • Computer algebra systems
  • Physical science and Engineering
    • Computational chemistry
    • Computational physics
  • Life and medical sciences
    • Bioinformatics
    • Computational Biology
    • Medical informatics
  • Social and behavioral sciences
  • Arts and Humanities
  • Computer-aided engineering
  • Robotics
  • Human-computer interaction
    • Speech synthesis
    • Usability engineering

Computing milieux

  • Computer industry
  • History of computing hardware
  • Computers and education
  • Computers and society
    • Computer supported cooperative work
  • Legal aspects of computing
    • Free software and Open Source
  • Management of computing and Information systems
  • Personal computing
  • Computer and information security

History

  • History of computing
  • Origins of computer terms
  • Early programming projects
  • Computer science departments
  • Timeline of algorithms

Prominent pioneers in computer science

  • Charles Babbage, Designed and built a prototype for a mechanical calculator; designed, but never built, the more powerful Analytical Engine.
  • John Backus Invention of FORTRAN (Formula Translation), the first practical high-level programming language and the Backus-Naur form for describing formal language syntax.
  • James W. Cooley and John W. Tukey The Fast Fourier Transform and its impact on scientific research.
  • Ole-Johan Dahl and Kristen Nygaard, inventors of the proto-object oriented language SIMULA.
  • Edsger Dijkstra for algorithms, Goto considered harmful, rigor, and pedagogy.
  • C.A.R Hoare for the development of the formal language Communicating Sequential Processes (CSP) and Quicksort.
  • Admiral Grace Murray Hopper, for doing pioneer work in the 1940s, one of the first to recognize the necessity for higher level programming languages, or what she termed automatic programming. She wrote the A-O compiler. Her ideas heavily influenced the COBOL language.
  • Kenneth Iverson Inventor of APL, for his contribution to interactive computing.
  • William Kahan for the IEEE floating-point standard. (Perhaps this reference should be moved to hardware engineering.)
  • Donald Knuth for The Art of Computer Programming series.
  • Ada Lovelace, contemporary of Charles Babbage, famous for her Sketch of the Analytical Engine, an analysis of Babbage's work; the namesake for the modern computer language, Ada.
  • John von Neumann for devising the von Neumann architecture upon which most modern computers are based.
  • Claude E. Shannon for information theory.
  • Alan Turing for computability theory, pioneering work in the field of Artificial Intelligence, and for the design of the Pilot ACE.
  • Maurice Wilkes for building the first practical stored program computer to be completed, and creditted with the ideas of several high-level programming language constructs.
  • James H. Wilkinson The technique of "backward error analysis" and advances in the field of matrix computations. Wilkinson was also a principal mover in the development of the Pilot ACE, the first British computer, in the late 1940s. (See more on Wilkinson in the MacTutor Biographies.)
  • Konrad Zuse Builder of a binary computer in the 1930s, for which he allegedly devised a theoretical high level programming language, Plankalkül.

See list of computer scientists for many more notables.

See also

External links


Dansk (Danish) – Esperanto – Español (Spanish) – Français (French) - Português (Portuguese) - Afrikaans – العربية (Arabic) – Bahasa Melayu (Malay) – Norsk (Norwegian) – Română (Romanian) – Русский (Russian) 

af/ ar/ da/ directory/ el/ eo/ es/ et/ eu/ fa/ fi/ fr/ g/ meta/ ml/ ms/ no/ oc/ pt/ ro/ ru/ sa/ sep11/ simple/