x86 64bit Assembly Language StepbyStep Tutorial

Learn x86-64 Assembly Language Programming From Scratch
x86 64bit Assembly Language StepbyStep Tutorial
File Size :
1.51 GB
Total length :
6h 12m



x-BIT Development


Last update




x86 64bit Assembly Language StepbyStep Tutorial

What you’ll learn

The general computer architecture
Understand how computer works
Data representation including unsigned and signed numbers, characters.
Master the x86-64 core instructions
How to write assembly programs
Understand the differences between x86-32 and x86-64
How to debug programs

x86 64bit Assembly Language StepbyStep Tutorial


Basic knowledge of one high-level language is recommended
All projects are created in SASM IDE on Windows


Welcome to x86 64-bit Assembly Language from x-BIT Development.This course is intended to teach you x86 64-bit assembly programming. It covers basics about computer architecture, data representation and low-level programming. In this course, we will take you through the step-by-step tutorials and teach you how to write assembly programs for x86 processors. Each section contains:        engaging videos         downloadable resources        quizzes to test what you learnedIn this course you will learn:         x86 assembly language from scratch         The general computer architecture          Data representation and counting systems         The fundamentals of the assembly language         x86-64 core instructions         x64 calling conventions         How to write assembly programs on x86-64 architecture         How to debug programs at the machine level


Section 1: Introduction

Lecture 1 Introduction

Section 2: Computer Architecture

Lecture 2 Introduction to Computer Architecture

Lecture 3 Introduction to Processor Mode

Section 3: Data Representation

Lecture 4 Number Systems

Lecture 5 Representing Integers

Lecture 6 ASCII Strings

Section 4: Assembly Language Basics

Lecture 7 Install SASM

Lecture 8 Assembling and Linking Basics

Lecture 9 First Program

Lecture 10 Debugging

Lecture 11 Defining Variables

Lecture 12 Constant

Section 5: x86-64 Assembly Language Notes

Lecture 13 x86-64 Assembly Language Notes

Section 6: Data Transfer and Basic Arithmetic Instructions

Lecture 14 Mov Instruction

Lecture 15 Xchg Instruction

Lecture 16 A Simple Example

Lecture 17 Inc and Dec Instructions

Lecture 18 Neg Instruction

Lecture 19 Add and Sub Instructions

Lecture 20 Add and Sub Instructions Example

Section 7: Flags

Lecture 21 Flags Register

Lecture 22 Carry Flag

Lecture 23 Overflow Flag

Lecture 24 Sign Flag

Lecture 25 Zero Flag

Section 8: Bitwise Instructions

Lecture 26 And Instruction

Lecture 27 Or Instruction

Lecture 28 And and Or Instructions Example

Lecture 29 Xor Instruction

Lecture 30 Flags Example

Lecture 31 Not Instruction

Section 9: Branch instructions

Lecture 32 Introduction to Branching

Lecture 33 Jmp Instruction

Lecture 34 Test Instruction

Lecture 35 Conditional Branching Part 1

Lecture 36 Conditional Branching Part 2

Lecture 37 Conditional Branching Part 3

Lecture 38 Branching Example 1

Lecture 39 Branching Example 2

Lecture 40 Branching Example 3

Section 10: Array and Addressing Modes

Lecture 41 Introduction to Array

Lecture 42 Immediate Register and Direct Addressing

Lecture 43 Indirect Addressing

Lecture 44 Endianness

Lecture 45 Lea Instruction

Lecture 46 Rip-Relative Addressing

Section 11: Multiplication and Division Instructions

Lecture 47 Mul Instruction

Lecture 48 Div Instruction

Lecture 49 Imul Instruction

Lecture 50 Idiv Instruction

Lecture 51 Imul and Idiv Instruction Example

Section 12: Shift and Rotate Instructions

Lecture 52 Shift Left

Lecture 53 Shift Right

Lecture 54 Rol and Rcl Instructions

Lecture 55 Ror and Rcr Instructions

Section 13: Strings

Lecture 56 Movs Instruction

Lecture 57 Stos Instruction

Lecture 58 Lods Instruction

Lecture 59 Scas Instruction

Lecture 60 Cmps Instruction

Section 14: Stack and Procedures

Lecture 61 Introduction to Procedures

Lecture 62 Stack

Lecture 63 Procedures

Lecture 64 Nested Procedure Calls

Lecture 65 Passing Parameters Part 1

Lecture 66 Passing Parameters Part 2

Lecture 67 Local Variables

Lecture 68 Microsoft x64 Calling Convention

Lecture 69 Microsoft x64 Calling Convention Example

Lecture 70 Single-Line Macros

Lecture 71 Multi-Line Macros

Lecture 72 I/O Macros

Section 15: Conclusion

Lecture 73 Conclusion

Beginners who want to learn x86 64-bit assembly language,People who learned 8086 or x86 32-bit assembly language and want to switch to x86 64-bit assembly language

Course Information:

Udemy | English | 6h 12m | 1.51 GB
Created by: x-BIT Development

You Can See More Courses in the Developer >> Greetings from CourseDown.com

New Courses

Scroll to Top