Hardware and Software Flashcards
1
Q
What is hardware?
A
- The term given to the physical components of a computer system
- Includes both the internal and external components of a computer system
2
Q
What is software?
A
- The name given to program code
- Sequences of instructions which are executed in order to perform a task
3
Q
What is application software?
A
- The name given to programs that complete a specific task for the user
- Examples include word processors, web browsers and spreadsheets
4
Q
What is system software?
A
- Operates, controls and maintains the computer and its components
5
Q
What is the operating system (in terms of system software)?
A
- Form of system software
- Allows the user to control the computer with ease
- Provides a virtual machine, hiding the true complexity of the computer from the user
- Manages and controls access to the computers resources including:
- Memory management
- Processor scheduling
- Interrupt handling
6
Q
What are utility programs?
A
- Form of system software
- Used for completing housekeeping tasks such as:
- Data backup
- Data defragmentation
- Data compression
7
Q
What are library programs?
A
- Form of system software
- Contains useful functions that are frequently used by a program
- Used by programmers to simplify the process of developing programs
- Must be imported within the program
8
Q
What are translators?
A
- Form of system software
- Translates between different types of language
- Three types including:
- Compilers
- Assemblers
- Interpreters
9
Q
What are low-level programming languages?
A
- Programs are processor specific
- Directly affect the processor
10
Q
What is machine code?
A
- Form of low-level language
- Uses binary to represent instructions
- Long and difficult to understand
- Programs are prone to errors and difficult to debug
11
Q
What is machine code useful for?
A
- Embedded systems and real-time applications
12
Q
What is assembly language?
A
- Form of low-level language
- Developed to simplify programming
- Uses mneumonics instead of binary instructions
13
Q
Why is assembly language better than machine code?
A
- The use of mneumonics makes assembly language more compact and less error prone than machine code
14
Q
What is a high-level programming language?
A
- Not platform specific
- Must be translated into machine code before execution
- Uses english and maths in instructions
- Examples include Java and Python
15
Q
Evaluate high-level vs low-level programming language
A
- High-level is portable whereas low-level isn’t due to their processor specific nature
- High-level is more understandable than low-level although assembly language is also understandable with mneumonics compared to machine code
- High-level uses commenting and named variable for easy debugging, low-level debugging is hard