UNLIMITED

Linux Format

Low-level kernel access and coding

Learning assembly language won’t make you a faster programmer. It won’t enable you to create portable, write-once run-anywhere programs. It’s not object-orientated. It’s not new. So why learn it? The answer is that it just might make you a better programmer. By learning just what a processor can and can’t do, you’re on the way to a deeper understanding of computer science.

A processor doesn’t just perform arithmetic – it also performs Boolean logic operations. Understanding Boolean logic operations teaches you about the Boolean logic gates inside the CPU and how the CPU uses these logic gates to make decisions. That just might make you a more capable computer engineer as well as a better programmer.

Assembly language is a low-level language: it’s specific to a particular processor. You use it to program a specific processor at the hardware level. Compilers understand assembly language, because that’s what they use to create the instructions in high-level languages. C++ is used to create many different programming languages. The C++ compiler strings together lots of assembly language instructions to do its work. Every kind of program ultimately executes machine language on the computer.

Some assembly required

Assembly language is simply machine language with mnemonics. Mnemonics are names given to machine language instructions, also known as op codes, so that we don’t have to remember hundreds of numeric values. It allows us to write a program using identifiers like ADD, SUB, MOV and so on.

High-level languages make programs portable – they enable you to program without worrying about the low-level details of how the CPU works. They provide the abstraction that lets you think about problems at a higher level. Object-orientated languages like C++, Java, C#, Python and so on are ‘higher’ high-level languages that enable you to incorporate the problem domain into your program. The programs you create with an object-orientated language ‘understand’

You’re reading a preview, subscribe to read more.

More from Linux Format

Linux Format4 min read
Mailserver
Thank you for your hard work. Your magazine has helped me teach myself. You let us know about a price rise – I would pay eight quid. Mind you, I’m a doctor! How about an article focusing on Jupiter Broadcasting with its “value for value” model? I bet
Linux Format2 min read
VeraCrypt
Version: 1.26.14 Web: https://veracrypt.fr/en/ There was a time when keeping your data under a username and password was considered good enough protection. These days, however, the only pragmatic approach to keeping your personal data to yourself is
Linux Format1 min read
Firewall Your Home!
Learn all about the ultimate open source password management system and secure your online accounts! We revisit the language du jour and get you up to speed with coding practical tools that are memory-safe. The new way of sharing your audio streams a

Related Books & Audiobooks