advertisement
from the department...
High Level vs. Low Level Languages
Programming languages. topic
Posted by G.Perkins on 18 June, 2002 - 4:19 pm
Hi What is the difference between high level and low level programming languages. What are the features and what are the potential application areas.


Posted by T. Connolly on 19 June, 2002 - 6:48 am
We had a very long thread on this subject a few weeks ago regarding whehter ladder was high or low level and the only thing that was obvious is that there is a huge difference of opinion about what HIGH and LOW mean. My opinion is that the more distance a language puts between you and the hardware, the higher it is, regardless of how complex or simple the actual language is, or more generally: High level=less programmer work. Low Level=more programmer work. In theory the highest level language would be the simplest, as in "Computer, do what I want", so complexity <> level. The higher the language level the more complex the compiler is likely to be, and generally requiring a complex OS to implement, but these are tools of the programming language and can be regarded as separate from the syntax and definition of the language.
You might also look at it this way: The very first assembler was written in machine code. Subsequent assemblers were improved using a mix of assembly and machine code. The first compilers were written in assembly. Latter compilers were written in C and assembly. Each generation resulted in a higher level languge. But now if I wanted to write my own assembler, I would write it in C (using someone else's compiler and assembler). So does that make my assembler high? Of course not. So the confusion is understandable and hence I stick to the definition that higher level=less work.


Posted by Joko Purboyo on 19 June, 2002 - 7:07 am
Hi. high level programming laguages is languages program than use languages or syntax which close to human languages so, it is easy to understanding the languages or syntax sunch as pascal or delphi language program. while the low languages programming is laguages that close to machine languages such as assembler languages.
between both of them there are several "intermediate" languages program such as C++ etc which stand beetwen hi 'n lo languages program


Posted by Anonymous on 8 July, 2004 - 1:35 pm
pls. give me 3 example of low level & high level languages.


Posted by Umair Anwar on 14 October, 2008 - 6:55 am
Hi,

Low level languages are:
1 - Machine Language
2 - Assembly Language

High level languages are:
1 - Visual Basic
2 - Pascal
3 - Java
4 - C++
and many more.


Posted by Daniel MacAlevey on 25 November, 2013 - 11:33 am
> pls. give me 3 example of low level & high level languages.

3 examples of high level languages:

bbc basic
csf pascal
pearl


low level languages are machine-oriented, the differ from one machine to another depending on the instruction set of the cpu.


Posted by Dan on 19 June, 2002 - 10:41 am
I agree with Mr. Connolly's definition. Machine language and assembler require detailed knowledge of every aspect of the computer's architecture, including processor register function, I/O details, memory layout and access methods, etc. Prior to C, the only way programmers could manipulate processor and device registers to the bit level was with machine or assembly code. These low-level languages provide fine-grained control of every function the machine can execute. They are therefore useful for writing high-performance, memory-stingy routines, since a good assembly programmer can optimize for speed and memory usage more effectively than comilers can. (This is less true today than a few years ago, though). When processors were slow and memory expensive (my first computer had 3K of magnetic-core memory) this sort of programming was invaluable. Programmers who write code for small, imbedded processors, (sometimes running without the benefit of an OS at all) probably use low-level languages more than anyone else. Development of high-performance compilers, gains in OS theory, fast processors and cheap, plentiful memory make high-level languages appropriate for most other applications. Freed from the complexity of having to operate at atomic levels, high-level programmers can focus their creative energies on development of power-ful software using familiar, real-world paradigms. Unless you have a compelling need to operate at the bit and register level, the benefit of becoming proficient at low-level programming is questionable, except for one thing - it's an excellent way to learn a great deal about how and why computers work the way they do and you'd become a better programmer/technician for it.


Posted by Jiri Baum on 21 June, 2002 - 6:08 am
Haven't we just had this discussion? Check the archives...

For that matter, you'll probably make a better impression if you don't post your homework questions word for word; looking up all the terms in the index of the textbook (and/or on google) would be a good start.

Jiri
--
Jiri Baum <jiri@baum.com.au> http://www.csse.monash.edu.au/~jirib
MAT LinuxPLC project --- http://mat.sf.net --- Machine Automation Tools


Posted by Vladimir E. Zyubin on 24 June, 2002 - 5:18 pm
Hello List,

High level language is a language that supports the human and the application sides of the programming (typical features: ability to logic structuring of the algorithm, cross-platform independence, problem-oriented syntax/semantic,
etc.).

Low level language is a language that supports the machine side of the programming or does not provide human side of the programming (typical features: lack of identifiers, lack of cross-platform independence, full access to the processor architecture, etc.)

The words "low/high" have no much sense. Because it is a very common characteristic. The choice is depended on the problem under question. The main criteria of the choice is the economic affectivity. In some cases the right solution is a low level language, in other cases - high level.

In some cases it is very difficult to say "what kind of language we have".

I.e. the LD (ladder diagram).

LOW LEVEL FEATURES:
1. problem with identifiers
2. lack of the structuring ability

HIGH LEVEL FEATURES:
1. reduced syntax (lack of full access to the processor architecture)
2. ability to provide more or less comfort debugging/monitoring

OTHER FEATURES:
1. language supported by the big gays of the automation
2. there are enough programmers that know it.
3. problem-orientation - switch control from the relay-based control to the digital-based control
4. vendor-dependence

The LD has both the "low level" features and the "high level" features. I would like to say "it is low-level language", but, I am sure, here are list-members who would like to say "it is high level". Problem.

More constructive would be a short resume of the LD, e.g.:
The LD-usage gives good result in simple projects, when the task is to switch from old relay-based control to the PLC-based control. It is unfit for complex algorithms, in long terms it is undesirable for new projects, and it is unfit for the projects that demand modification,
flexibility... i.e. "active maintenance".

Regards. Vladimir.


Posted by Thomas Ng on 10 September, 2002 - 2:45 pm
Mr. Connolly's definition is OK.
My choice is C (not C++). It's the most
commonly-used language, and executes really quickly. The best reference to start off in C
is still the classic text by Kernighan and Ritchie.
You can learn how to exchange information with the outside world via serial ports and parallel ports.


Posted by Anonymous on 11 February, 2004 - 12:50 pm
High level language is like instructing a person with higher understanding of the task, while low level language is like instructing a person with no understanding of the task.

For example:
If a person understands how a computer works, you can easily instruct them to reboot the computer without having to worry whether the pc is fine, program crashed, program is "hanging", keyboard is locked, or monitor is functioning properly. If a person does not understand how a computer works, you will have to explain the instructions that the person can understand.

Why use low level then?
Let's say your employee is mentally challenged [slow processor speed, limited memory, and no hard drive (uses floppy)], You hired him because he is cheap and affordable. Let us just say his task is just to restart computers, it would be easier to just instruct him to push the power button, wait, and push button again. Simple, 3 instructions takes care of all exceptions.

Things to note in scenario:
How much you had to do.
How much you have to know yourself.
How effective was the process.
How much stress/relief.
How much it costs.

This is why you deal with the "lesser understanding" people around you everyday. Why have an $80/hr personnel distribute mail even though he can do a better job than the $5/hr personnel?


Posted by masebo benjamini on 14 February, 2011 - 2:39 am
low level language
1.machine language
2.assembly language

high level language
i. COBAL
ii. C
iii. c++

Your use of this site is subject to the terms and conditions set forth under Legal Notices and the Privacy Policy. Please read those terms and conditions carefully. Subject to the rights expressly reserved to others under Legal Notices, the content of this site and the compilation thereof is © 1999-2014 Nerds in Control, LLC. All rights reserved.

Users of this site are benefiting from open source technologies, including PHP, MySQL and Apache. Be happy.


Fortune
"I do not know myself, and God forbid that I should."
-- Johann Wolfgang von Goethe
Advertise here
Advertisement
our advertisers
Help keep our servers running...
Patronize our advertisers!
Visit our Post Archive