FACTOID # 45: American adults have spent more time than anyone in education .
 
 Home   Encyclopedia   Statistics   Countries A-Z   Flags   Maps   Education   Forum   FAQ   About 
 
 
 
WHAT'S NEW
RECENT ARTICLES
More Recent Articles »
 

SEARCH ALL

FACTS & STATISTICS    Advanced view

Search encyclopedia, statistics and forums:

 

 

(* = Graphable)

 

 


Encyclopedia > Computer program

A computer program is a collection of instructions that describe a task, or set of tasks, to be carried out by a computer. A BlueGene supercomputer cabinet. ...


The term computer program may refer to source code, written in a programming language, or to the executable form of this code. Computer programs are also known as software, applications programs, system software or simply programs. Source code (commonly just source or code) is any series of statements written in some human-readable computer programming language. ... A programming language is an artificial language that can be used to control the behavior of a machine, particularly a computer. ... This article or section does not cite its references or sources. ... System software is a generic term referring to any computer software that is an essential part of the computer system. ...


The source code of most computer programs consists of a list of instructions that explicitly implement an algorithm (known as an imperative programming style); in another form (known as declarative programming) the characteristics of the required information are specified and the method used to obtain the results, if any, is left to the platform. Source code (commonly just source or code) is any series of statements written in some human-readable computer programming language. ... In mathematics, computing, linguistics, and related disciplines, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state. ... In computer science, imperative programming, as opposed to declarative programming, is a programming paradigm that describes computation in terms of a program state and statements that change the program state. ... Declarative programming is a term with two distinct meanings, both of which are in current use. ... In computing, a platform describes some sort of framework, either in hardware or software, which allows software to run. ...


Computer programs are often written by people known as computer programmers, but may also be generated by other programs. In computing, a programmer is someone who does computer programming and develops computer software. ...

Contents

Terminology

Commercial computer programs aimed at end-users are commonly referred to as application software by the computer industry, as these programs are focused on the functionality of what the computer is being used for (its application), as opposed to being focused on system-level functionality (for example, as the Windows operating system software is). In practice, colloquially, both application software and system software may correctly be referred to as programs, as may be the more esoteric firmware—software firmly built into an embedded system. Programs that execute on the hardware are a set of instructions in a format understandable by the instruction set of the computer's main processor, which cause specific other instructions to execute or perform a simple computation like addition. But computers process millions of such per second and that is the program, the sequence of instructions strung together such that when executed, they do something useful, and usually repeatable and reliable. This article or section does not cite its references or sources. ... In computing, firmware is software that is embedded in a hardware device. ... A router, an example of an embedded system. ... CPU can stand for: in computing: Central processing unit in journalism: Commonwealth Press Union in law enforcement: Crime prevention unit in software: Critical patch update, a type of software patch distributed by Oracle Corporation in Macleans College is often known as Ash Lim. ...


For differences in the usage of the spellings program and programme, see American and British English spelling differences. American and British English spelling differences are one aspect of American and British English differences. ...


Program execution

A computer program is loaded into memory (usually by the operating system) and then executed ("run"), instruction by instruction, until termination, either with success or through software or hardware error. An operating system (OS) is a set of computer programs that manage the hardware and software resources of a computer. ... Termination as a technical term has different meanings. ...


Before a computer can execute any sort of program (including the operating system, itself a program) the computer hardware must be initialized. This initialization is done in modern PCs by a piece of software stored on programmable memory chips installed by the manufacturer, called the BIOS. The BIOS will attempt to initialize the boot sequence, making the computer ready for higher-level program execution. Computer hardware is the physical part of a computer, including the digital circuitry, as distinguished from the computer software that executes within the hardware. ... D23128C PROM on the board of ZX Spectrum A programmable read-only memory (PROM) or field programmable read-only memory (FPROM) is a form of digital memory where the setting of each byte is locked by a fuse or antifuse. ... This article or section does not adequately cite its references or sources. ... In computing, booting is a bootstrapping process that starts operating systems when the user turns on a computer system. ...


Programs vs. data

The executable form of a program (that is, usually object code) is often treated as being different from the data the program operates on. In some cases this distinction is blurred with programs creating, or modifying, data, which is subsequently executed as part of the same program (this is a common occurrence for programs written in Lisp), see self-modifying code. In computer science, object file or object code is an intermediate representation of code generated by a compiler after it processes a source code file. ... In general, data consist of propositions that reflect reality. ... Lisp is a family of computer programming languages with a long history and a distinctive fully-parenthesized syntax. ... In computer science, self-modifying code is code that alters its own instructions, whether or not it is on purpose, while it is executing. ...


