Abstraction – Interpret or translate high-level operations into simple computer instructions
Types of System Software:
- Operating System – Supervising program manages the resources of a computer for the benefit of the programs that run on that computer
- Compiler – A program that translates high-level language statements into assembly language statements
- Assembler – A program that translates a symbolic version of instructions into the binary version
In order to communicate to hardware, you need to send electrical signals to it. The signals are categorized by on and off or 1 and 0. Moreover, hardware has a two letter alphabet with each letter as a binary digit or bit. Using bits for both instructions and data is a foundation of computing!
Even though hardware speaks in binary, humans do not which creates a barrier between programmers and their hardware. As a result, an assembler was introduced to translate machine instructions to binary.
High-level Language vs. Machine Language?
- More natural language
- Improved programmer productivity
- Allows programs to be independent of the computer