Lably
Skip to content

Computer program

Instructions a computer can execute

  • 55 min read
  • 5 chapters
JavaScript code to display a list of weekdays in a browser
Lionel Rowe · CC0

Learn it on Lably

A computer program in its human-readable form is called source code. Source code needs another computer program to execute because computers can only execute their native machine instructions. Therefore, source code may be translated to machine instructions using a compiler written for the language. (Assembly language programs are translated using an assembler.) The resulting file is called an executable. Alternatively, source code may execute within an interpreter written for the language.

If the executable is requested for execution, then the operating system loads it into memory and starts a process. The central processing unit will soon switch to this process so it can fetch, decode, and then execute each machine instruction.

If the source code is requested for execution, then the operating system loads the corresponding interpreter into memory and starts a process. The interpreter then loads the source code into memory to translate and execute each statement. Running the source code is slower than running an executable. Moreover, the interpreter must be installed on the computer.

Example computer program

The "Hello, World!" program is used to illustrate a language's basic syntax. The syntax of the language BASIC (1964) was intentionally limited to make the language easy to learn. For example, variables are not declared before being used. Also, variables are automatically initialized to zero. Here is an example computer program, in Basic, to average a list of numbers:

<span id="mwaQ"></span><span class="nl" id="mwag">10</span><span class="w" id="mwaw"> </span><span class="kr" id="mwbA">INPUT</span><span class="w" id="mwbQ"> </span><span class="s2" id="mwbg">"How many numbers to average?"</span><span class="p" id="mwbw">,</span><span class="w" id="mwcA"> </span><span class="vg" id="mwcQ">A</span> <span class="nl" id="mwcg">20</span><span class="w" id="mwcw"> </span><span class="kr" id="mwdA">FOR</span><span class="w" id="mwdQ"> </span><span class="vg" id="mwdg">I</span><span class="w" id="mwdw"> </span><span class="o" id="mweA">=</span><span class="w" id="mweQ"> </span><span class="il" id="mweg">1</span><span class="w" id="mwew"> </span><span class="k" id="mwfA">TO</span><span class="w" id="mwfQ"> </span><span class="vg" id="mwfg">A</span> <span class="nl" id="mwfw">30</span><span class="w" id="mwgA"> </span><span class="kr" id="mwgQ">INPUT</span><span class="w" id="mwgg"> </span><span class="s2" id="mwgw">"Enter number:"</span><span class="p" id="mwhA">,</span><span class="w" id="mwhQ"> </span><span class="vg" id="mwhg">B</span> <span class="nl" id="mwhw">40</span><span class="w" id="mwiA"> </span><span class="kd" id="mwiQ">LET</span><span class="w" id="mwig"> </span><span class="vg" id="mwiw">C</span><span class="w" id="mwjA"> </span><span class="o" id="mwjQ">=</span><span class="w" id="mwjg"> </span><span class="vg" id="mwjw">C</span><span class="w" id="mwkA"> </span><span class="o" id="mwkQ">+</span><span class="w" id="mwkg"> </span><span class="vg" id="mwkw">B</span> <span class="nl" id="mwlA">50</span><span class="w" id="mwlQ"> </span><span class="kr" id="mwlg">NEXT</span><span class="w" id="mwlw"> </span><span class="vg" id="mwmA">I</span> <span class="nl" id="mwmQ">60</span><span class="w" id="mwmg"> </span><span class="kd" id="mwmw">LET</span><span class="w" id="mwnA"> </span><span class="vg" id="mwnQ">D</span><span class="w" id="mwng"> </span><span class="o" id="mwnw">=</span><span class="w" id="mwoA"> </span><span class="vg" id="mwoQ">C</span><span class="o" id="mwog">/</span><span class="vg" id="mwow">A</span> <span class="nl" id="mwpA">70</span><span class="w" id="mwpQ"> </span><span class="kr" id="mwpg">PRINT</span><span class="w" id="mwpw"> </span><span class="s2" id="mwqA">"The average is"</span><span class="p" id="mwqQ">,</span><span class="w" id="mwqg"> </span><span class="vg" id="mwqw">D</span> <span class="nl" id="mwrA">80</span><span class="w" id="mwrQ"> </span><span class="kr" id="mwrg">END</span>

Once the mechanics of basic computer programming are learned, more sophisticated and powerful languages are available to build large computer systems.

Sign in to keep reading

4 more chapters are free with a Lably account.

More in Computing and information technology