Programming

Main article: Computer programming

A program is likely to contain a variety of data structures and a variety of different algorithms to operate on them. Computer programming (often shortened to programming or coding) is the process of writing, testing, and maintaining the source code of computer programs. ... A binary tree, a simple type of branching linked data structure. ... In mathematics, computing, linguistics, and related disciplines, an algorithm is a procedure (a finite set of well-defined instructions) for accomplishing some task which, given an initial state, will terminate in a defined end-state. ...


Creating a computer program is the iterative process of writing new source code or modifying existing source code, followed by testing, analyzing and refining this code. A person who practices this skill is referred to as a computer programmer or software developer. The sometimes lengthy process of computer programming is now referred to as "software development" or software engineering. The latter becoming more popular due to the increasing maturity of the discipline. (see Debate over who is a software engineer) Source code (commonly just source or code) is any series of statements written in some human-readable computer programming language. ... 3 programmers. ... Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. ... Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. ...


Two other forms of modern day approaches are team programming where each member of the group has equal say in the development process except for one person who guides the group through discrepancies. These groups tend to be around 10 people to keep the group manageable. The second form is referred to as "peer programming" or pair programming. Pair programming requires two software engineers to participate in a combined development effort at one workstation. ...


See Process and methodology for the different aspects of modern day computer programming. Software engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software. ...


Trivia

The world's shortest useful program is usually agreed upon to be the utility cont/rerun used on the old operating system CP/M. It was 2 bytes long (JMP 100), jumping to the start position of the program that had previously been run and so restarting the program, in memory, without loading it from the much slower disks of the 1980's. CP/M was an operating system originally created for Intel 8080/85 based microcomputers by Gary Kildall of Digital Research, Inc. ...


According to the International Obfuscated C Code Contest, the world's smallest "program" consisted of a file containing zero bytes, which when run output zero bytes to the screen (also making it the world's smallest self-replicating program). This "program" was qualified as such only due to a flaw in the language of the contest rules, which were soon after modified to require the program to be greater than zero bytes. The International Obfuscated C Code Contest (abbr. ... This article refers to the unit of binary information. ... Self-replication is the process by which some things make copies of themselves. ...


Ada Lovelace wrote a set of notes specifying in complete detail a method for calculating Bernoulli numbers with the Analytical Engine described by Charles Babbage. This is recognized as the world's first computer program and she is recognised as the world's first computer programmer by historians. Ada Lovelace Augusta Ada King, Countess of Lovelace (December 10, 1815 – November 27, 1852), born Augusta Ada Byron, is mainly known for having written a description of Charles Babbages early mechanical general-purpose computer, the analytical engine. ... The analytical engine, an important step in the history of computers, is the design of a mechanical modern general-purpose computer by the British professor of mathematics Charles Babbage. ... Charles Babbage (26 December 1791 – 18 October 1871) was an English mathematician, philosopher, mechanical engineer and (proto-) computer scientist who originated the idea of a programmable computer. ...


External links

  • Definition of Program @ Webopedia
  • Definition of Computer program @ Agtivity
  • Definition of Software @ FOLDOC

  Results from FactBites:
 
Computer programming - Wikipedia, the free encyclopedia (1236 words)
Computer programming (often simply programming or coding) is the craft of writing a set of commands or instructions that can later be compiled and/or interpreted and then inherently transformed to an executable that an electronic machine can execute or "run".
Another early use of computer programs was made using a soldering iron and a large number of vacuum tubes (later transistors).
C# is an object-oriented programming language developed by Microsoft as part of their.NET initiative, and later approved as a standard by ECMA and ISO.
  More results at FactBites »


 
 

COMMENTARY     


Share your thoughts, questions and commentary here
Your name
Your comments

Want to know more?
Search encyclopedia, statistics and forums:

 


Lesson Plans | Student Area | Student FAQ | Reviews | Press Releases |  Feeds | Contact
The Wikipedia article included on this page is licensed under the GFDL.
Images may be subject to relevant owners' copyright.
All other elements are (c) copyright NationMaster.com 2003-5. All Rights Reserved.
Usage implies agreement with terms, 1022, m