1.2.2 Applications Generation Flashcards
Describe and give examples of applications software
Performs generic tasks for the user.
Examples:
- Database (DBMS)
- Word processor
- Spreadsheet
- Graphics editor
- Desktop Publisher (DTP)
Describe and give examples of utility software
A program with one specific purpose
A piece of system software used for the maintenance of the system
Examples:
- Disk Defragmenter
- Compression Utility
- Anti-Virus/Malware
- Device driver
- Firewall
Describe open-source software
Source code is freely available for others to amend / recompile
Can be built on to tailor the program to specific needs without starting from scratch
Code open for bugs to be spotted and fixed.
Has the benefit of a community potentially improving the system
Describe closed-source software (propriety)
The source code is not made available
Distributed in binary form
There is no permission to amend the program code, so cannot be ‘tweaked’
Users are sold a license to use it (with conditions).
Describe machine code
The output of a translator
Uses binary notation (0101010101000011)
Dependent on architecture
Harder to program
Describe high-level languages
Not architecture specific
Can be recompiled for different architectures.
Close to English
Describe assembly language
Uses mnemonics to represent machine code instructions/opcodes
Consists of simple instructions
Specific to the instruction set of the given processor
What is a translator?
Software that converts code from high-level, or assembly, to machine code
What are the 3 types of translators?
Interpreter
Compiler
Assembler
Describe an interpreter and give an example of a language that would use one.
Translates source code every time the program is run
The user needs access to the source code to run the program
Will run on any machine
The slowest option for translators
Translates code line by line
Example: JavaScript
Describe a compiler and give an example of a language that would use one.
Machine dependent - different compilers are needed for each type of machine
Creates an executable program (.exe)
Users do not see the source code
Will run quicker than the other options.
Translates all the high-level code at once
Example: C#
Describe an assembler and give an example of a language that would use one.
Used to convert assembly language into machine code
Replaces mnemonic opcodes with machine codes
Replaces symbolic addresses with numeric addresses
Creates one line of object code for each line of source code.
Example Assembly Language