The x86 Adventures series teaches you your computer's language - x86 Assembly Language, from scratch. No prior knowledge is assumed.
[Part 1] Counting with two digits
This is the first chapter of x86 Assembly Adventures. Here we begin with the really basics - How to live in the binary system - A system where instead of 10 digits, we have only two: 0 and 1. If you have ever seen all those zeroes and ones in movies - this is what we are going to learn here.
Don't worry if you never liked math at school, if you can figure out how to buy stuff at the grocery shop, I assure you that you are going to understand the ideas presented here.
We will mainly discuss the following subjects:
At this part of the course we will not yet see any actual assembly code. We have to learn this first, so please be patient :) . All of the exercises for this part are mostly theoretic. You have to sit down with a pen and paper and think a bit. (But really just a bit). It is very important that you do the exercises, or at least be sure that you know how to answer everything before you move on to the next part.
Why learn x86 Assembly Language?
Course structure
The course is made of video lectures. A lecture could be from a presentation, or a real world example, showing me doing stuff at the computer.
Almost every video lecture is accompanied by some kind of exercise (You will be told during the lecture, don't worry :) ) The exercises are open source. They are attached here as a rar file, however you could also get them on github. (See "About this course" video for more information).
It is crucial that you complete the exercises. You will learn a lot from the lectures, but it is pretty much a waste of your time and money if you don't do the exercises. (Or at least verify that you know how to do them, if you are more experienced).
Course tech stack
No prior knowledge is assumed for this course, but I do assume some things regarding your system, so make sure that everything here describes you:
For the tech savvy, some more details about the tools we are going to use in this course:
Using Linux? Most of the exercises were ported to linux, however the videos show me using windows 7. Contact me if you are not sure.