The Teacher Computing Computer Languages [Computing]

18
The Teacher Computing Computer Languages [Computing]

Transcript of The Teacher Computing Computer Languages [Computing]

The TeacherComputing

Computer Languages

[Computing]

The TeacherComputing

Machine Code• The only type of program a computer can

run is a machine code program.

• …which looks like this….

The TeacherComputing

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.

The TeacherComputing

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.

The TeacherComputing

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….

The TeacherComputing

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!

The TeacherComputing

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.

The TeacherComputing

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…..

The TeacherComputing

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.

The TeacherComputing

HTML

• ..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.

<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>

The TeacherComputing

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.

The TeacherComputing

Procedural Languages

• A sequence of instructions is executed.

• …use variables, program control (loops etc) and subroutines.

• Examples : PASCAL, BASIC, FORTRAN, COBOL, ALGOL.

The TeacherComputing

Non-Procedural Languages

• A set of facts…

• …and a set of rules, from which information is deduced.

The TeacherComputing

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

The TeacherComputing

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 run-time.• Methods are the things the object can do.

Examples of OOPs – C#, VB .NET, JAVA, PHP, PYTHON)

The TeacherComputing

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.

The TeacherComputing

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.

The TeacherComputing

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.