Software vs Hardware

Abstraction – Interpret or translate high-level operations into simple computer instructions


Hardware and software as hierarchical views

Types of System Software:

  1. Operating System – Supervising program manages the resources of a computer for the benefit of the programs that run on that computer
  2. Compiler – A program that translates high-level language statements into assembly language statements
  3. 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 to machine language

High-level Language vs. Machine Language?

  1. More natural language
  2. Improved programmer productivity
  3. Allows programs to be independent of the computer

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s