Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Learning Assembly - Intel 32-bit Architecture with NASM

Dr Josh Stroschein via YouTube

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
Master assembly language programming for Intel 32-bit architecture through comprehensive video lectures originally taught at Dakota State University. Learn fundamental concepts starting with setting up a development environment using NASM assembler and Microsoft C Compiler, then progress through essential topics including CPU registers and components, bitwise operations, assembly mnemonics, and hexadecimal conversion. Explore program segments while gaining hands-on debugging experience with GDB, WinDbg, and time-travel debugging techniques. Understand data representation through signed and unsigned integers, sign extension, and multiplication/division operations. Develop proficiency in control flow using conditionals, shift and test operations, and bitwise manipulations while learning about endianness. Dive deep into memory management concepts including stack operations, function creation and calling conventions, argument passing, and local variable handling using EBP register. Study advanced topics such as enter/leave instructions, array manipulation, load effective address (LEA) operations, and security concepts including buffer overflows and basic shellcode examples. Practice tracing stack usage and analyzing stack frames using debugger tools to reinforce understanding of low-level programming concepts.

Syllabus

Getting Started with Assembly - Creating a Development Environment with NASM & Microsoft C Compiler
Debugging Assembly Programs Using WinDbg and Time-Travel Debugging - Getting Started with Assembly
01 - Introduction to Assembly
02 - Registers and Components of the CPU
03 - Bitwise Operations
04 - Assembly Mnemonics
05 - Converting to Hexadecimal
06 - Program Segments and Debugging with GDB
07 - Signed and Unsigned Integers
08 - Sign Extension
09 - Mul and Div
10 - Conditionals
11 - Shift and Test
13 - Bitwise Operations and Endianess
14 - The Stack
15 - Functions
16 - Function Arguments
18 - EBP + Arguments
19 - EBP & Locals
20 - Enter & Leave
22 - Arrays
23 - Load Effective Address (LEA) and Buffer Overflows
24- Basic Shellcode Example
Tracing Stack Usage and Stack Frames in a Debugger

Taught by

Dr Josh Stroschein

Reviews

Start your review of Learning Assembly - Intel 32-bit Architecture with NASM

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.