
Extended explanation of general purpose registers. NOTE: What is shown in this lesson only applies to x86 and x64 assembly not the old legacy 8086 assembly. For 8086 assembly you can only access up to the AX, BX, CX, DX registers. For EAX, EBX, ECX, EDX x86 is required. For RAX, RBX, RCX, RDX x64 is required. Later in the course we do X86 assembly
This course is intended to teach you x86 assembly programming. This course teaches you how processors work and how machine code is possible. We start the course using an emulator for the legacy Intel 8086 processor where we learn all about registers and the memory segmentation model.
Since we start the course with an emulator it allows me to pause the machine at any moment in time and show you exactly what is going on.
After you learn all about the legacy 8086 processor and how to program assembly for it we then move to the modern processors of today and start writing assembly for those. You are taught how to write 32 bit programs for Windows machine's and most importantly how to communicate with C programs using assembly language. You are shown how to access variables, structures and arrays through just assembly code. We also call C functions and they call our assembly routines.
This course recommends that you have some prior experience in the C programming language or at the very least some programming experience in another language. The reason for this is because part two of the course when I teach modern assembly I reference the C programming language quite a lot since we write assembly that can talk with C.
Royalty Free Music from Bensound