abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 03:33 | IT novinky

    Google postupně zpřístupňuje českým uživatelům Režim AI (AI Mode), tj. nový režim vyhledávání založený na umělé inteligenci. Režim AI nabízí pokročilé uvažování, multimodalitu a možnost prozkoumat jakékoliv téma do hloubky pomocí dodatečných dotazů a užitečných odkazů na weby.

    Ladislav Hagara | Komentářů: 0
    včera 18:11 | Nová verze

    Programovací jazyk Python byl vydán v nové major verzi 3.14.0. Podrobný přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 2
    včera 16:33 | IT novinky

    Bylo oznámeno, že Qualcomm kupuje Arduino. Současně byla představena nová deska Arduino UNO Q se dvěma čipy: MPU Qualcomm Dragonwing QRB2210, na kterém může běžet Linux, a MCU STM32U585 a vývojové prostředí Arduino App Lab.

    Ladislav Hagara | Komentářů: 1
    včera 15:55 | Nová verze

    Multiplatformní open source voxelový herní engine Luanti byl vydán ve verzi 5.14.0. Podrobný přehled novinek v changelogu. Původně se jedná o Minecraftem inspirovaný Minetest v říjnu loňského roku přejmenovaný na Luanti.

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | Nová verze

    Byla vydána nová stabilní verze 6.10 (YouTube) multiplatformního frameworku a GUI toolkitu Qt. Podrobný přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    6.10. 23:55 | Komunita

    Ubuntu 26.04 LTS bude (𝕏) Resolute Raccoon (rezolutní mýval).

    Ladislav Hagara | Komentářů: 3
    6.10. 21:00 | Nová verze

    Netwide Assembler (NASM) byl vydán v nové major verzi 3.00. Přehled novinek v poznámkách k vydání v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    6.10. 20:11 | Komunita

    Linuxová distribuce Frugalware (Wikipedie) ke konci roku 2025 oficiálně končí.

    Ladislav Hagara | Komentářů: 0
    6.10. 17:22 | Nová verze

    Byla vydána nová verze 3.0.6 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP bude brzy k dispozici také na Flathubu.

    Ladislav Hagara | Komentářů: 0
    6.10. 16:11 | IT novinky

    Americký výrobce čipů AMD uzavřel s americkou společností OpenAI smlouvu na několikaleté dodávky vyspělých mikročipů pro umělou inteligenci (AI). Součástí dohody je i předkupní právo OpenAI na přibližně desetiprocentní podíl v AMD.

    Ladislav Hagara | Komentářů: 1
    Jaké řešení používáte k vývoji / práci?
     (39%)
     (46%)
     (15%)
     (17%)
     (21%)
     (15%)
     (18%)
     (16%)
     (16%)
    Celkem 191 hlasů
     Komentářů: 12, poslední 4.10. 20:35
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: Asm instrukce LEA

    17.9.2009 14:23 kralyk z abclinuxu | skóre: 29 | blog:
    Asm instrukce LEA
    Přečteno: 650×
    Ahoj,
    dneska jen takovou drobnost (snad)...
    Narazil jsem v jednom programu na řádek
       8DA424 00000000    LEA ESP, DWORD PTR SS:[ESP]
    A není mi moc jasný, k čemu to tam je. Jestli dobře chápu instrukci LEA, tak to dělá to samý co mov esp, esp, tudíž by to bylo úplně nanic, ale to je mi divný...

    Co ten řádek teda ve skutečnosti dělá?

    Řešení dotazu:


    Odpovědi

    17.9.2009 14:54 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: Asm instrukce LEA
    Pravdepodobne je tam tá funkcia len na zarovnanie nasledujúcej (alebo až o pár inštrukcií ďalšej) inštrukcie na nejakú adresu (pri tak dlhej inštrukcii by som to typoval na zarovnávanie adresy na násobok 16) a samotná inštrukcia zmysel nemá (keďže sa pravdepodobne vôbec nevykonáva).
    17.9.2009 15:00 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Asm instrukce LEA
    Aha, jj je to zarovnaný na 16, to bude ono. Dík za vysvětlení.
    Ale jo, vykonává se, je uprostřed jedný subroutine, která se určitě vykonává, ale tak vono to bylo kompilovaný buhvíčím, mám dojem že msvc, takže možný je všecko :-D
    Bilbo avatar 17.9.2009 15:36 Bilbo | skóre: 29
    Rozbalit Rozbalit vše Re: Asm instrukce LEA
    Na zarovnavani se muzou pouzivat ruzne instrukce ktere nic nedelaji, casto se pouzije co nejmene instrukci aby presne zaplacly danou delku a zaroven je procesor vyridil co nejrychleji (prohozeni registru se sebou samym, pricteni nuly - cokoliv co neskace a necte nic z pameti je vhodnym kandidatem pro takovou instrukci).

    Kompilator bude mit typicky tabulku NOP instrukci pro cilovou architekturu s delkou od 1 do X bajtu...
    Big brother is not watching you anymore. Big Brother is telling you how to live...
    18.9.2009 03:58 kralyk z abclinuxu | skóre: 29 | blog:
    Rozbalit Rozbalit vše Re: Asm instrukce LEA
    Proč musí vůbec některý instrukce být zarovnaný? Nějak nemůžu nic vygooglovat tak se tážu tady...
    Tak například v tomhle kusu kódu:
    6FDA0326   . 8DA424 00000000     LEA ESP,DWORD PTR SS:[ESP]
    6FDA032D   . 8D49 00             LEA ECX,DWORD PTR DS:[ECX]
    6FDA0330   > 0FBEBD A821DE6F     MOVSX EDI,BYTE PTR SS:[EBP+6FDE21A8]
    6FDA0337   . 0FBE9D A021DE6F     MOVSX EBX,BYTE PTR SS:[EBP+6FDE21A0]
    
    První dvě instrukce evidentně zarovnávají první movsx na 16, na druhej už se ale kašle...
    Je to tím, že na ten první vede jump?
    18.9.2009 09:47 dark
    Rozbalit Rozbalit vše Re: Asm instrukce LEA

    Jo. Kdysi jsem si s tím hrál v blitjit, a zdá se mi, že tyto optimalizace jsou výhodné jen pro starší CPU, u novějších je ten rozdíl zarovnání minimální. Třeba na mém Q6600 mu to je úplně jedno.

    (používá se to většinou jako optimalizace pro skoky v inner loops, všude jinde to je nezajímavé)

    Bilbo avatar 19.9.2009 00:32 Bilbo | skóre: 29
    Rozbalit Rozbalit vše Re: Asm instrukce LEA
    Bude to asi kvuli cache. Mezi cache a pameti se casto vymenuji vetsi bloky (treba 64 bajtu, ruzni se to asi podle urovne cache a procesoru) a ne jednotlive bajty, coz znamena ze pri skoku na zarovnanou instrukci je potreba do cache natahnout jeden blok, pri nezarovnane instrukci by to mohly byt dva. Nektere CPu maji holt system rizeni cache takovy, ze tahle finta nema skoro zadny efekt (treba maji tak velky cache blok, ze se malokdy stane ze by se musely tahat dva bloky, i kdyz je instrukce nezarovnana, pripadne muzou mit nejakyu inteligentni prefetch. V obou pripadech zarovnavani ma zcela minimalni prinos k vykonu)
    Big brother is not watching you anymore. Big Brother is telling you how to live...

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.