Články
Zprávičky
Fórum
Podpořte Root
Školení
Galerie
Root do mailu
RSS
Blogy
Knihy
Speciály
Manuály
Licence
Jak na Linux
Zdroják
Hledat
Root.cz
»
Kompilery a procesory
Kompilery a procesory
Vše pro to, abyste zkompilovali svá dílka do spustitelné podoby.
1
–
30
/
475
První strana
Předchozí strana
1
2
3
4
5
6
7
Následující strana
Poslední strana
Problematika ukazatelů v překladačích jazyka C pro systém DOS
Jaký byl největší problém systému DOS? Neexistence pokročilejších funkcí, nutnost explicitní konfigurace hardwaru, či něco jiného? Z pohledu programátorů se jednalo o práci s pamětí organizované systémem segment:offset.
Pavel Tišnovský
Dnes
Doba čtení:
41 minut
Překladače na platformě IBM PC: od assembleru k C (32bitový kód a FPU)
Na úvodní článek o vyšších jazycích používaných v době kralování IBM PC a DOSu dnes navážeme. Minule jsme se zaměřili na 16bitový kód, dnes si ukážeme ty překladače, které dokážou i pro DOS vytvářet 32bitový kód.
Pavel Tišnovský
27. 5. 2025
Doba čtení:
43 minut
Překladače na platformě IBM PC: od assembleru k C
Prozatím jsme se zaměřili na assembler. Proč se však více nepoužívaly překladače vyšších programovacích jazyků? Dnes se na tuto otázku pokusíme částečně odpovědět otestováním několika dobových překladačů jazyka C.
Pavel Tišnovský
13. 5. 2025
Doba čtení:
38 minut
Vyšlo GCC 15.1 včetně podpory jazyka COBOL
Právě vyšla sada překladačů GCC (GNU Compiler Collection) ve verzi 15.1. Nově GCC podporuje jazyk COBOL pomocí gcobol. Avšak ALGOL 68 zatím v GCC není. Nově je v C výchozím standardem C23, což odpovídá --std=gnu23. Předchozí verze GCC 14 měla…
Jan Fikar
25. 4. 2025
Rozšíření instrukční sady AVX a programy v assembleru
Dnes si ukážeme základy práce s instrukcemi AVX v assembleru, konkrétně v Netwide Assembleru běžícího v Linuxu. Samotné AVX (Advanced Vector Extensions) rozšiřuje možnosti vektorových instrukcí na x86 i x86–64.
Pavel Tišnovský
15. 4. 2025
Doba čtení:
72 minut
Rozšíření instrukční sady SSE2 v programech psaných v assembleru (dokončení)
Na předchozí dvojici článků o rozšíření instrukční sady SSE2 dnes navážeme. Popíšeme si zbývající instrukce ze sady SSE2, které slouží pro operace prokládání prvků, extrakci či naopak spojování prvků vektorů a podobně.
Pavel Tišnovský
8. 4. 2025
Doba čtení:
70 minut
Procesory Apple A12, M1, M2 a M3 budou mít brzy podporu v GCC
Procesory Apple A12, M1, M2 a M3 budou mít brzy podporu v GCC pro architekturu AArch64 Darwin, tedy macOS. Je možné, že by se to mohlo stihnout na poslední chvíli před vydáním GCC 15.1. V takovém případě by macOS měl alternativní překladač místo…
Jan Fikar
7. 4. 2025
Rozšíření instrukční sady SSE2 (2. část)
Dnes si popíšeme a zejména otestujeme vybrané instrukce ze sady SSE2. Řekneme si, jaký je rozdíl mezi trojicí PAND, ANDNPS a ANDPD, způsob provedení bitových a bajtových posunů, ale i specifické vlastnosti vybraných konverzních instrukcí.
Pavel Tišnovský
27. 3. 2025
Doba čtení:
70 minut
GCC 15 už čistí kód od 256bittového AVX10.2
Instrukční sada AVX10, která nově už neobsahuje podporu maximálně 256bitových vektorů, ale povinně i 512bitových, dostává nové obrysy v rámci kompilátoru GCC. Pro patnáctkovou verzi byla podpora AVX10.2 „v původním znění“ připravována, nyní jsou…
David Ježek
25. 3. 2025
Instrukční sady SIMD a automatické vektorizace prováděné překladačem GCC (3)
Dnes se budeme zabývat vektorizací smyček, v nichž se zpracovávají pole (vektory), což vyžaduje instrukce SSE2 nebo AVX. Důležité bude taktéž zjištění, jak je vektorizován přístup k prvkům pole s volitelným krokem (stride).
Pavel Tišnovský
25. 3. 2025
Doba čtení:
40 minut
Instrukční sady SIMD a automatické vektorizace prováděné překladačem GCC (2)
Na úvodní článek o automatických vektorizacích prováděných překladači dnes navážeme. Opět se zaměříme na autovektorizace prováděné překladačem GCC, dnes si ale otestujeme poněkud komplikovanější funkce, které se mají optimalizovat.
Pavel Tišnovský
20. 3. 2025
Doba čtení:
30 minut
Instrukční sady SIMD a automatické vektorizace prováděné překladačem GCC
Už jsme se seznámili s instrukcemi SIMD, MMX, SSE a částečně i SSE2. Lze je volat z assembleru nebo využít takzvané intrinsic nabízené překladači. Ovšem existuje i další způsob jejich využití s automatickou vektorizací.
Pavel Tišnovský
18. 3. 2025
Doba čtení:
28 minut
Codon nyní ještě rychlejší, obsahuje vlastní implementaci NumPy a je open source
O rychlém překladači Pythonu Codon jsme tu již psali. Od verze 0.18.0, která vyšla 30. ledna, je ještě rychlejší, protože obsahuje vlastní implementaci oblíbené knihovny NumPy. Navíc se změnila licence a Codon je open source s licencí…
Jan Fikar
17. 3. 2025
Od instrukční sady SSE k sadě SSE2
Proč se většina nově přidaných instrukcí SSE omezuje na práci s hodnotami typu single, když je mnoho aplikací založených na celočíselných datech nebo naopak používá typ double? Odpovědí byla instrukční sada SSE2.
Pavel Tišnovský
13. 3. 2025
Doba čtení:
68 minut
LLVM 20.1 má překladač Fortranu flang
Překladač LLVM 20.1 vyšel minulý týden. Nová je podpora AMX (Advanced Matrix Extensions) AMX-AVX512 a AMX-FP8 pro Intel Diamond Rapids. Nová je také podpora instrukcí AVX10.2 také pro Diamond Rapids. Nově se překladač Fortranu již nejmenuje…
Jan Fikar
12. 3. 2025
COBOL je v GCC 15, ALGOL 68 ne
Před třemi měsíci jsme tu psali o snaze začlenit programovací jazkyk COBOL (COmmon Business Oriented Language) do GCC. Minulý týden se COBOL dostal do GCC 15. Nadšencům tohoto jazyka zbývá počkat na vydání GCC 15.1, které přijde za několik týdnů…
Jan Fikar
12. 3. 2025
Pokročilejší SSE operace: přeskupení, promíchání a rozbalování prvků vektorů
Dokončíme popis rozšíření instrukční sady SSE. Ukážeme si některé netriviální operace, které je možné provádět se skaláry a především s vektory. Jedná se o konverzní operace a taktéž o rozbalování a zabalování prvků vektorů.
Pavel Tišnovský
11. 3. 2025
Doba čtení:
66 minut
SIMD instrukce v rozšíření SSE (2. část)
Popíšeme si zbylé instrukce pro provádění numerických výpočtů. Také se zmíníme o instrukci pro porovnání prvků vektorů, která má celkem osm různých variant. A nezapomeneme ani na problematiku nekonečných hodnot a hodnot NaN.
Pavel Tišnovský
4. 3. 2025
Doba čtení:
63 minut
Programovatelné IO na mikrořadičích RP2040: komunikace s PIO a ovládání PIO
Ukážeme si základní způsoby komunikace hlavního programu běžícího na mikrořadiči s PIO programy. Pro tyto účely se používají fronty (FIFO) a vstupní i výstupní posuvné registry.
Pavel Tišnovský
27. 2. 2025
Doba čtení:
30 minut
SIMD instrukce v rozšíření SSE
Po úspěšném a navíc i relativně bezproblémovém zavedení rozšíření MMX vzniklo u konkurence (AMD) rozšíření 3DNow!. To sice nebylo příliš populární, ovšem jednalo se o první krok k rozšíření nazvanému SSE (Streaming SIMD Extension).
Pavel Tišnovský
25. 2. 2025
Doba čtení:
64 minut
SIMD instrukce na 80×86: dokončení popisu MMX, instrukce 3DNow!
Dnes si popíšeme zbylé MMX instrukce a většinu instrukcí použijeme v příkladech. Také si popíšeme instrukční sadu 3DNow! společnosti AMD. Ta nebyla přímou konkurencí MMX, ale spíše první vlaštovkou vedoucí k SSE a AVX.
Pavel Tišnovský
18. 2. 2025
Doba čtení:
67 minut
Programovatelné IO na mikrořadičích RP2040 – praktické použití
Na úvodní článek o PIO na mikrořadičích Raspberry Pi Pico dnes navážeme. Pokusíme se propojit znalosti o PIO (interní architektura, způsob propojení s mikrořadičem i s GPIO, instrukční soubor) s vlastnostmi MicroPythonu.
Pavel Tišnovský
13. 2. 2025
Doba čtení:
27 minut
Programovatelné IO na mikrořadičích RP2040 v Raspberry Pi Pico
Dnes se seznámíme s unikátní vlastností Raspberry Pi Pico. Tyto jednodeskové mikropočítače obsahují PIO (Programmable IO), což jsou bloky ovládající vstupně-výstupní piny (GPIO). Ty se chovají jako samostatně programovatelné procesory.
Pavel Tišnovský
6. 2. 2025
Doba čtení:
23 minut
SIMD instrukce na platformě 80×86: nepřímý důsledek platnosti Mooreova zákona
Začneme se seznamovat se SIMD instrukcemi pro platformu 80×86, které jsou souhrnně nazývány, i když ne zcela přesně, vektorové instrukce. První na řadě je technologie MMX.
Pavel Tišnovský
4. 2. 2025
Doba čtení:
69 minut
Matematické koprocesory na platformě x86: vše se komplikuje
Práce s hodnotami s plovoucí řádovou čárkou sice může vypadat jednoduše, ovšem není tomu tak, protože se musí pracovat s nekonečny, hodnotami NaN atd. Navíc musí FPU spolupracovat s mikroprocesorem.
Pavel Tišnovský
28. 1. 2025
Doba čtení:
65 minut
Matematické koprocesory na platformě 80×86 prakticky
Na praktických příkladech si ověříme základní funkce poskytované matematickým koprocesorem Intel 8087, na který navazuje řada čipů 80287 a 80387. Posléze se tyto funkce staly přímo součástí hlavního mikroprocesoru.
Pavel Tišnovský
21. 1. 2025
Doba čtení:
61 minut
Matematické koprocesory na 80×86 pro výpočty s plovoucí řádovou čárkou
Nedílnou součástí prakticky všech procesorů je modul pro operace s plovoucí řádovou čárkou. Na platformě IBM PC se jednalo o řadu matematických koprocesorů označovaných čísly 8087, 80287, 80387 a (nepřesně) 80487.
Pavel Tišnovský
14. 1. 2025
Doba čtení:
57 minut
Nechte testovat překladač
blog
Dnešní příspěvek je o tom, jak namísto sofistikovaných testovacích nástrojů používat k testování samotný překladač.
Redakce
13. 1. 2025
HipScript zprovozní Nvidia CUDA i AMD HIP přímo ve webovém prohlížeči
Nový open-source projekt HipScript má jednoduchý cíl: nabídnou běh kódu napsaného v Nvidia CUDA či AMD HIP rovnou ve webovém prohlížeči. Využívá přitom WebAssembly a WebGPU. Už nyní je schopen rozběhat základní kernely s plnou podporou C++,…
David Ježek
8. 1. 2025
Nové vlastnosti čipů 80386: stránkování a virtuální režim 8086
Seznámíme se s dvěma technologiemi, které byly součástí mikroprocesoru Intel 80386. Tento v několika ohledech přelomový čip totiž kromě dalších vylepšení nabízel možnost stránkování (paging) a nový virtuální režim.
Pavel Tišnovský
7. 1. 2025
Doba čtení:
57 minut
1
–
30
/
475
První strana
Předchozí strana
1
2
3
4
5
6
7
Následující strana
Poslední strana
Zprávičky
Ovladač Intel Overclocking Watchdog v jádru Linux 6.16
Do vývojové větve jádra, z níž vzejde Linux 6.16, byl začleněn nový ovladač Intel Overclocking Watchdog (OC WDT). Kód původně vyvinutý jedním…
17:21
Konferencia IntelliJ IDEA 2025: Novinky a trendy v softvérovom vývoji
Dnes, 3. júna 2025, odštartovala dvojdňová online konferencia IntelliJ IDEA Conf 2025, ktorá prináša 15 živých prednášok od špičkových…
13:26
Vývojová verze Wine 10.9 s EGL pro všechny
Wine nadále směřuje k vydání verze 11.0, přičemž dalším krokem na cestě je 10.9. Ta aktualizuje knihovnu VKD3D na verzi 1.16, přidává…
10:31
Další zprávičky
Napište zprávičku
Anketa
Máte-li xDSL: jak rychle stahujete?
do 20 Mbps
20 až 40 Mbps
40 až 60 Mbps
60 až 80 Mbps
80 až 100 Mbps
více než 100 Mbps
Chcete se proškolit Linux za zlomek ceny? Využijte dotaci 82 % z ceny!
TO CHCI
ČLÁNKY DO MAILU