Chapter 7 High and Low Level Languages

A programming language is a language that is used to interact with a computer system.

An algorithm is a set of pre programmed instructions a computer follows.  Can be written in high and low level languages

A High Level Language is a language similar to human language that programmers can interact with easily and understand.  Languages designed with operator/programmer in mind.  Gives programmers the ability to write code quickly, debug and maintain. Such as Python, JavaScript, C++, etc. 

A Low Level Language is a language that relates to specific architecture and hardware of a particular system from machine code, binary and hexadecimal.  Assembly languages needs a translator in order to be translated into machine code (binary).  The assembly language is more direct and more quicker in CPU. 

Assembly language – Not a common language programmers write in

    1. This language enables programmers to make use of machine dependent instructions
    2. Direct code such as assembly enables quick completion of instructions
    3. A language used by programmers when programming CPU’s

A machine codis:

  • A language commonly written in hexadecimal and binary form
  • Not a widely used language due to the complexity i.e. difficult for programmers to work with and understand

Translators:

Computers do not understand high level languages, technology makes use of translators as computers are unable to recognize anything that isn’t 0 or 1

Compiler – Translates HLL to machine code.  Code can be reused after translation

Interpreter – Reads and performs actions from HLL, does not reuse code (It wont remember the code and store even if you run it multiple times)

Assemblers – Assembly languages to machine code, commonly used by internal components such as the CPU

Using an Integrated/Interactive Development Environment (IDE):

Most high level programming languages offer the use of an IDE for program development. This contains an editor with an interpreter and/or compiler together with debugging tools, which can improve the speed of program development.

 

 

Advertisements