Computer Languages

Download Report

Transcript Computer Languages

Computer Languages
[Computing]
Computing
The Teacher
Machine Code
• The only type of program a computer can
run is a machine code program.
• …which looks like this….
Computing
The Teacher
Low Level Languages
• Low-level languages were developed to make it
easier for programmers to write and edit
programs.
• Each machine
code instruction is
given a mnemonic.
Computing
The Teacher
Assembler
• A Low level language is often called an
Assembly Language.
• A computer cannot run an Assembly
Language program.
• An Assembler converts an Assembly
Language program into machine code
…then the computer can run it.
Computing
The Teacher
Assembly Language
• It takes many instructions to perform
simple tasks.
• Assembled programs run fast – so needed
for Eg. Games.
..but Assembly language
programming is still hard work…so….
Computing
The Teacher
High Level Languages
• A high level language uses recognisable
instructions – closer to English!
• It is easier for programmers to develop
and edit high level programs…and this will
mean faster program development.
• …and fewer bugs!
Computing
The Teacher
Program Translators
• A High level language program need to be translated
into machine code programs before a computer can run
it.
• Compilers translate high level language source code into
executable object code programs…that the computer
can run.
• Interpreters translate each line of a high level language
program, running each instruction as it does so.
Computing
The Teacher
Examples of High Level Languages
•
•
•
•
•
•
•
•
FORTRAN – (FORmula
TRANslator) used for scientific
computing.
ALGOL – (ALGOrithmic
Language)
COBOL (Common Business
Orientated Language) used for
commercial programming.
BASIC – (Beginner’s All-Purpose
Symbolic Instruction Code) – a
learning language.
PASCAL – A well-structured
teaching language.
C, C+, C++, C* - Evolved from
Algol.
JAVA – Popular language used for
teaching programming
…and many, many more…..
Computing
The Teacher
High Level Languages
• Scientific languages would have powerful
mathematical functions, and facilities for
high precision arithmetic to many decimal
places…
• Commercial languages would have many
data processing functions (searching and
sorting) and filing facilities.
Computing
The Teacher
HTML
<body bgcolor=“blue”>
<table>
<tr>
<td><font face=“arial” color=“red”>Ronaldo’s</font></td>
<td><font face=“arial” color=“white”>First Page</font></td>
</tr>
<tr>
<td><img src=“c:\ronaldo.jpg” align=“right”></img></td>
</tr>
</table>
<a href=“page2.htm”>Page 2</a>
</body>
• ..stands for HyperText Markup Language.
• .... is used to develop web pages. A web
page is really a program written in HTML
with instructions for the web browser
telling it how to display the page.
• Hyperlinks can be used for navigation
between web pages.
• Multimedia objects can be embedded in a
web page.
Computing
The Teacher
Special-Purpose Languages
• Some languages have a special purpose
such as…
• PROLOG – for Artificial Intelligence
• GASP - for Simulation
• OCCAM – for parallel processing systems.
• ADA – for programming embedded
systems.
Computing
The Teacher
Procedural Languages
• A sequence of instructions is executed.
• …use variables, program control (loops
etc) and subroutines.
• Examples : PASCAL, BASIC, FORTRAN, COBOL,
ALGOL.
Computing
The Teacher
Non-Procedural Languages
• A set of facts…
• …and a set of rules, from which
information is deduced.
Computing
The Teacher
Example (Non-procedural Language)
PROLOG
Facts :
Parent(Tom, Bob)
Parent(Pam,Bob)
Male(Tom)
..and a set of rules
Father(X,Y) :=
parent(X,Y)
Male(X)
Brother(X,Y) :=
parent(Z,X)
Parent(Z,Y)
Male(X)
…and a query which is answered by applying
the facts and rules…
? father(who,Bob)
who = Tom
Computing
The Teacher
Object Oriented Programming
Languages (OOPs)
• A Class consists of a group of Objects
• Objects have Properties and Methods.
• Properties can be set initially or at runtime.
• Methods are the things the object can do.
Examples of OOPs – C#, VB .NET, JAVA, PHP, PYTHON)
Computing
The Teacher
Fundamentals of an OOP…
• A Class is a group of similar Objects.
• The class of DOGS contains an Object called a COLLIE.
A COLLIE has properties and methods.
Properties may include: Colour, Breed, No of Legs, etc…
Methods may be Bark, Eat, Run, Sit, etc..
• LASSIE is an Instance of a COLLIE
• A Sub-Class may be defined such as HUNTING-DOGS
that INHERITS the methods and properties of the Class
DOG.
Computing
The Teacher
Visual Languages
• Visual Languages allow the programmer
to manipulate objects visually on a form,
and set their layout and properties.
• Often used to create Microsoft Windows
Applications.
• Examples : Visual Basic, Visual C#,
Delphi.
Computing
The Teacher
ALL programming languages must
have…
• International Standards.
– Difficult to create because of different
hardware and software manufacturers.
• An unambiguous syntax.
– There should never be two
different ways for a computer
to interpret an instruction.
Computing
The Teacher