Č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
»
Témata
»
Assembler
Assembler
1
–
30
/
139
První strana
Předchozí strana
1
2
3
4
5
Následující strana
Poslední strana
Generátor náhodných čísel založený na instrukcích RDSEED a RDRAND
V informatice existuje několik oblastí, ve kterých je nutné používat generátory náhodných nebo alespoň pseudonáhodných hodnot. Moderní procesory s architekturou x86–64 pro tento účel nabízí instrukce RDRAND a RDSEED.
Pavel Tišnovský
14. 8. 2025
Doba čtení:
28 minut
Funkce vestavěné v GCC pro provádění nízkoúrovňových aritmetických operací
Dnes si popíšeme některé funkce (resp. pseudofunkce) vestavěné do překladače GCC, které jsou určeny pro provádění nízkoúrovňových aritmetických operací. Díky nim lze realizovat vícebajtovou aritmetiku atd.
Pavel Tišnovský
31. 7. 2025
Doba čtení:
30 minut
Algoritmus CORDIC a numerické formáty s pevnou řádovou čárkou
Už jsme si uvedli, jak lze CORDIC použít pro výpočet goniometrických funkcí s hodnotami ve formátu plovoucí řádové binární čárky. Tentýž algoritmus lze upravit i pro práci s formátem pevné řádové binární tečky/čárky.
Pavel Tišnovský
22. 7. 2025
Doba čtení:
72 minut
Výpočty v systému pevné řádové čárky na platformě IBM PC (2. část)
Na článek o výpočtech s pevnou řádovou tečkou (čárkou) dnes navážeme. Ukážeme si limity této reprezentace numerických hodnot a seznámíme se s algoritmem CORDIC, kterého lze použít pro výpočet goniometrických funkcí, logaritmů atd.
Pavel Tišnovský
10. 7. 2025
Doba čtení:
72 minut
Výpočty v systému pevné řádové čárky na platformě IBM PC
Počítače IBM PC sice mohly být vybaveny matematickým koprocesorem, ovšem v prvním desetiletí existence této platformy se v žádném případě nejednalo o standardní modul; mnohá PC jím vybavena nebyla.
Pavel Tišnovský
3. 7. 2025
Doba čtení:
72 minut
Textové režimy grafických karet SVGA na platformě IBM PC
Jednou z vlastností platformy IBM PC byl naprostý chaos vládnoucí grafickém subsystému. Existuje zde však stabilní prvek: textové režimy. Dnes si řekneme, jak se možnosti rozšířily s příchodem karet SVGA.
Pavel Tišnovský
24. 6. 2025
Doba čtení:
68 minut
Od grafické karty VGA k vyšším rozlišením i většímu množství barev (3. část)
Už jsme se seznámili s tím, jak zjistit informace o režimech SVGA karet přes VBE a jak se přistupuje do video paměti. Právě zde dochází k problémům, které je nutné řešit. Týká se to i operace typu BitBLT pro přenos rastrových obrázků.
Pavel Tišnovský
19. 6. 2025
Doba čtení:
67 minut
Od grafické karty VGA k vyšším rozlišením i většímu množství barev (2. část)
Ukážeme si, jak lze provést přepnutí do zvoleného grafického režimu a jak se do obrazové paměti zapisují jednotlivé pixely, což může být komplikované.
Pavel Tišnovský
12. 6. 2025
Doba čtení:
65 minut
Od grafické karty VGA k vyšším rozlišením i většímu množství barev
Už jsme se setkali s problematikou grafického subsystému. Dnes si ukážeme využití VBE (VESA BIOS Extension) pro nastavení grafických režimů s vyšším rozlišením a/nebo počtem barev, než nabízel standard VGA.
Pavel Tišnovský
10. 6. 2025
Doba čtení:
68 minut
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ý
3. 6. 2025
Doba čtení:
41 minut
Volání subrutin naprogramovaných v assembleru z jazyka Python: knihovna PeachPy
Dnes si představíme knihovnu nazvanou PeachPy, která umožňuje realizovat kooperaci mezi skripty v Pythonu a strojovým kódem zapsaným formou strojových instrukcí. PeachPy je v praxi relativně často používána pro „místní“ optimalizace.
Pavel Tišnovský
29. 5. 2025
Doba čtení:
28 minut
Volání subrutin naprogramovaných v assembleru z jazyka Python
Už jsme se setkali s propojením Pythonu s nativními knihovnami naprogramovanými (například) v jazyku C. Dnes si ukážeme jeden z alternativních způsobů, kterým lze z Pythonu volat podprogramy (subrutiny, funkce) v assembleru.
Pavel Tišnovský
20. 5. 2025
Doba čtení:
24 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
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
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
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
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
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
SIMD instrukce na platformě 80×86: instrukční sada MMX
Navážeme na článek o vektorových instrukcích na platformě 80×86. Popíšeme si další instrukce MMX, konkrétně všechny aritmetické instrukce, logické instrukce i instrukci, která kombinuje násobení prvků vektorů s jejich součtem.
Pavel Tišnovský
11. 2. 2025
Doba čtení:
66 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
1
–
30
/
139
První strana
Předchozí strana
1
2
3
4
5
Následující strana
Poslední strana
Zprávičky
Vyšiel nový model DeepSeek V3.1 s vylepšenou efektivitou a dlhším kontextom
Nový model DeepSeek V3.1 bol oficiálne vydaný 21. augusta 2025. DeepSeek V3.1 je hybridný model, ktorý podporuje dva režimy – režim uvažovania…
Včera
Šéfka švédské policie varuje před aplikací Signal, odborníci její přístup kritizují
Šéfka švédské státní policie Petra Lundhová v pořadu o nárůstu kriminality pro televizi SVT prohlásila, že pokud rodiče naleznou na telefonu…
Včera
GNOME plánuje v nadcházející verzi vyskakovací okno s žádostí o finanční podporu
Vydání desktopového prostředí GNOME 49 se kvapem blíží, přinese těsnější integraci systemd a vylepšené ovládání podsvícení HDR. Přibude ale…
Včera
Další zprávičky
Napište zprávičku
Školení Hacking v praxi: využijte dotaci na školení 82 % z ceny!
TO CHCI
ČLÁNKY DO MAILU