Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
event:codenight:programovani [2013/11/11 20:34]
jenda created
event:codenight:programovani [2015/06/07 19:46] (current)
ruza
Line 1: Line 1:
 +==== Základy x86 assembleru (1-2 večery) ====
 +
 +Sylabus:
 +  * Základní kurz architektury x86 / x86_64 - nebudou z vás zruční assembleroví programátoři,​ ale se štěstím budete schopni pochopit, co nějaká jednodušší posloupnost instrukcí (třeba disassemblovaná funkce) dělá
 +  * AT&T vs. Intel syntax assembleru
 +  * Registry, zásobník
 +  * Paměť a její adresování,​ režimy procesoru (stručně)
 +  * Základní instrukční sada; přesuny dat, aritmetika, skoky, cykly
 +  * Testy a příznaky
 +  * Binární kódování instrukcí (stručně)
 +  * GNU toolchain: Překlad assembleru, disassemblování,​ cvičení
 +  * SystemV ABI
 +    * Funkce v assembleru: předávání parametrů, zásobník podruhé (stack frames)
 +    * Systémová volání: předávání parametrů, návratová hodnota, příklady
 +  * FP, MMX, SSE, AVX registry a instrukce (stručně)
 +
 +Je dobré mít s sebou linuxový notebook, není to ale nutné (na cvičné úlohy asi bude čas až na konci sezení pozdě večer). Odhadovaná délka cca 2.5h.
 +
 ==== Jazyk C pořádně (1-2 večery) ==== ==== Jazyk C pořádně (1-2 večery) ====
  
Line 21: Line 39:
     * Asynchronní programy; POE (brmdoor)     * Asynchronní programy; POE (brmdoor)
     * Výjimky: eval + die :)     * Výjimky: eval + die :)
- 
-==== Základy x86 assembleru (1-2 večery) ==== 
- 
-  * Základní kurz architektury x86 / x86_64 - nebudou z vás zruční assembleroví programátoři,​ ale se štěstím budete schopni pochopit, co nějaká jednodušší posloupnost instrukcí (třeba disassemblovaná funkce) dělá 
-  * AT&T vs. Intel syntax assembleru 
-  * Registry, zásobník 
-  * Paměť a její adresování,​ režimy procesoru (stručně) 
-  * Základní instrukční sada; přesuny dat, aritmetika, skoky, cykly 
-  * Testy a příznaky 
-  * Binární kódování instrukcí (stručně) 
-  * GNU toolchain: Překlad assembleru, disassemblování,​ cvičení 
-  * SystemV ABI 
-    * Funkce v assembleru: předávání parametrů, zásobník podruhé (stack frames) 
-    * Systémová volání: předávání parametrů, návratová hodnota, příklady 
-  * FP, MMX, SSE, AVX registry a instrukce (stručně) 
  
 ==== Lowlevel Linux Userspace (dva večery?) ==== ==== Lowlevel Linux Userspace (dva večery?) ====
Line 53: Line 56:
     * Symboly, relokace, GOT     * Symboly, relokace, GOT
   * Case studies: retty, linuxtycoon,​ screenenv   * Case studies: retty, linuxtycoon,​ screenenv
 +
 +recording: http://​nat.brmlab.cz/​talks/​2013-12-11-assembler.mkv
 +{{tag>​video}}
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki