Uploaded by trevor zvidza

Assembly Language

advertisement
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:
o Need to make use of specific hardware or parts of the hardware
o To complete specific machine dependent instructions
o To ensure that too much space is not taken up in RAM
o To ensure code can completed much faster
Assembly languages allow programmers to program with mnemonics. e.g.
o LDA Load - this will ensure a value is added to the accumulator
o ADD Addition - this will add the value input or loaded from memory to
the value in the accumulator
o 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
Translators
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
ough both translators find errors in code, they do not debug the errors - this is done
by the programmer
Advantages & Disadvantages
Compiler
Advantages
Disadvantages
Run quickly as the program as the
source code has been stored to be
translated
Due to all code being compiled at the same time there must be
enough memory space to handle this, if not and virtual
memory is used it can be much slower
Compilers optimise the code, this code
will run quicker and take up less
memory space
If there are errors in the code the compiler will not identify
directly where the error lies, making it difficult to debug
Original source code will not be seen,
which is ideal for programmers to stop
work being copied
It is designed solely for one specific processor
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
separately by the CPU, which can lead to
finds a 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
translated, due to no instructions being
particular 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
and executed as it is
RAM to process the code
CIE IGCSE Computer Science
Revision Notes
IGCSEComputer ScienceCIERevision Notes4. Software4.2 Types of
Programming Language, Translators & IDEsIDE
IDE
Download PDF
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
Download