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

    Společnost Espressif (ESP8266, ESP32, …) získala většinový podíl ve společnosti M5Stack, čímž posiluje ekosystém AIoT.

    Ladislav Hagara | Komentářů: 0
    včera 23:44 | Nová verze

    Byla vydána nová stabilní verze 3.5 svobodného multiplatformního softwaru pro editování a nahrávání zvukových souborů Audacity (Wikipedie). Přehled novinek také na YouTube. Nově lze využívat cloud (audio.com). Ke stažení je oficiální AppImage. Zatím starší verze Audacity lze instalovat také z Flathubu a Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    včera 16:44 | Zajímavý článek

    50 let operačního systému CP/M, článek na webu Computer History Museum věnovaný operačnímu systému CP/M. Gary Kildall z Digital Research jej vytvořil v roce 1974.

    Ladislav Hagara | Komentářů: 0
    včera 16:22 | Pozvánky

    Byl zveřejněn program a spuštěna registrace na letošní konferenci Prague PostgreSQL Developer Day, která se koná 4. a 5. června. Na programu jsou 4 workshopy a 8 přednášek na různá témata o PostgreSQL, od konfigurace a zálohování po využití pro AI a vector search. Stejně jako v předchozích letech se konference koná v prostorách FIT ČVUT v Praze.

    TomasVondra | Komentářů: 0
    včera 03:00 | IT novinky

    Po 48 letech Zilog končí s výrobou 8bitového mikroprocesoru Zilog Z80 (Z84C00 Z80). Mikroprocesor byl uveden na trh v červenci 1976. Poslední objednávky jsou přijímány do 14. června [pdf].

    Ladislav Hagara | Komentářů: 6
    včera 02:00 | IT novinky

    Ještě letos vyjde Kingdom Come: Deliverance II (YouTube), pokračování počítačové hry Kingdom Come: Deliverance (Wikipedie, ProtonDB Gold).

    Ladislav Hagara | Komentářů: 4
    21.4. 19:11 | Komunita

    Thunderbird 128, příští major verze naplánovaná na červenec, přijde s nativní podporou Exchange napsanou v Rustu.

    Ladislav Hagara | Komentářů: 25
    21.4. 04:44 | Komunita

    Byly vyhlášeny výsledky letošní volby vedoucího projektu Debian (DPL, Wikipedie). Novým vedoucím je Andreas Tille.

    Ladislav Hagara | Komentářů: 7
    21.4. 00:11 | Nová verze

    Po osmi měsících vývoje byla vydána nová verze 0.12.0 programovacího jazyka Zig (GitHub, Wikipedie). Přispělo 268 vývojářů. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 2
    20.4. 23:55 | Pozvánky

    Poslední měsíc byl plný zajímavých akcí, o kterých Vám bastlíři z projektu MacGyver mohou povědět, protože se na ně sami vydali. Kde všude byli, ptáte se? Objevili se na Installfestu, Arduino Day, Hackaday Europe a tajném srazu bastlířů z Twitteru. A z každé akce pro vás mají zajímavé poznatky.

    … více »
    bkralik | Komentářů: 1
    KDE Plasma 6
     (71%)
     (10%)
     (2%)
     (18%)
    Celkem 674 hlasů
     Komentářů: 4, poslední 6.4. 15:51
    Rozcestník

    Dotaz: FPU - odečítání

    Jardík avatar 6.12.2009 19:26 Jardík | skóre: 40 | blog: jarda_bloguje
    FPU - odečítání
    Přečteno: 264×
    Mám takový problém s odečítáním v assembleru (pomocí FPU).

    Mám takovýto stav st registrů:
    st(0) = 1/5! = 8,3333e-3
    st(1) = 0,25/7! = 4,96031e-5
    st(2) = 0,25
    st(3) = 1
    
    Teď potřebuju provést odčítání st(0) = st(0) - st(1) a dostat
    st(0) = 1/5! - 0,25/7! = 8,2837e-3
    st(1) = 0,25
    st(2) = 1
    
    Provedl jsem tedy
    fsubrp %st(0), %st(1)  ; fsubrp st(1), st(0) v intel syntax
    
    Což by mělo udělat to, co potřebuji:
    Subtract ST(i) from ST(0), store result in ST(i), and pop register stack
    Jenže nějakým zázrakem dostanu v st(0) hodnotu -8,2837e-3, takže to udělalo pravý opak. Když instrukci změním na fsubp, tak dostanu správný výsledek, ale podle manuálu je to blbost (?). Je to bug v gasu nebo ve mně?
    Věřím v jednoho Boha.

    Řešení dotazu:


    Odpovědi

    6.12.2009 19:55 Andrej Herceg | skóre: 43
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Pravdepodobne ide o tento problém 9.13.13 AT&T Syntax bugs (a teda gas má kvôli gcc vymenený zdrojový a cieľový register).
    Jardík avatar 6.12.2009 20:12 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Super ... a co teď s tím, přece nebudu kvůli chybnému gasu odevzdávat chybný úkol v assembleru, který má být zkompilovatelný gasem. Takže buď:

    udělám správný kód a budu cvičícímu vysvětlovat, že gas je chybný

    udělám špatný úkol, který gas zkompiluje jako správný, ale cvičící mě pošle někam, protože je úkol špatně

    vykašlu se na gas, použiju yasm a budu přesvědčovat cvičícího, že gas je zabugovaný, není schopen správně přeložit kód

    zadání
    Napište podprogram pro výpočet funkce sinus. sin(x) = x/1! - x^3/3! + x^5/5! - x^7/7!
    není jednoznačné a proto použiju instrukci fsin (v čemž mi zadání nebrání), která s gasem vrátí správný výsledek ... a hádat se s cvičícím, že měl zakázat použití instrukce fsin, ten mi to stejně neuzná, jak je na ČVUT zvykem.

    Co byste udělal vy?
    Věřím v jednoho Boha.
    6.12.2009 20:39 Ladicek | skóre: 28 | blog: variace | Havlíčkův brod
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Použij druhou možnost, nad tu instrukci napiš komentář, a rozeber to v dokumentaci s odkazem na tu bugu. Ohavná realita sometimes happens.
    Ještě na tom nejsem tak špatně, abych četl Viewegha.
    Jardík avatar 6.12.2009 20:53 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Asi jo, ale stejně mi to příde dost úchylný psát kvůli chybnému kompilátoru úmyslně chybný kód, aby byl výsledek nakonec správný.
    Věřím v jednoho Boha.
    6.12.2009 23:54 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Asi by u té instrukce mělo být makro které bude testovat verzi překladače a podle toho tam vloží správnou instrukci aby to počítalo správně.
    6.12.2009 23:58 Petr Šobáň | skóre: 80 | blog: soban | Olomouc
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Teď mě ještě napadlo není to test od učitele jak si poradíte s kompilátorem?

    A s tím makrem by to mělo být čisté. (Teoreticky)
    6.12.2009 20:57 l4m4
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Doufám, že si uvědomuješ, že je to celé 32bitová šmejďárna. Normálně se už dávno pro floating point aritmetiku používají SSE instrukce na XMM registrech, protože je to podstatně efektivnější než 387 instrukce.
    Jardík avatar 6.12.2009 21:24 Jardík | skóre: 40 | blog: jarda_bloguje
    Rozbalit Rozbalit vše Re: FPU - odečítání
    Samozřejmě bych radši použil SSE2, ale zadání je zadání.
    Věřím v jednoho Boha.

    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.