This is an introductory course for computer architecture and assembly language. Its main objective is to help developers debug systems using assembler. Help C/C++ developers have a better understanding of the “what’s happening under the hood”. Help security experts to reconstruct the compiled code and find security vulnerabilities, and give SW developers some knowledge on computer architecture and design considerations. Especially helpful for driver developers.
Experienced C/C++ programmers, people are writing kernel drivers, security experts who want an introductory course to computer architecture and the assembly language.
C and C++ languages.
Price: contact us for more details
Запишитесь на курс
Оставьте свои контактные данные и мы свяжемся с Вами
By the end of this course participants shall
– Understand basic computer architecture.
– Get acquainted with coding ASM programs.
– Get acquainted with low-level concepts (stack implementation, calling
– Understand compiling from C to assembler
– Understand C++ real rime requirements.
– Introduction to micro architecture (Von Neumann machine):
– ISA (short introduction)
– ALU, LOAD, Branch data paths.
– Memory hierarchy
– Virtual memory
– Introduction to registers and caching
– Interrupt and exceptions handling.
– Computer Components :
o DRSM o MMU o DMA o IPC
o Pipe line programming
Basic programming Skills:
Writing in assembly:
o The assembly program sections
o Basic instruction sets ALU (MOV, add), memory (load, store),
o Working with file descriptors.
o Working with system calls.
o Working with registers (control and dedicated) o Addressing modes.
– Assembly extended:
Data types initialization Arithmetic instructions
Conditional Instructions loop & recursion
Connection to the real world:
– Compile C to assembler
– Function prologue and epilogue.
– The main function and what happens before main
– Local, static and heap variables
– Object layout and constructor /destructor calls
– Temporary objects