Tag

strojový kód

Kombinace assembleru a programovacího jazyka C na procesorech ARM (dokončení)

Téma kombinace assembleru a programovacího jazyka C na mikroprocesorech s 32bitovou architekturou ARM dnes dokončíme. Ukážeme si způsob přístupu na haldu (heap), volání služeb jádra, použití programových smyček v assembleru a nezapomeneme ani na poměrně rozsáhlou problematiku práce s hodnotami s plovoucí řádovou čárkou… Pokračovat ve čtení →

Kombinace assembleru a programovacího jazyka C na procesorech ARM

V předchozím článku jsme si ukázali, jakým způsobem je možné zkombinovat zdrojový kód napsaný v programovacím jazyku C s kódem psaným v assembleru. Přitom jsme se zaměřili na 32bitovou architekturu x86 (i386 až i686) a 64bitovou architekturu x86-64. Dnes si ukážeme kombinaci jazyka C… Pokračovat ve čtení →

Použití assembleru v Linuxu: assembler a jazyk C

Assembler v Linuxu se v současnosti používá převážně v těch situacích, kdy je zapotřebí efektivně provést pouze určité specifické paměťově či výpočetně náročné operace. Zbytek aplikace se přitom vytváří v některém vyšším programovacím jazyku, například v C či C++. Z tohoto důvodu je užitečné vědět, jak… Pokračovat ve čtení →

Použití assembleru v Linuxu: RISCová architektura AArch64

Ve všech předchozích částech tohoto seriálu jsme se zabývali především psaním programového kódu pro mikroprocesory s architekturami x86, x86-64 a 32bitovou architekturou ARM. Ovšem stále častěji se můžeme setkat se zařízeními, v nichž je použit nějaký mikroprocesor s architekturou AArch64, tedy se 64bitovým… Pokračovat ve čtení →

Použití assembleru v Linuxu: volání knihovní funkce printf s proměnným počtem parametrů

Téma volání knihovních funkcí z assembleru dnes dokončíme. Ukážeme si totiž, jakým způsobem se volá funkce printf s proměnným počtem parametrů, což je zejména na architektuře x86-64 řešeno poněkud zvláštním způsobem. Všechny dnes popsané příklady budou implementovány jak pro již zmíněnou architekturu… Pokračovat ve čtení →

Použití assembleru v Linuxu: konvence při volání knihovních funkcí na mikroprocesorech ARM

Předchozí článek, v němž jsme si ve stručnosti popsali konvence používané při volání knihovních funkcí na mikroprocesorech s 64bitovou architekturou x86-64, dnes doplníme, protože si řekneme, jakým způsobem se volají knihovní funkce na 32bitových mikroprocesorech s architekturou ARM. Dnešní díl tedy bude zaměřen… Pokračovat ve čtení →

Použití assembleru v Linuxu: volání funkcí ze standardní knihovny jazyka C

V demonstračních příkladech, které jsme si ukazovali v předchozích částech tohoto seriálu, jsme si prozatím vystačili s voláním několika funkcí jádra operačního systému (jedná se o takzvané syscalls). V praxi se však dříve či později dostaneme do situace, kdy je zapotřebí používat i… Pokračovat ve čtení →

Použití assembleru v Linuxu: práce s matematickým koprocesorem (pokračování)

V předchozím článku věnovaném použití assembleru v Linuxu jsme se seznámili se základními vlastnosti matematického koprocesoru využívaného na platformách i386 a x86-64. Dnes si vyzkoušíme aplikaci některých vybraných instrukcí v trojici demonstračních příkladů. Ukážeme si i některé mezní případy a výjimky, které mohou… Pokračovat ve čtení →

This site is not affiliated with or endorsed by the Fedora Project.
Kontakt: [email protected] | Pište pro mojefedora.cz
Některé materiály na těchto stránkách pocházejí z webu fedoramagazine.org
Přihlásit se