computer language

Low Level Programming Language

5:41 pm

A high-level language is an advanced computer programming language that isn't limited by the computer, designed for a specific job, and is easier to understand. Today, there are dozens of high-level languages; some examples include BASIC, C, FORTAN, Java, C++ and Pascal. These are independent of the internal machine code of any particular computer.

High-level languages are used to solve problems and are often described as problem-oriented languages; a low-level language is the opposite of a High Level Language. It is one which exposes a significant amount of the computer's inner workings; for instance, in C Language, one deals with the concept of memory and pointers, whereas in Haskell Language, there is no concept of storing data. This aspect of CeeLanguage is low-level. The lowest-level language is MachineCode, which hides no details of the machine; not even the bit patterns used to form instructions are abstracted.

Low-level languages have the advantage that the programmer is able to tune the code to be smaller or more efficient, and that more system-dependent features are sometimes available. They have the disadvantage that they are often (usually?) harder to program in.

In computing, a low-level programming language is designed for a particular computer and reflects its internal Machine Code; low-level languages are therefore often described as machine-oriented languages. They cannot easily be converted to run on a computer with a different central processing unit, and they are relatively difficult to learn because a detailed knowledge of the internal workings of the computer is required. Since they must be translated into machine code by an assembler program, low-level languages are also called Assembly Languages.

A mnemonic-based low-level language replaces binary machine-code instructions, which are very hard to remember, write down, or correct, with short codes (mnemonics) chosen to remind the programmer of the instructions they represent. For example, the binary-code instruction that means ‘store the contents of the accumulator’ may be represented with the mnemonic STA (STore to Acummulator).

In contrast, high-level languages are designed to solve particular problems and are therefore described as problem-oriented languages: for example, BASIC was designed to be easily learnt by first-time programmers; COBOL is used to write programs solving business problems; and FORTRAN is used for programs solving scientific and mathematical problems

assembly language

Assembly language

4:56 pm

An assembly language is a low-level programming language for a computer, or other programmable device, in which there is a very strong (generally one-to-one) correspondence between the language and the architecture's machine code instructions. Each assembly language is specific to a particular computer architecture, in contrast to most high-level programming languages, which are generally portable across multiple architectures, but require interpreting or compiling.

Assembly language is converted into executable machine code by a utility program referred to as an assembler; the conversion process is referred to as assembly, or assembling the code.

Assembly language uses a mnemonic to represent each low-level machine operation or opcode. Some opcodes require one or more operands as part of the instruction, and most assemblers can take labels and symbols as operands to represent addresses and constants, instead of hard coding them into the program. Macro assemblers include a macro-instruction facility so that assembly language text can be pre-assigned to a name, and that name can be used to insert the text into other code. Many assemblers offer additional mechanisms to facilitate program development, to control the assembly process, and to aid debugging.