COMP2 - Software Flashcards
Imperative Language (Third Gen)
Instructions executed in a programmer defined sequence.
High Level Language (Third Gen)
Language that uses English-like and more meaningful words.
Declarative (Forth Gen)
Define WHAT is to be computed rather than HOW it is to be done.
Operating System
Provides an interface between the user and the computer.
Library Programs
Allow sharing of run-time code across programs.
Utility Programs
Perform a specific task related to working with computers (eg: file compression or firewall).
Language Translators
Used to translate 2nd generation languages or higher into machine code.
Assembler
1) Assembler: translates assembly code into machine code.
Why Assembler?
1) Fast execution of program needed (eg: on mobile phones).
2) Performing operations not available on higher-level languages (eg: directly addressing registers).
Compiler
2) Compiler: translates high level languages into object code.
Interpreter
3) Interpreter: analyses and executes a high level language program line by line.
Advantages of Compiler over Interpreter
1) Object code cannot be altered so good for distribution.
2) Object code runs faster as it doesn’t need translating.
3) Don’t need compiler software on machine running object code.
Advantages of Interpreter over Compiler
1) Can be executed immediately as don’t need to wait to be compiled.
2) Good for testing sections of code as runs line by line.
General Purpose Software
Software that can be used for many different tasks (eg: word processor).
Application Software
Allows users to perform non-computer tasks (eg: writing a letter).