What are the differences between high level languages and machine languages? And how do these differences impact coding?
Python, Perl, Haskell, Lua, and many other programming languages are high level languages. When you code with these languages, you use familiar concepts, for example, loops and data stores.
However, your code is processed by the computer with very different often unfamiliar concepts such as binary numbers and machine language. These internal details are hidden from high level languages. For example, you do not need to know how to assign data to a specific memory register in your computer when you assign a value to a variable in PHP.
Where do high level languages come from? Machine languages, the first computer programming languages, evolved into assembly languages which evolved into high level languages.
Machine languages deal directly with registers to store data and memory addresses for the computer hardware. Assembly languages only work with a specific computer processor and environment. Assembly languages are compiled (or converted) into machine code by a software utility called an assembler. The machine code is then run on a computer.
In contrast, high level languages work with many different operating systems and deal with variables, arrays, and other other abstract ideas easily understood by humans. The conversion from high level to machine code is transparent to coders and people who use software created by high level programming languages.
There are a other useful details to know about high level programming languages:how they are executed, how they work internally, and how they work with data.
Also In The December 2013 Issue
Troy Hunt is a software architect and Microsoft Most Valued Professional (MVP) focusing on security concepts and process improvement in a Fortune 50 company. He's based in Australia.
If you use a password you created that is less than eight characters, your password is vulnerable to hacking. Here are three ways to create and use secure passwords online.
Coding securely doesn't have to kill the joy of programming. In fact, learning how to code securely provides insights into languages and computing.
How to code an HTML email like the ones you open every day turns out to be an offbeat software coding challenge.
How to tell if a web page is secure is one of the most basic yet least obvious ways to protect your data online.
One key computing skill is the ability to use command line interface (CLI) software to enter commands to control a computer. Here are some options.
Lua is a comparatively simple programming language used in a wide range of places, from digital TVs to video games to phone applications. It's also designed to be simple to use and lightweight.
Here is how three programming languages handle a common problem: how do you organize and keep track of useful data?
Some of the most common commands you'll need for a command line interface (CLI), in a Linux command list.
Must read stories about computer science, software programming, and technology for September 2013.
Links from the bottom of all the October 2013 articles, collected in one place for you to print, share, or bookmark.
Here is a deceptively simple math puzzle at least 1200 years old.