(home) (about) (rss)

Part 2, Section 3:
A Bit of Programming.

Assembly For Linux.

[This part is under construction!]

If you've made it this far, Kudos; you're already passed the first step to becoming a programmer! If you'd like, you may stop at this point and play around with Python a bit more, or even venture into other languages like Java --- the more "programming maturity" the better, but it isn't strictly necessary.

Here, we step back and ask, "That was certainly nice of Python to do all those things for me, but how did it do them?" You may recall from the first few lessons that computers generally work in 1's and 0's, and Python is written almost entirely in english words! Moreover, we didn't need to worry about where things went when we defined or asked for variables or when we wanted to print something out. This is similar to having a bicycle and riding it everywhere but not knowing how any of the parts work. To remedy this, we're going to step back quite a bit and dig downwards into the depths to get as near as possible to the language of the computer itself. While it is possible to code directly in 1's and 0's, the closest reasonable way to look at the way computers process things is through assembly language.

Similar to how we programmed in Python, we will program in Assembly; though, because it is not especially important to us to make crazy complex programs in Assembly (we can already do this in Python!) we're going to make extremely simple programs and see how those work to give us a good idea of how the computer works in general.

For this section I've chosen to use the e-book "Programming from the Ground Up" (and not just because we both happened to use the phrase 'from the ground up'!). It is beginner-friendly, well-written, and it covers everything we'll need to know about Assembly. We will not be reading the entire book, though most of it is accessible for a beginner.

Warning: Make sure that your version of Ubuntu is 32-bit, or you will not be able to work along with the examples in the book.

⇐ Back to 2.2HomeOnwards to 2.4 ⇒