Chapter 4 Software: Unit 4.2: Types of Programming Language, translators and IDEs Flashcards
Describe high-level language
Easier to understand than low-level language
Read and understand as the language used is closer to English
Write in shorter time
Debug at the development stage
Maintain once in use
Describe low-level language
Can refer to machine code, binary instructions that a computer understands, or assembly language that needs to be translated into machine code
What are the advantages of high-level language?
Independent of the type of computer being used
Easier to read, write and understand programs
Quicker to write programs
Programs are easier and quicker to debug
Easier to maintain programs in useW
What are the disadvantages of high-level language?
Programs can be larger
Programs can take longer to execute
Programs may not be able make use of special hardware
What are the advantages of low-level language?
Can make use of special hardware
Includes special machine-dependent instructions
Can write code that doesn’t take up much space in primary memory
Can write code that performs a task very quickly
What are the disadvantages of low-level language?
Longer time to write and debug programs
Programs are more difficult to understand
Define compiler
A compiler is a computer program that translates an entire program written in a high-level language (HLL) into machine code all in one go so that it can be directly used by a computer to perform a required task
Once a program is compiled the machine code can be used again to perform the same task without re compilation.
If errors are detected, then an error report is produced instead of a compiled program
Define interpreter
An interpreter is a computer program that reads a statement from a program written in a high-level language, translates it, performs the action specified and then does the same with the next statement and so on.
If there is an error, the execution ceases and an error message is output, sometimes with a suggested correction.
A program needs to be interpreted again each time it is run.
Define assembler
An assembler is a computer program that translates a program written in an assembly language into machine code so that it can be directly used by a computer to perform a required task.
Once a program is assembled the machine code can be used again and again to perform the same task without re-assembly.
What are the advantages of an interpreter?
Easier and quicker to debug and test programs during development
Easier to edit programs during development
What are the disadvantages of an interpreter?
Programs cannot be run without the interpreter
Programs can take longer to execute
What are the advantages of a compiler?
A compiled program can be stored ready for use
A compiled program can be executed without the compiler
A compiled program takes up less space in memory when it is executed
A compiled program is executed in a shorter time
What are the disadvantages of a compiler?
It takes a longer time to write, test and debug programs during development
Define IDE
Integrated Development Environment
Used by programmers to aid the writing and development of programs.
There are many different IDEs available; some support one programming language, others can be used for several different programming languages.
What features does an IDE have?
Code editors
Translator
Runtime environment with a debugger
Error diagnostics
Auto-completion
Auto-correction
An auto-documenter and prettyprinting