Články
Zprávičky
Fórum
Podpořte Root
Školení
Galerie
Blogy
Knihy
Jak na Linux
Zdroják
Hledat
Root.cz
Kompilery a procesory
Vše pro to, abyste zkompilovali svá dílka do spustitelné podoby.
1
–
30
/
518
První strana
Předchozí strana
1
2
3
4
5
6
7
Následující strana
Poslední strana
Optimalizace programů překládaných céčkovým překladačem cc65 pro procesory MOS 6502
Popíšeme si optimalizace prováděné překladačem cc65, který je určen pro cross překlad programů do assembleru osmibitových mikroprocesorů MOS 6502. Taktéž se zmíníme o kombinaci C+asm.
Pavel Tišnovský
29. 9. 2026
Doba čtení:
87 minut
Překladače jazyka C pro osmibitové domácí mikropočítače Atari
O jazyku C se někdy s nadsázkou říká, že je to „přenositelný assembler“. Programy psané v C skutečně mohou být velmi efektivní, ovšem do značné míry záleží na kvalitě céčkového překladače a ještě více na vlastnostech mikroprocesoru.
Pavel Tišnovský
24. 9. 2026
Doba čtení:
89 minut
GCC 17 přidává podporu pro -mtune=native -mcpu=native
Doposud nemá kompilátor gcc podporu pro -mtune=native a -mcpu=native na architektuře RISC-V. Jde o automatické rozpoznání procesoru, na kterém překládáte, a zapnutí patřičných optimalizací. Díky tomu výsledná binárka běží rychleji. Na všech…
Jan Fikar
4. 9. 2026
Hardcore vývoj a ladění programů pro osmibitová Atari s využitím Turbo Monitoru a tabulky instrukcí
Programy pro osmibitová Atari není nutné vyvíjet pouze s využitím plnohodnotných assemblerů. Použít lze i monitory, například tuzemský Turbo Monitor, s nímž se dnes seznámíme. V Turbo monitoru lze provádět ladění, úpravy her (nekonečný počet životů) atd.
Pavel Tišnovský
3. 9. 2026
Doba čtení:
82 minut
Makro assembler MAC/65 a debugger DDT v praxi
Navážeme na článek o vývoji pro osmibitové mikropočítače Atari a ukážeme si použití slavného assembleru MAC/65, což po dlouhou dobu byl nejlepší assembler pro mikroprocesory MOS 6502.
Pavel Tišnovský
27. 8. 2026
Doba čtení:
82 minut
GCC oznamuje strategii v oblasti umělé inteligence
Řídicí výbor GCC oznámil, že přijal zásady pro příspěvky v oblasti umělé inteligence, které doporučila pracovní skupina GCC pro politiku v oblasti umělé inteligence. „Očekáváme, že se tato politika bude i nadále vyvíjet, a budeme ji pravidelně…
Petr Krčmář
30. 7. 2026
Jeden změněný řádek v GCC a moderní Core a Ryzeny zrychlují o 12 %
Pouhá jednořádková změna v GNU Compiler Collection (GCC) a běh programů GCC kompilovaných zrychluje o zhruba 12 % na všech moderních procesorech AMD či Intel. Jde o zjištění Lili Cui z Intelu, která přišla na to, že cena za chybné predikce je…
David Ježek
24. 6. 2026
LunarML: definice a volání různých variant funkcí
Nejprve se budeme zabývat definicí a voláním různých variant funkcí, včetně jejich curryfikace. Dále si ukážeme, jak jsou zpracovávány chyby a na závěr se ve stručnosti seznámíme s definicí uživatelských rekurzivních datových typů.
Pavel Tišnovský
9. 6. 2026
Doba čtení:
55 minut
LunarML: až překvapivě kvalitní transpiler z jazyka Standard ML do jazyků Lua a JavaScript
Seznámíme se s projektem nazvaným LunarML. Jedná se o transpřekladač (transpiler) transformující zdrojové kódy zapsané v jazyce ML (resp. Standard ML) do programovacích jazyků Lua a JavaScript.
Pavel Tišnovský
2. 6. 2026
Doba čtení:
45 minut
Režim fast math v překladačích: přednosti, zápory a možné pasti
Moderní překladače při zpracování hodnot s plovoucí řádovou čárkou dodržují normu IEEE 754, a to včetně rozšíření této normy (IEEE 754–2008). To sice zajišťuje stabilitu, ale někdy je vhodné se od této normy odklonit.
Pavel Tišnovský
24. 2. 2026
Doba čtení:
38 minut
Technologie mezijazyků (mezikódů) a bajtkódů: LLVM IR a SIMD
LLVM IR je navržen tak, aby byl efektivně využitelný i na moderních architekturách mikroprocesorů. Prakticky všechny podporují operace typu SIMD a některé operace tak lze provádět se skalárními hodnotami i s vektory.
Pavel Tišnovský
19. 2. 2026
Doba čtení:
69 minut
Technologie mezijazyků (mezikódů) a bajtkódů: LLVM IR (3)
Dnes dokončíme popis všech skalárních instrukcí, které jsou podporovány v LLVM IR a současně které jsou využívány překladačem jazyka C. Ukážeme si práci s poli, výpočty s hodnotami typu half float a instrukci SELECT.
Pavel Tišnovský
12. 2. 2026
Doba čtení:
39 minut
Šestnáct Claude AI vytvořilo překladač jazyka C v Rustu
Šestnáct instancí Claude Opus 4.6 AI pracovalo na překladači jazyka C v Rustu, který by uměl zkompilovat linuxové jádro. Ten vznikl bez zásahu člověka za dva týdny. Na poplatcích za tokeny byla cena asi 20 tisíc dolarů. Zdrojový kód překladače má…
Jan Fikar
9. 2. 2026
Technologie mezijazyků (mezikódů) a bajtkódů: LLVM IR (2)
Popíšeme si další instrukce LLVM IR, tedy instrukce generované překladačem Clang. Bude se jednat o instrukce používané při výpočtech s FP hodnotami, dále konverzi dat, ale například i překladech rozvětvení.
Pavel Tišnovský
5. 2. 2026
Doba čtení:
47 minut
Technologie mezijazyků (mezikódů) a bajtkódů: LLVM IR
Mezijazyky se často využívají také v oblasti sofistikovaných překladačů. Do této kategorie spadají překladače, které jsou součástí projektu LLVM, které využívají mezijazyk LLVM IR.
Pavel Tišnovský
3. 2. 2026
Doba čtení:
37 minut
Technologie mezijazyků a bajtkódů v interpretrech a překladačích
Moderní interpretry i překladače nepřekládají zdrojové kódy v jediném kroku, ale rozdělují celý proces do několika fází. Výsledkem třetí fáze je program reprezentovaný v mezijazyku (mezikódu) popř. v bajtkódu.
Pavel Tišnovský
29. 1. 2026
Doba čtení:
54 minut
Pohled pod kapotu formátu WebAssembly: SIMD (vektorové) operace, druhá část
Ve WebAssembly je definováno asi dvě stě různých SIMD (vektorových) instrukcí. Dnes si popíšeme vybrané vektorové instrukce, z nichž některé umožňují provádění i dosti složitých operací (zhruba na úrovni SSE2).
Pavel Tišnovský
30. 12. 2025
Doba čtení:
57 minut
Pohled pod kapotu formátu WebAssembly: SIMD (vektorové) operace
Do specifikace WebAssembly byly přidány rozšiřující instrukce, mezi něž patří i SIMD (vektorové) operace. Překladače LLVM tyto instrukce podporují a navíc pro ně máme přímou podporu přímo v Clangu.
Pavel Tišnovský
4. 12. 2025
Doba čtení:
37 minut
ALGOL 68 bude v GCC 16.1
Začátkem roku se objevila snaha dostat ALGOL 68 do překladače GCC. V březnu však bylo rozhodnuto ALGOL 68 do GCC nepřidat. Vývoj však pokračoval a názor GCC se změnil asi před týdnem. Front end ALGOLu 68 ga68 tak nalezneme v GCC 16.1, který má…
Jan Fikar
1. 12. 2025
Pohled pod kapotu formátu WebAssembly: instrukce pro řízení toku dat
Zaměříme se na instrukce sloužící pro řízení toku dat (control-flow). Ty jsou použity při překladu zdrojových kódů s běžným rozvětvením, vícenásobným rozvětvením, programovými smyčkami i s ternárními operátory.
Pavel Tišnovský
27. 11. 2025
Doba čtení:
31 minut
Validace dat v Pythonu s využitím knihovny Pydantic (3. část – dokumentace)
Ve třetím článku o knihovně Pydantic si vysvětlíme, jakým způsobem je možné vygenerovat dokumentaci k definovanému modelu nebo i více modelům. Tento proces sice není složitý, ale vyžaduje několik triků.
Pavel Tišnovský
25. 11. 2025
Doba čtení:
41 minut
Pohled pod kapotu formátu WebAssembly: základní instrukční sada
Popíšeme si základní instrukce, které jsou ve WebAssembly definovány. Jedná se o aritmetické instrukce, konverzní operace, porovnání operandů a taktéž o instrukce určené pro manipulaci s obsahem zásobníku operandů.
Pavel Tišnovský
20. 11. 2025
Doba čtení:
40 minut
Pohled pod kapotu formátu WebAssembly: nízkoúrovňová náhrada JavaScriptu
Seznámíme se s technologiemi, na kterých je založen formát WebAssembly. Tento formát umožňuje spouštění aplikací v rámci webových prohlížečů popř. na serverech nebo jako součást složitějších aplikací uvnitř takzvaného sandboxu.
Pavel Tišnovský
11. 11. 2025
Doba čtení:
27 minut
Čtyřicet let existence architektury 386: revoluce přinesla Doom a Linux
Před čtyřiceti lety vznikl Intel 80386, jenž způsobil revoluci v oblasti PC. Umožnil vznik nových operačních systémů (Linux, OS/2), prodloužil životnost aplikací pro DOS a způsobil vznik konkurence na poli x86.
Pavel Tišnovský
7. 10. 2025
Doba čtení:
36 minut
Rychlý linker Wild v Rustu
David Lattimore z Austrálie vytvořil další rychlý linker Wild v Rustu. Máme tu již sice velmi rychlý linker Mold, který je napsaný v C++. Ale Mold nebude ani v budoucnu podporovat inkrementální linkování. To by měl později Wild umět. V úterý byl…
Jan Fikar
25. 9. 2025
Zpracování hodnot typu half float (fp16) na platformě AArch64: operace s vektory
Navážeme na článek o zpracování skalárů i vektorů s prvky typu half float (FP16). Zabývat se budeme především „vektorovým“ rozšířením překladače GCC i překladem operací s vektory do instrukční sady A64 s rozšířením NEON.
Pavel Tišnovský
16. 9. 2025
Doba čtení:
42 minut
Zpracování hodnot typu half float (fp16) na platformě AArch64
Programátoři, zabývající se generativní AI či zpracováním přirozeného jazyka, se často setkávají s vektory obsahujícími prvky typu half float (FP16). Vysvětlíme si, jak se s těmito hodnotami pracuje na platformě AArch64.
Pavel Tišnovský
9. 9. 2025
Doba čtení:
37 minut
Funkce vestavěné v GCC pro provádění nízkoúrovňových bitových operací a rotací (dokončení)
V závěrečném článku o vestavěných funkcích pro nízkoúrovňové operace, které nabízí překladač GCC, si popíšeme funkce, které na základě předané hodnoty dokážou zjistit minimální počet bitů potřebných pro uložení této hodnoty.
Pavel Tišnovský
4. 9. 2025
Doba čtení:
35 minut
Funkce vestavěné v GCC pro nalezení délky sekvence nulových bitů
Dnes si ukážeme další funkce vestavěné do GCC, jež slouží pro realizaci nízkoúrovňových operací. Zaměříme se na funkce umožnující ve vstupní hodnotě nalézt délku sekvence nulových bitů.
Pavel Tišnovský
28. 8. 2025
Doba čtení:
31 minut
Funkce vestavěné v GCC pro nízkoúrovňové bitové operace a rotace
Popíšeme si vestavěné funkce nabízené překladačem GCC, které zajišťují výpočet bitových rotací a taktéž výpočet parity. Zajímat nás bude použitá technologie: způsob překladu těchto funkci do strojového kódu.
Pavel Tišnovský
26. 8. 2025
Doba čtení:
35 minut
1
–
30
/
518
První strana
Předchozí strana
1
2
3
4
5
6
7
Následující strana
Poslední strana
Anketa
Budete se účastnit LinuxDays 2026?
Ano, dorazím osobně
Ano, ale jen vzdáleně
Počkám si na záznamy
Ne, nezajímá mě to
!nové školení! WAZUH: základy bezpečnostního monitoringu
VÍCE INFO
ČLÁNKY DO MAILU