Course Information
- Available
- *The delivery and distribution of the certificate are subject to the policies and arrangements of the course provider.
Course Overview
Learn Assembly Language from scratch MASM using Irvine
This course focuses on programming microprocessors that compatible with Intel and AMD processors with 32 bit and 64 bit of Microsoft Windows.
In this course we will use MASM (Microsoft Macro Assembler) which is included in Microsoft Visual Studio using Irvine.
In this course, you will learn basic principles about assembly language, also you will learn the architecture of Intel processor, this course will make you better in Assembly programming and debugging, hardware manipulation and data representation.
For this course, you should have programmed in at least one high-level language such as Python, Java, C.
This course will cover the following topics:
1-Numbering systems and data representation (Decimal, Binary and Hexadecimal, Binary and Hexadecimal addition and subtraction).
2- Assembly Language Fundamentals and defining data (types of registers, defining string, Mnemonics, Operands, Directives, Instructions and labels).
3-Data transfer instructions (MOV, MOVZX, MOVSX and XCHG)
4-Data related operators and directives (ALIGN, LENGTHOF, OFFSET, PTR, SIZEOF and TYPE).
5-Inderict addressing ( Indexed operands and Pointers).
6-Addition and subtraction (Flags affected by addition and subtraction, INC and DEC instructions).
7-Procedures and stack operations (CALL and RET instructions, Stack parameters, POP and PUSH and LEA instructions).
8-Boolean and comparisons instructions (AND, NOT, OR, TEST and XOR instructions)
9-Conditional jumps and loop instructions (Conditional structure, Unconditional JMP and LOOP instructions, Jump based on equality JE JNE JCXZ JECXZ, Jump based on signed comparisons, Jump based on unsigned comparisons, Jumps based on specific flag values, LOOPZ LOOPNZ LOOPE and LOOPNE instructions, While loops).
10-Shift and rotate instructions (RCL, RCR, ROL, ROR, SHL, SHR, SHLD and SHRD).
11-Multiplications and division instructions (MUL, IMUL, DIV and IDIV).
Course Content
- 12 section(s)
- 95 lecture(s)
- Section 1 Introduction
- Section 2 Number systems and data representation
- Section 3 Basic language elements
- Section 4 Defining Data
- Section 5 Data transfer instructions
- Section 6 Data related operators and directives
- Section 7 Indirect addressing and Addition and subtraction
- Section 8 Procedures and Stack operations
- Section 9 Boolean and comparison instructions
- Section 10 Conditional jumps and loop instructions
- Section 11 Shift and rotate instructions
- Section 12 Multiplication and division instructions
What You’ll Learn
- Write and debug assembly programs with MASM at the machine level for x86 and intel64 processors
- Number systems and data representation
- Assembly language basic elements
- Defining data
- Data transfer instructions
- Addition and subtraction
- Operators and directives
- Indirect addressing
- Procedures and stack operations
- Boolean and comparison instructions
- Conditional jumps
- Shift and rotate instructions
- Multiplication and division instructions
Skills covered in this course
Reviews
-
VVictor Gonzalez
Very straightforward and exactly what I needed for my university course.
-
NNnanna samuel Paul
phenomenon
-
RRaymond Daly
Overall, it gave me a good introduction to assembly lang
-
JJulio Alberto Meza
Good so far