From WikiChip
Editing program
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | {{title|Program}} | + | {{cmpen title|Program}} |
A '''program''' is an ordered set of operations that are processed by a processing unit (e.g. [[CPU]], [[GPU]], and [[calculator chip]]s) or a processing program (e.g. an [[interpreter]] and [[virtual machine]]). | A '''program''' is an ordered set of operations that are processed by a processing unit (e.g. [[CPU]], [[GPU]], and [[calculator chip]]s) or a processing program (e.g. an [[interpreter]] and [[virtual machine]]). | ||
Line 5: | Line 5: | ||
== Overview == | == Overview == | ||
− | A program is an ordered set of operations that implements one or more [[algorithm]] in order to solve some problem or complete a task. Programs are usually written by a programmer using a [[programming language]], however they may also be created automatically using specialized code generators. [[Programming]] involves | + | A program is an ordered set of operations that implements one or more [[algorithm]] in order to solve some problem or complete a task. Programs are usually written by a programmer using a [[programming language]], however they may also be created automatically using specialized code generators. [[Programming]] is typically involves writing [[source code]], testing it, and modifying it appropriately. [[Software engineering]] is the discipline under which program development is done which involves the [[software design|design]], [[software construction|construction]], [[software testing|testing]], and [[software maintenance|maintenance]]. |
− | === | + | === Compilation & Translation === |
− | + | There are a couple of ways programs in human-readable ([[source code]]) forms into an [[executable]] or some other form which can be processed and executed: | |
− | |||
− | + | * Programs coded in [[source code|human-readable forms]] may be [[compiler|compiled]] to produce [[machine code]]. This is the kind of process that goes along with languages such as [[C]], [[C++]], [[Fortran]], and [[Lisp]] (see [[compiled language]]). | |
− | + | * Programs coded in human-readable forms may be compiled into [[p-code]] to be executed by a [[virtual machine]] or a hardware implementation that can execute that p-code. This is the idea behind languages such as [[Java]]. | |
− | + | * Programs in human-readable forms can be interpreted and executed directly by an [[interpreter]] or specialized hardware. This is the idea behind languages such as [[MATLAB]], [[Python]], and [[PHP]] (see [[interpreted language]]). | |
− | |||
− | |||
− | |||
− | |||
− | |||
=== Execution & Interpretation === | === Execution & Interpretation === |