Course Overview
Our four-day, instructor-led Assembly Language Programming Training course will teach developers to convert to machine code using an assembler. Participants will learn to do the following:
- Obtain deeper understanding of the underlying platform
- Understand binary arithmetic and logic operations
- Create elegant and efficient code in Assembly language
- Understand how to link Assembly code to outer world
- Obtain in-depth understanding of relevant internal mechanisms of Intel CPU
- Write stable, efficient and elegant patches for running processes
Schedule
Currently, there are no public classes scheduled. Please contact a LEXX LIVETraining Consultant to discuss hosting a private class at 301-258-8200.
![[image]](https://live.lexx.com/wp-content/themes/lexx-live/assets/images/temp/image-9@2x.jpg)
Not seeing a good fit?
Let us know. Our team of instructional designers, curriculum developers, and subject matter experts can create a custom course for you.
Learn more about custom training
Course Outline
Intel Architecture
- Intel Architecture
- Processor registers
Setting Up a Development Environment
- Setting up a development environment
- Microsoft macro assembler
- GNU assembler (GAS)
- Flat assembler
Intel Instruction Set Architecture (ISA)
- Assembly source template
- Data types and their definitions
- A debugger
- The instruction set summary
Memory Addressing Modes
- Addressing code
- Addressing data
- Far pointers
Parallel Data Processing
- SSE Biorhythm calculator
- AVX-512
Macro Instructions
- What are macro instructions?
- An introduction to calling conventions
- A note on flat assembler’s macro capabilities
- Macro instructions in MASM and GAS
- Other assembler directives (FASM specific)
Data Structures
- Arrays
- Structures
- Linked lists
- Trees
- Sparse matrices
- Graphs
Mixing Modules written in Assembly and Those written in High Level Languages
- Crypto Core
- Interfacing with C/C++
- Assembly and managed code
Operating System Interface
- The rings
- System call
- Using libraries
Patching Legacy Code
- The executable
- The issue
- PE files
- ELF executables
Oh, Almost Forgot
- Protecting the code
- A bit of kernel space
LEXX Live is registered with the National Association of State Boards of Accountancy (NASBA) as a sponsor of continuing professional education on the National Registry of CPE Sponsors. State boards of accountancy have final authority on the acceptance of individual courses for CPE credit. Complaints re-garding registered sponsors may be submitted to the National Registry of CPE Sponsors through its web site: www.nasbaregistry.org
