Computing

From Wikipedia, the free encyclopedia
Jump to: navigation, search
Difference engine: computing the solution to a polynomial function.

Computing is usually defined as the activity of using and improving computer hardware and software. It is the computer-specific part of information technology. Computer science (or computing science) is the study and the science of the theoretical foundations of information and computation and their implementation and application in computer systems.

Computing Curricula 2005[1] defined computing:

In a general way, we can define computing to mean any goal-oriented activity requiring, benefiting from, or creating computers. Thus, computing includes designing and building hardware and software systems for a wide range of purposes; processing, structuring, and managing various kinds of information; doing scientific studies using computers; making computer systems behave intelligently; creating and using communications and entertainment media; finding and gathering information relevant to any particular purpose, and so on. The list is virtually endless, and the possibilities are vast.

A computer is a machine that manipulates data according to a set of instructions called a computer program. The program has an executable form that the computer can use directly to execute the instructions. The same program in its human-readable source code form, enables a programmer to study and develop the algorithm. Because the instructions can be carried out in different types of computers, a single set of source instructions converts to machine instructions according to the central processing unit type.

The execution process carries out the instructions in a computer program. Instructions express the computations performed by the computer. They trigger sequences of simple actions on the executing machine. Those actions produce effects according to the semantics of the instructions.

Computer programming in general is the process of writing, testing, debugging, and maintaining the source code and documentation of computer programs. This source code is written in a programming language, which is an artificial language, restrictive, demanding, and unforgiving to humans but easily translated by the computer. The purpose of programming is to invoke the desired behaviour (customization) from the machine. The process of writing high quality source code requires knowledge of both the application's domain and the computer science domain. The highest quality software is thus developed by a team of various domain experts, each person a specialist in some area of development. But the term programmer may apply to a range of program quality, from hacker to open source contributor to professional. And a single programmer could do most or all of the computer programming needed to generate the proof of concept to launch a new "killer" application.

Contents

[edit] Definitions

The term computing has sometimes been narrowly defined, as in a 1989 ACM report on Computing as a Discipline[2]:

The discipline of computing is the systematic study of algorithmic processes that describe and transform information: their theory, analysis, design, efficiency, implementation, and application. The fundamental question underlying all computing is 'What can be (efficiently) automated?

Computing Curricula 2005[1] also recognizes that the meaning of computing depends on the context:-

Computing also has other meanings that are more specific, based on the context in which the term is used. For example, an information systems specialist will view computing somewhat differently from a software engineer. Regardless of the context, doing computing well can be complicated and difficult. Because society needs people to do computing well, we must think of computing not only as a profession but also as a discipline.

The term computing is also synonymous with counting and calculating. In earlier times it was used in reference to mechanical computing machines.

A computer is a machine that reads, stores, manipulates and displays data. The most common example is the personal computers. Other common examples include mobile phones, mp3 players, satellites, video game consoles.

[edit] Science and theory

[edit] Hardware

See information processor for a high-level block diagram.

[edit] Instruction-level taxonomies

After the commoditization of memory, attention turned to optimizing CPU performance at the instruction level. Various methods of speeding up the fetch-execute cycle include:

[edit] Software

[edit] History of computing

[edit] Business computing

[edit] Human factors

[edit] Computer network

[edit] Wired and wireless computer network

[edit] Computing technology based wireless networking (CbWN)

The main goal of CbWN is to optimize the system performance of the flexible wireless network.

[edit] Computer security

[edit] Data

[edit] Numeric data

[edit] Character data

[edit] Other data topics

[edit] Mechatronics

[edit] Classes of computers

[edit] Companies – current

[edit] Companies – historic

[edit] Organizations

[edit] Professional

[edit] Standards bodies

See also: Standardization and Standards organization

[edit] Open standards

See also Open standard

[edit] See also

[edit] References

  1. ^ a b The Joint Task Force for Computing Curricula 2005. Computing Curricula 2005: The Overview Report (pdf)
  2. ^ Computing as a Discipline (pdf)
Personal tools
Namespaces
Variants
Actions
Navigation
Interaction
Toolbox
Print/export
Languages