0% found this document useful (0 votes)
6 views

4.2 TypesofProgrammingLanguage, Translators&IDEs

Uploaded by

dayanat8612
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views

4.2 TypesofProgrammingLanguage, Translators&IDEs

Uploaded by

dayanat8612
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Head to savemyexams.

com for more awesome resources

YOUR NOTES
IGCSE Computer Science CIE 

4.2 Types of Programming Language, Translators & IDEs

CONTENTS
High & Low Level Languages
Assembly Language
Translators
IDE

Page 1 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

High & Low Level Languages YOUR NOTES



High & Low Level Languages
Low Level Languages
Low Level Languages are languages that sit close to a computer’s instruction set. These
are basic instructions that the CPU will understand
For instance an assembly language​which allows programmers to focus on programming
simple commands, which in turn is converted into machine code This element is needed for
the core hardware to be able to work with the software
These languages are written for specific processors to ensure they embed the correct
machine architecture
Assembly Language - The code is written using mnemonics, abbreviated text commands
such as LDA (Load), STO(Store) Using this language programmers can write human-
readable programs that correspond almost exactly to machine code.
Machine code – is at the hardware level and is written in binary (1’s and 0’s)

Advantages Disadvantages

It gives programmers complete control over the Difficult to write and understand
system components so it can control hardware
components.

Efficient code can be written for the processor so it will Machine dependent and cannot be
occupy less memory and execute faster added to different specification
machines

They provide direct manipulation of hardware which More prone to errors


means it will be more efficient

Communicates directly with hardware Knowledge of computer architecture is


key to program effectively

High Level Languages


High Level Languages are programming languages which use English-like statements
which allow users to program with easy to use code, allow for clear debugging and once
programs are created they become easier to maintain
High level languages were needed more due to the development of processor speeds and
memory capacity increasing
Examples of these languages are Python, C#, Java etc​

Page 2 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

YOUR NOTES
Advantages Disadvantages 

It is easier to read and write and the The user is not able to directly manipulate the
programmer is less likely to make mistakes hardware

Needs to be translated to machine code


It is easier to debug so it will save time
before running

The code is portable so can be used on any


The program may be less efficient
computer
One line of code can perform multiple
commands

 Exam Tip
You will be asked about the advantages and disadvantages of high or low level
languages or you will be asked to compare and contrast between the two types
of language

Page 3 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

Assembly Language YOUR NOTES



Assembly Language
The first languages were actually direct machine language, where programmers had to
program it with direct binary numbers of 1’s and 0’s. It was quite clear to see that this
method was incredibly difficult to program, which allowed the introduction of Assembly
languages

Programmers who use assembly language do so for the following reasons:


Need to make use of specific hardware or parts of the hardware
To complete specific machine dependent instructions
To ensure that too much space is not taken up in RAM
To ensure code can completed much faster
Assembly languages allow programmers to program with mnemonics. e.g.
LDA Load - this will ensure a value is added to the accumulator
ADD Addition - this will add the value input or loaded from memory to the value in the
accumulator
STO, Store - stores the value in the accumulator in RAM
This is used rather than binary code which allowed continuation of working directly with the
hardware but removed an element of complexity
A mnemonic is received by the computer and it is looked up within a specific table
An assembler is needed here to check the word so that it can be converted into machine
code
If a match from the word is found e.g. STO the word is replaced with the relevant binary
code to match that sequence

 Exam Tip
A question will focus more directly on how the assembler converts to work with
the hardware. You must focus on mnemonics being converted from a table and
into the corresponding binary code

Page 4 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

Translators YOUR NOTES



Compilers & Interpreters
Programmers will write program source code using high-level languages e.g. Python, Java,
C# etc. As programmers, we can understand source code as it is descriptive, easy to read,
maintain and debug. However this is not good for the hardware as it needs to be converted
into binary to allow the hardware to understand and execute it, this is known as machine
code. For this to work it needs to pass through a translator first. There are two types of
translators - a compiler and an interpreter

Compiler
This method will translate a program into machine code. Compilers convert the source
code in one go into an executable file ready for distribution. This method is used mainly
when a program is finished with no syntax or logical errors
Compiling may take time to be processed, however, this can be used over without needing
to be recompiled every time, bearing in mind that the program contains no errors
Error reports are produced after a program has been translated. Common errors in code will
allow the computer to crash and not respond, it’s important to be aware that if there are
errors the source code must be changed to compile again

Interpreter
This is the method that directly sends the source code to the machine code. This will
translate each line of code individually, if an error occurs the program will stop and an error
message will occur. Once the error message is fixed, the program can carry on running from
where the error occurred

 Exam Tip
You will need to have a good understanding of the difference between a
compiler and an interpreter. You will need to focus on features of compilers and
interpreters or focusing on an overall comparison between the two
Although both translators find errors in code, they do not debug the errors - this
is done by the programmer

Page 5 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

Advantages & Disadvantages YOUR NOTES


Compiler 

Advantages Disadvantages

Run quickly as the program as the Due to all code being compiled at the same time there
source code has been stored to be must be enough memory space to handle this, if not and
translated virtual memory is used it can be much slower

Compilers optimise the code, this


If there are errors in the code the compiler will not identify
code will run quicker and take up less
directly where the error lies, making it difficult to debug
memory space

Original source code will not be


seen, which is ideal for programmers It is designed solely for one specific processor
to stop work being copied

If the program is changed it must be recompiled

Interpreter

Advantages Disadvantages

Each line of code has to be interpreted


Program will always run, it will just stop when it finds a
separately by the CPU, which can lead to
specific syntax error in the code
slower execution

Every time the program is run it has to be


It is easier to debug and understand where particular
translated, due to no instructions being
code has gone wrong
stored

Interpreters do not store instructions and are not


They cannot optimise code, it is
stored for later use, this means they require less RAM
translated and executed as it is
to process the code

Page 6 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers
Head to savemyexams.com for more awesome resources

IDE YOUR NOTES



IDE
An integrated development environment (IDE) is software that consolidates basic tools
required to write and test software to make a programmer's journey effective and useful, this will
ensure they have key features to improve programming code and ensure it does as instructed.
Some features are:
Basic code formatting - changing the font, size of the font, making text bold etc
Coloured keywords in source code - e.g. Python code print, input etc turn purple, if turns
orange. This makes it easy to see keywords
Code Editing - this will allow users to write and manipulate source code, it includes features
such as auto-completion and auto-correction of code, bracket matching, syntax checks
etc
Commenting code - this allows sections of code to be commented out easily to stop it
from being run or as comments on what the program is doing
Identifying errors - highlight particular areas of code or provide direct error messages
where the error may have appeared e.g. indentation errors etc
Run-Time environment - to allow the program to run and see its corresponding output
Debugger - this will identify and remedy errors within the source code. This can provide a
step through command also which provides step by step instructions and shows what is
happening to the code line by line. This method is amazing for catching logical errors
Libraries - extra modules that are not included in the main programming language e.g.
math in Python for extra mathematical commands
Graphical User Interface Builder - will create a graphical design rather than working with
source code
Translator - which compiles or interprets the code

 Exam Tip
You could be asked to Identify or Describe different features within an
Integrated Development Environment (IDE) this number could range from 2-5

Page 7 of 7

© 2015-2023 Save My Exams, Ltd. · Revision Notes, Topic Questions, Past Papers

You might also like