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 18:55 | IT novinky

    Společnost Valve publikovala přehled To nej roku 2025 ve službě Steam aneb ohlédnutí za nejprodávanějšími, nejhranějšími a dalšími nej hrami roku 2025.

    Ladislav Hagara | Komentářů: 0
    dnes 16:11 | Komunita

    Byly publikovány výsledky průzkumu mezi uživateli Blenderu uskutečněného v říjnu a listopadu 2025. Zúčastnilo se více než 5000 uživatelů.

    Ladislav Hagara | Komentářů: 0
    dnes 03:33 | Bezpečnostní upozornění

    V dokumentově orientované databázi MongoDB byla nalezena a v upstreamu již opravena kritická bezpečností chyba CVE-2025-14847 aneb MongoBleed.

    Ladislav Hagara | Komentářů: 0
    včera 23:11 | IT novinky

    Při úklidu na Utažské univerzitě se ve skladovacích prostorách náhodou podařilo nalézt magnetickou pásku s kopií Unixu V4. Páska byla zaslána do počítačového muzea, kde se z pásky úspěšně podařilo extrahovat data a Unix spustit. Je to patrně jediný známý dochovaný exemplář tohoto 52 let starého Unixu, prvního vůbec programovaného v jazyce C.

    🇨🇽 | Komentářů: 1
    včera 15:55 | Komunita

    FFmpeg nechal kvůli porušení autorských práv odstranit z GitHubu jeden z repozitářů patřících čínské technologické firmě Rockchip. Důvodem bylo porušení LGPL ze strany Rockchipu. Rockchip byl FFmpegem na porušování LGPL upozorněn již téměř před dvěma roky.

    🇨🇽 | Komentářů: 7
    včera 15:44 | Zajímavý software

    K dispozici je nový CLI nástroj witr sloužící k analýze běžících procesů. Název je zkratkou slov why-is-this-running, 'proč tohle běží'. Klade si za cíl v 'jediném, lidsky čitelném, výstupu vysvětlit odkud daný spuštěný proces pochází, jak byl spuštěn a jaký řetězec systémů je zodpovědný za to, že tento proces právě teď běží'. Witr je napsán v jazyce Go.

    🇨🇽 | Komentářů: 1
    včera 15:33 | Zajímavý software

    Yazi je správce souborů běžící v terminálu. Napsán je v programovacím jazyce Rust. Podporuje asynchronní I/O operace. Vydán byl v nové verzi 25.12.29. Instalovat jej lze také ze Snapcraftu.

    Ladislav Hagara | Komentářů: 0
    26.12. 18:44 | Komunita

    Od soboty do úterý probíhá v Hamburku konference 39C3 (Chaos Communication Congress) věnovaná také počítačové bezpečnosti nebo hardwaru. Program (jiná verze) slibuje řadu zajímavých přednášek. Streamy a záznamy budou k dispozici na media.ccc.de.

    Ladislav Hagara | Komentářů: 0
    26.12. 13:22 | Zajímavý software

    Byl představen nový Xserver Phoenix, kompletně od nuly vyvíjený v programovacím jazyce Zig. Projekt Phoenix si klade za cíl být moderní alternativou k X.Org serveru.

    🇨🇽 | Komentářů: 7
    26.12. 13:11 | Nová verze

    XLibre Xserver byl 21. prosince vydán ve verzi 25.1.0, 'winter solstice release'. Od založení tohoto forku X.Org serveru se jedná o vůbec první novou minor verzi (inkrementovalo se to druhé číslo v číselném kódu verze).

    🇨🇽 | Komentářů: 0
    Kdo vám letos nadělí dárek?
     (33%)
     (1%)
     (23%)
     (1%)
     (2%)
     (1%)
     (10%)
     (11%)
     (18%)
    Celkem 193 hlasů
     Komentářů: 21, poslední dnes 18:58
    Rozcestník
    Štítky: není přiřazen žádný štítek

    Dotaz: assembler: stale cykli

    8.3.2009 22:58 asm
    assembler: stale cykli
    Přečteno: 457×
    Ahoj, resim jednoduchou vec v asm. Chci v cyklu volat printf a tisknout 5x retezec. Problem je, ze to stale cykli a nemuzu prijit na to, proc. Poradite?
    int i = 5;
    char * msg = "Ahoj";
    
    _asm {
          mov ecx, i
       zacatek:
          push msg
          call dword ptr printf
          add esp, 4
          loop zacatek
    }
    

    Odpovědi

    8.3.2009 23:49 Sinuhet | skóre: 31
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Register ecx je jeden z tech, ktere maji funkce k volnemu pouziti, pokud chcete uchovat jeho hodnotu, musite si ji nekam (na zasobnik) pred zavolanim ulozit a po navratu z fce vybrat.
    9.3.2009 14:53 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Já bych to napsal nějak takto:
    int i = 5;
    char * msg = "Ahoj";
    
    _asm {
          mov ebx, i
          jz konec
       zacatek:
          push msg
          call dword ptr printf
          add esp, 4
          dec ebx
          jnz zacatek
       konec:
    }
    
    Instrukce loop už se moc nepoužívá, dvojice dec a jnz proběhne rychlej a navíc máte tu možnost si zvolit registr pro cyklus.
    9.3.2009 14:55 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Ten příspěvek měl být jinde ;-)
    Luboš Doležel (Doli) avatar 8.3.2009 23:49 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Nepřepisuje vám printf hodnotu registru ecx?
    9.3.2009 00:19 asm
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Diky Vam obema, mate pravdu. Uz to funguje:
    int i = 5;
    char * msg = "Ahoj";
    
    _asm {
          mov ecx, i
       zacatek:
          mov ebx, ecx
          push msg
          call dword ptr printf
          add esp, 4
          mov ecx, ebx
          loop zacatek
    }
    Luboš Doležel (Doli) avatar 9.3.2009 00:30 Luboš Doležel (Doli) | skóre: 98 | blog: Doliho blog | Kladensko
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Hmm a co když by printf() měnilo hodnotu ebx? Pushněte si to na zásobník...
    9.3.2009 14:49 Deleted [8409] | skóre: 14 | blog: darkblog
    Rozbalit Rozbalit vše Re: assembler: stale cykli
    Nemůže, podle ABI může konvence cdecl a všechny konvence pro 32 bit měnit pouze eax, ecx a edx. Ostatní registry musí být zachovány.

    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.