Classification Of Programming Languages Flashcards
High level language
More understandable to humans than low level languages
E.g. java, python
Needs an interpreter or complier to enable the code so that the code can be translated to machine code so that the computer can run it
More appropriate if the program is to be used on a variety of different computer builds
Far more people are proficient in high level languages than low level languages, might dictate the language type used
Low level language
More difficult to understand but can often be executed very quickly by computers
E.g. machine code, binary, assembly code
Machine code does not need to be translated but assembly code needs an assembler
Likely to be used within an embedded system, where specific memory locations and processors functions can be addressed directly
Suited to time-criticsl applications, where execution must take place as quickly as possible
Machine code
Code is machine-specifc
Means a machine code program is written for one computer amd will not necessarily work on another
Because different computers sometimes have different internal layouts and components, which can affect the way the machine code is run
Translator
A program that translates source code into machine code
Types:
Assemblers: for assembly code
Interpreters: high level code, one line at a time
Compilers: entire high level code in one go
Advantages and disadvantages interpreters
A:
Program that contains error can still be run till where the error exists
Debugging is easier, as error can be more easily found
D:
Everytime you run the program, it needs to be interpreted wiphich is time consuming
Easier for unauthorised people to access
Advantages and disadvantages of compiler
A:
Run more quickli then re-interpreting a source code file
More difficult for unauthorised people to modify
D:
More memory is needed for compilation process
Entire program needs to be error free in order for it to compile