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

4.2 Types of Programming Language, Translators and IDEs SME

The document provides an overview of programming languages, distinguishing between high-level and low-level languages, including assembly language. It explains the role of translators like compilers and interpreters in converting source code to machine code, along with their advantages and disadvantages. Additionally, it describes the features of Integrated Development Environments (IDEs) that facilitate programming tasks.

Uploaded by

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

4.2 Types of Programming Language, Translators and IDEs SME

The document provides an overview of programming languages, distinguishing between high-level and low-level languages, including assembly language. It explains the role of translators like compilers and interpreters in converting source code to machine code, along with their advantages and disadvantages. Additionally, it describes the features of Integrated Development Environments (IDEs) that facilitate programming tasks.

Uploaded by

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

Head to savemyexams.

com for more awesome resources

IGCSE Computer Science CIE Your notes

4.2 Types of Programming Language, Translators &


IDEs
Contents
High & Low Level Languages
Assembly Language
Translators
IDE

Page 1 of 8

© 2015-2024 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 system Difficult to write and understand
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

Page 2 of 8

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

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 Your notes
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​

Advantages Disadvantages

It is easier to read and write and the programmer The user is not able to directly manipulate the
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 8

© 2015-2024 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 8

© 2015-2024 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 8

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

Advantages & Disadvantages


Compiler Your notes

Advantages Disadvantages

Run quickly as the program as the Due to all code being compiled at the same time there must
source code has been stored to be be enough memory space to handle this, if not and virtual
translated 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 to stop It is designed solely for one specific processor
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 translated
stored for later use, this means they require less RAM to and executed as it is

Page 6 of 8

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

process the code

Your notes

Page 7 of 8

© 2015-2024 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, siz e 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 amaz ing 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 8 of 8

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

You might also like