• úvod
  • témata
  • události
  • tržiště
  • diskuze
  • nástěnka
  • přihlásit
    registrace
    ztracené heslo?
    LITTLELIAssembler
    there are 10 types of people in the world. those who understand binary, and those who don't.
    windows bring the power of yesterday computers in nowadays
    sexy nastenka
    rozbalit záhlaví
    JAZZZ
    JAZZZ --- ---
    RADDINO: vidim to spravne ze se ty zadani lisi jen tou hledanou sekvenci? ten moore automat je na konci a21.asm tak to z toho snad das dohromady ne?
    RADDINO
    RADDINO --- ---
    Ahoj. Potřeboval bych pomoct. Od kamaráda jsem získal hotovou úlohu zadání A21 (http://motor.feld.cvut.cz/www/materialy/A7B14SAP/zadani_sysA2_2011.pdf ) a potřeboval bych to předělat na zadání A09. Nepomohl by mi s tím někdo prosím? vůbec to nechápu a potřeboval bych zápočet. Soubor co potřebuju upravit je zde. http://www.ulozto.cz/11770040/a21-zip kdyby někdo pomohl, byl bych fakt rád. kdyžtak pošta
    HOLAKAC
    HOLAKAC --- ---
    Zdravim, mam drobnej problem s pristupem k cislu ve strukture gmp intu.

    Dejme tomu ze mam mpz_t num. Vim ze je 128b velkej, chci si ho nahrat do registru xmm0, jak na to ? Vim ze je ukazatel na pole tech hodnot (num->_mp_d), ale nevim, jak z ty adresy movnout cislo do xmm0. Vsechny mozny cachry s movaps %[num->_mp_d], %%xmm0 koncej chybou prekladace (undefined named operand num->_mp_d). Nejaka rada ? :X
    ANT_39
    ANT_39 --- ---
    DOKIS: Hm, nojo, jasne.
    DOKIS
    DOKIS --- ---
    ANT_39: Ten prekladac to tam nenacpal proto, ze to je const promenna, ale proto, ze to je retezcova konstanta.
    ANT_39
    ANT_39 --- ---
    DOKIS: ergo rvou :)
    DOKIS
    DOKIS --- ---
    _BENNY: Nervou, ale ta retezcova konstanta tam ulozena byt muze a zda se, ze nekdy tam fakticky je.
    _BENNY
    _BENNY --- ---
    CHOPAIN: prekladace rvou const promenny do read-only sekci? fajn :)
    CHOPAIN
    CHOPAIN --- ---
    Moje chyba. Jako argument jsem pouzival

    char* src = "Blabla";

    Coz je konstantni ukazatel. Pri pouziti

    chat src[] = "Blabla";

    je to uz v poradku :d. Diky za cas.
    _BENNY
    _BENNY --- ---
    CHOPAIN: tak si to odkrokuj v debuggeru a sam uvidis jaky hodnoty lezou do registru a jestli jsou to platny pointery...
    CHOPAIN
    CHOPAIN --- ---
    No to by mělo být právěže jedno oboje jsou identická pole vytvořená stylem char* src = "Blabla"; a předaná jako argument funkci.
    _BENNY
    _BENNY --- ---
    CHOPAIN: nemas nahodou v kodu prohozeny src a dest? neboli, nezapisujes nahodou do src kam se zapisovat nema?
    CHOPAIN
    CHOPAIN --- ---
    Zdravim teprve s Assemblerem zacinam tak se mi nesmejte :d potreboval bych poradit jak zapsat do C++ koveho pole char*

    asi takle
    void up_strcpy(char * dest, char * src)
    {
    _asm{
    mov eax,dest
    mov ebx,src
    mov ecx,0

    mov dl,[eax + ecx *1] //zde se do dl nacte spravne 1 prvek dest
    mov [ebx +ecx *1],dl //Access violation writing location
    .
    .
    .

    Zkousel jsem to uz vseliak ale furt nemuzu prijit na to co delam spatne. Přitom u int* pole nebyl problem. (samozřejme jsem ale počítal s 4 bajty ne s 1).

    Diky moc za radu.
    MICA
    MICA --- ---
    Máte někdo zkušenosti se softěním pro Freescale HCS08 případně Motorola 68000 assembler? Potřeboval bych podarit s přeprasením *.asm zdrojáku přeloženého z Cčka :(
    BLEKOTA
    BLEKOTA --- ---
    NECROMAN: Fraud warning u jak se zda indenticke kopie dokumentace ke GASu???
    NECROMAN
    NECROMAN --- ---
    BLEKOTA: na ten druhy odkaz mi to hodilo Fradu warning, ale ten maunal vypada dobre. take v Linuxovem krenelu pro mips se da najit zajimave cteni
    BLEKOTA
    BLEKOTA --- ---
    NECROMAN: I mipsech vim prd, par linku ktere snad k necemu budou - http://www.eecs.harvard.edu/~ellard/Courses/cs50-asm.pdf (predpkladam ze jsi tohle uz nasel), pak dokumentace ke GASu veci (ne)specifickych pro mips (http://sourceware.org/binutils/docs/as/index.html) prip nejake informace o pouzivani inline assembleru v GCC.
    NECROMAN
    NECROMAN --- ---
    zdravim, moc toho v assembleru neumim a pokousim se napsat atomicke test&set a compare&swap pro mips procesor (pokud byste to nekdo meli hotove, dejte vedet :)

    Momentalne mam ten compare&swap podle ruznych naovdu, ale nevim, zda je dobre

    static inline native_t compare_and_swap(atomic_t *var, const native_t old_value, const native_t new_value)
    {
        native_t temp, result;
    
        asm volatile (
            ".set push\n"
            ".set noreorder\n"
    
            "   ll %[temp], %[value]\n"
            "   bne %[temp], %[old_value], 1f\n"
            "   move %[result], %[new_value]\n"
            "   sc %[result], %[value]\n"
            "   b 2f\n"        
            "1: move %[result], $0\n"
            "2: sync\n"
            
            ".set pop\n"
            : [temp] "=&r" (temp), [result] "=&r" (result), [value] "+m" ((var)->value)
            : [old_value] "r" ((old_value)->value), [new_value] "r" ((new_value)->value)
              : "memory"
          );
    
        return result;
    } 


    predevsim jsem neprisel na to, co znamenaji ty pismenka u vstupnich/vystupnich promennych, takove to =&r, +m, r, Ir a pod. any idea?
    Dale jak je to s temi labely, viel jsem vyskyt cisel+f nebo b
    znamena to jdi na cislo a to f/b je forward/backward?

    Diky za rady :)
    MIKI001
    MIKI001 --- ---
    TLUSTEC: Asi to tak dopadne. Bohuzel nikdy jsem neprisel na vkus te syntaxi co pouziva gcc. Takze spis se podivam na obaleni neceho co pouziva tu pro mne znamejsi syntaxi. V podstate neco tak jednoducheho a snadno pripojitelneho do sveho projektu co jsem si predstavoval jsem nenasel, takze je uz jedno co budu obalovat. Zda cast gcc a nebo nasm.

    Diky vsem za rady, jeste se zkusim podivat na llvm, ale i tam jsem na prvni pohled videl gcc syntaxi coz opet je pro mne spis prekazka.
    TLUSTEC
    TLUSTEC --- ---
    MIKI001: a co takto binutils, v pripade uchylky pro intelskou syntaxi nasm/ndisasm? zdrojaky to ma citelne, a pomerne snadno vyklestitelne.
    Kliknutím sem můžete změnit nastavení reklam