Výsledky 1 až 7 z 7

Téma: ASM prevod do C/C++

Hybrid View

Předcházející příspěvek Předcházející příspěvek   Další příspěvek Další příspěvek
  1. #1

    Standardní Re: ASM prevod do C/C++

    Ano to by asi jit melo, ale jestli se neletu je potreba prepsat 32bit instrukce na 64bit nebo ne ? A stim si stejne nevim rady.
    Musism si to jeste v klidu prostudovat.
    Naposledy upravil SOAD; 10.01.2010 v 20:41.
    Normalni PC :)

  2. #2
    Administrátor マツダ mince Avatar uživatele Marty
    Založen
    07.10.2002
    Bydliště
    Praha, Sanctuary
    Věk
    43
    Příspěvky
    8 225
    Vliv
    300

    Standardní Re: ASM prevod do C/C++

    Citace Původně odeslal SOAD Zobrazit příspěvek
    Ano to by asi jit melo, ale jestli se neletu je potreba prepsat 32bit instrukce na 64bit nebo ne ? A stim si stejne nevim rady.
    Musism si to jeste v klidu prostudovat.
    Musí to být zpětně kompatibilní, takže to určitě nemusíš přepisovat. Ostatně, e_x (eax, ebx, ecx, edx) jsou 32bitové registry a stejně tak můžeš použít _x registry, které jsou 16bitové - zase zpětná kompatibilita. Jen pak pracuješ s nižšími bajty v těch registrech.
    CUBE> Ryzen 7 7700X + Arctic Lq Frzr III 64 GB DDR5-6000 ◦ ASUS TUF B650PLUS ◦ ASUS RTX3060 OC 12GB ◦ Kingston KC3000 2TB ◦ SS G12 GM-650 Gold ◦ Samsung S27A800 4K
    WORK> HP EliteBook 845 G9 ◦ Ryzen 5 PRO 6550 ◦ 32 GB DDR3 ◦ 2048 GB nVME SSD ◦ 14.1" 1920x1080 LED + 2x 32" Dell 4K ◦ Win11 Enterprise
    SERVER> HP ProLiant Microserver Gen8 ◦ Intel Core i5-3540T ◦ 16 GB DDR3 ◦ 180 GB SSD + 2x4 TB WD RED + 2x16 TB Toshiba ◦ 10GbE NIC
    PHOTO> Canon EOS 70D ◦ EF 70-200/4L ◦ EF-S 10-18 STM ◦ EF 50/1.8II ◦ EF-S 40/2.8 STM ◦ Yongnuo YN-568EX ◦ Tamrac 5534
    HOMECINEMA> TV Samsung UE55Q55T 55" 4K ◦ DVD Pioneer DV-310K ◦ AVR Yamaha RX-V359 ◦ SPK Dexon Allegro 5.0
    OTHERSTUFF> Mikrotik RB760iGS ◦ Mikrotik CSS610
    ◦ Mikrotik CRS326 ◦ UniFi WLAN ◦ Xerox B235 ◦ Canon PiXMA MG5350

  3. #3

    Standardní Re: ASM prevod do C/C++

    Tak jsem nakonec nasel, ze to jde pomoci funkce __cpuid() pres #include <intrin.h>
    Mam ale porad jeden problem. Family, model a stepping mi to vraci ok
    (vraci integer), ale nazev vyrobce a identifikacni string procesoru vraci nesmyslne znaky. Mam bordel v tom, jak to spravne vratit.

    Priklad:
    mam funkci char* info(int parametr)
    pri parametru 2 vraci jmeno vyrobce char CPUString[0x20];

    a pak v exportu:

    JNIEXPORT jstring JNICALL Java_com_mindprod_pentium_Pentium_cpuIdVendor
    (JNIEnv * env, jclass theClass )
    {
    char* vyrobce;
    vyrobce = info(2);
    return env->NewStringUTF( (char *)vyrobce );
    }

    Mam hokej v tech datovych typech a v tom jak spravne vratit nazev vyrobce. Problem bude nejspis v te cervene oznacene casti. Poradi mi nekdo, jak to spravne napsat ?

    Diky
    Normalni PC :)

  4. #4

    Standardní Re: ASM prevod do C/C++

    A jak ta funkce info alokuje ten string?

    Vraci pointer na char, ale ten string musi nekde existovat.
    Pokud je ve funkci info alokovanej na stacku, tak nejspis po zavolani te funkce zanikne.
    A pointer vyrobce pak muze ukazovat na nejaky bordel.

    nevim jak ta funkce info vypada, ale melo by se to spis volat nejak takle.

    char vyrobce[32];
    info(2, vyrobce);
    ...


    pricemz hlavicka takhle nejak info(int parametr, char* pVyrobce)

    pricemz pVyrobce by mohl byt nepovinny parametr a default NULL.
    Asus P5B Deluxe/WiFi, Intel Q8300@7.5x440=3300MHz VCc1.15V, Speedstep enabled, CM HyperTX, 58oC IntelBurnTest pri 24oC okoli, 2x2048 DDR2 800 Geil(@866 5-6-6-15, 1.80V), HDD 3xSamsung F1 1TB, Gigabyte NX88T zalman, LCD FSC S20-1W, CM Centurion 532, PSU Seasonic 400W, UPS CyberFort 350

Informace o tématu

Users Browsing this Thread

Toto téma si právě prohlíží 1 uživatelů. (0 registrovaných a 1 anonymních)

Podobná témata

  1. prevod WMA suborov na WAV v NERE
    Založil radone v sekci fóra Programy a problémy s nimi
    Odpovědí: 1
    Poslední příspěvek: 28.06.2004, 23:52
  2. prevod .mov > .avi ?
    Založil jauli v sekci fóra Programy a problémy s nimi
    Odpovědí: 3
    Poslední příspěvek: 06.06.2004, 09:45
  3. prevod videa
    Založil Pete... v sekci fóra Programy a problémy s nimi
    Odpovědí: 1
    Poslední příspěvek: 13.05.2004, 22:38
  4. neresil nekdo : prevod UNIPLEX do RTF
    Založil Ganja-NIN v sekci fóra Programy a problémy s nimi
    Odpovědí: 0
    Poslední příspěvek: 17.04.2003, 13:50
  5. Delay() v 8086 asm
    Založil Swap v sekci fóra BIOSy
    Odpovědí: 0
    Poslední příspěvek: 31.03.2003, 11:02

Pravidla přispívání

  • Nemůžete zakládat nová témata
  • Nemůžete zasílat odpovědi
  • Nemůžete přikládat přílohy
  • Nemůžete upravovat své příspěvky
  •