2020-05 [cvičenie] výnimky - otázky a odpovede
Preber si túto prednášku so svojou AI
Skopíruj pripravený podklad a vlož ho do ChatGPT, Claude alebo inej AI — bude ťa učiť alebo skúšať len z tejto prednášky.
Zhrnutie prednášky
Cvičenie sa venuje otázkam a odpovediam k práci s Gitom a k analýze assembly kódu RISC-V. Vyučujúci najprv zdôrazňuje dôležitosť čítania chybových hlášok, manuálov a tutoriálov (napríklad k Git commitu alebo registru STVAL) namiesto okamžitého pýtania sa na fóre. Následne sa spoločne rozoberá disassemblovaný kód programu usercall.c – identifikujú sa registre obsahujúce argumenty funkcií, adresy volaní funkcií F a G, adresa funkcie printf a spôsob, akým inštrukcie AUIPC a JALR spolu vypočítavajú cieľovú adresu skoku. Diskutuje sa aj optimalizácia kompilátora, ktorý vie vopred vypočítať jednoduché výrazy. Na záver sa analyzuje výstup programu s formátovacími reťazcami %x a %s, vrátane hexadecimálneho zápisu čísla a interpretácie reťazca v pamäti (ASCII hodnoty, ukončovacia nula, poradie bajtov).
- - Dôležitosť čítania chybových hlášok, manuálov (napr. git commit) a tutoriálov pred kladením otázok na fóre
- - Identifikácia registrov obsahujúcich argumenty funkcií v disassemblovanom RISC-V kóde
- - Kompilátor dokáže vopred vypočítať hodnoty jednoduchých výrazov bez behu programu
- - Nájdenie adresy funkcie printf a analýza inštrukcie jump (JAL) v kóde
- - Výpočet cieľovej adresy skoku pomocou kombinácie inštrukcií AUIPC a JALR (relatívny offset od PC)
- - Interpretácia výstupu printf s formátovačmi %x (hexadecimálny výpis) a %s (reťazec)
- - Analýza uloženia a poradia bajtov reťazca v pamäti vrátane ukončovacej nuly (ASCII)
Zhrnutie pripravené s pomocou AI z prepisu videa.
nechodím na prednášky