please dont rip this site

High Level Languages vs Low Level "Languages"

Let's start with the lowest possible "Language": Machine code.

Machine "code" is basically just the numbers that the processor knows how to directly execute. Typically those numbers are added up from a series of smaller numbers that specify things like the source of the data, the destination for the data and the operation to perform on the data. You could image a 3 digit number where the first digit specifies what to do that that data. e.g. 1 to add it, 2 to subtract it, 3 to multiply it, and so on. Then the middle digit might select the data source from a list of registers, memory at the location specified by a register, or combination of registers, or the memory in the next program address. Like 1 for the main register (the accumulator), 2 for the value in the next program address, 3 for the memory address register, and so on. And then the last digit says where to put it. So as an example, 121 might (_2_) take in a number from the next program address, (1__) add it to the value in the main register, and then (__1) place that value in the main register. If the next value had a 1 in it, then the accumulator would be incremented (increased by one) so we are counting. This sort of machine code is the most simple code imaginable.

Next, is what we call Assembly Language. This is where we write a program that has that list of sources, operations and destinations and then it takes in characters from the user (the program) and compiles it to the machine code by looking up the names on the list and putting out the numbers. So instead of putting in 211, we might write out "add acc, #1" and that would get translated into 121 with the #1 putting the value in the next address. Extra credit: Who wrote the very first assembler?

And after that, we can imagine a very simple language that translates algebraic sentences into assembly language. Like in the C language, we might say "a=a+1" and that would become "add acc, #1" and that would become 121, 1.

So those are all pretty low level. Some people will call C a high level language, but it's a pretty low high.

The point here is this: You don't have to think about the accumulator, or what goes in what address, or what code number tells the processor to do something. You can just type in instructions in something more or less like a human language and the computer figures out how to compile that down to machine code... from your higher level language. +


file: /Techref/language/low2high.htm, 2KB, , updated: 2023/4/8 19:22, local time: 2024/4/18 22:31, owner: JMN-EFP-786,
TOP NEW HELP FIND: 
3.14.142.115:LOG IN

 ©2024 These pages are served without commercial sponsorship. (No popup ads, etc...).Bandwidth abuse increases hosting cost forcing sponsorship or shutdown. This server aggressively defends against automated copying for any reason including offline viewing, duplication, etc... Please respect this requirement and DO NOT RIP THIS SITE. Questions?
Please DO link to this page! Digg it! / MAKE!

<A HREF="http://www.massmind.org/Techref/language/low2high.htm"> High Level Languages vs Low Level "Languages"</A>

After you find an appropriate page, you are invited to your to this massmind site! (posts will be visible only to you before review) Just type a nice message (short messages are blocked as spam) in the box and press the Post button. (HTML welcomed, but not the <A tag: Instead, use the link box to link to another page. A tutorial is available Members can login to post directly, become page editors, and be credited for their posts.


Link? Put it here: 
if you want a response, please enter your email address: 
Attn spammers: All posts are reviewed before being made visible to anyone other than the poster.
Did you find what you needed?

 

Welcome to massmind.org!

 

Welcome to www.massmind.org!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  .