x86 Assembly Adventures (Part 1): Counting with two digits
Udemy
Course Summary
The Binary numeric system
-
+
Course Description
What if you knew how computers work? 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:
- Adding and subtracting numbers in the binary representation.
- Converting between decimal (The "normal") numbers, and binary numbers.
- Dealing with negative binary numbers.
- You are the kind of person who really likes to know how things work. In this course you are going to get solid understanding on how computer programs work from the inside.
- Become a better programmer - Knowing how things work down there will help you take better decisions, even as a high level programmer. If you were always wondering what is the stack, or what are those pointers everyone talks about, you came to the right place.
- Write faster code - When you really want to get the most of your processor, writing in raw Assembly is needed. We are not going to talk about optimizations in this course, however you will get a solid foundations so that you can continue exploring on your own.
- You want to become a reverse engineer or a security researcher, read the code of viruses or look for software vulnerabilities. As most of the time the original source code will not be available to you, solid understanding of x86 Assembly Language is mandatory.
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:- You are using a Windows operation system. (The course videos use Windows 7). It is recommended to use at least Windows XP.
- You have an intel x86 processor. (If you don't know what you have then you have x86 processor, trust me).
- Assembly flavour: x86 32 bits protected mode.
- Assembler: The Flat Assembler (FASM)
- Debugger: WinDbg.
-
+
Course Syllabus
- Intro
- About this course
- Binary numeric system
- Addition and Subtraction In bases 10 and 2
- Base conversion methods
- Base conversion discussion and examples
- The Hexadecimal base and its relation to base 2
- Hexadecimal base (Bonus)
- Idea of Signed Numbers in base 10
- Binary Signed numbers: The Two's complement
- Closer look at Signed binary numbers