Due to Covid-19 safety restrictions PhoenixTS will temporarily be unable to provide food to our students who attend class at our Training Center; however, our Break Areas are currently open where students will find a constant supply of Coffee, Tea and Water. Students may bring their own lunch and snacks to eat in our breakrooms or at their seat in the classroom or eat out at one of the many nearby restaurants.
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
Assembly Language Programming Training
date
location
price
![[image]](https://stage.phoenixts.com/wp-content/themes/phoenixts-com/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
Due to Covid-19 safety restrictions PhoenixTS will temporarily be unable to provide food to our students who attend class at our Training Center; however, our Break Areas are currently open where students will find a constant supply of Coffee, Tea and Water. Students may bring their own lunch and snacks to eat in our breakrooms or at their seat in the classroom or eat out at one of the many nearby restaurants.