Stránka 1 z 2
Disas C
Napsal: 07 lis 2012, 00:24
od Celeron
Vazeni, nemohl by jste mi prosim nekdo prohnat nakym reverzakem kratkej programek pro Atmel 4051, kterej je napsanej v C? Potreboval bych aby z toho vypadly ASM51 instrukce. Predpokladam, ze nejakej takovej soft u C-cka existuje. Odjakziva pisu v ASM, C jsem videl jen z letadla.
Diky
Jirka
Napsal: 07 lis 2012, 08:05
od piitr
Céčkové překladače mívají přepínač, kterým se jim řekne, že nemají generovat binární výstup, ale assembler. U GCC je to, myslím, -s nebo -S nebo tak nějak, ale už si to moc nepamatuju. Ale C pro 51 nemám, takže nevím. Taky to klidně umět nemusí.
Napsal: 07 lis 2012, 08:19
od Andrea
Tak jde o disassembler nebo o kompiler C?

Napsal: 07 lis 2012, 08:37
od procesor
Ten "krátkej prográmek" máš v akej forme?
Napsal: 07 lis 2012, 12:39
od Celeron
To Andrea: Ja nevim, jak tomu vedci nadavaj, co potrebuju jsem snad popsal. Tak jeste jednou.
Mam program v C pro 4051 jako textovej soubor. Potrebuju v nem cosi predelat ale jelikoz na Cecko nic nemam a taky ho neumim, tak bych si to upravil primo v asembleru rady 51, na kterej prostredky mam a umim ho. Takze zdrojak v cecku prevyst do zdrojaku v ASM51. Existuje na to neco?
To procesor: TxT soubor, asi dve az 3 A4
Jirka
Napsal: 07 lis 2012, 12:45
od Andrea
Celeron píše:co potrebuju jsem snad popsal.
Pěkně blbě, na zdrojáku v C není co reverzovat nebo disassemblovat, když ještě není přeložený.

Napsal: 07 lis 2012, 12:48
od rnbw
Tak si zozen kompilator. V tom C programe to upravis jednoducho. Upravovat to prelozene do assembleru nie je prave najlepsi napad.
Napsal: 07 lis 2012, 12:50
od piitr
Celeron píše:... co potrebuju jsem snad popsal. Tak jeste jednou.
Když jseš tak chytrej, tak se tu neptej.
Napsal: 07 lis 2012, 13:02
od Celeron
to piitr: Co se rozcilujes? Kdyt to nebylo na Tebe.
Jirka
Napsal: 07 lis 2012, 13:11
od mtajovsky
Většina kompilátorů C dokáže i generovat listing, kde jsou instrukce společně s relativními adresami. Pro každý modul zvlášť. Ale to potřebujete právě ten kompilátor, který, jak říkáte, k dispozici nemáte. Je to určeno pro Keil C51? Ten je hardlockovaný, že? Druhá věc je, že assembler vzniklý z C vůbec není přehledný. Je to samý stack, nebo přehazování parametrů, jak to vyšší jazyky dělají. Určitě je jednodušší se trochu naučit C a udělat to v něm, pokud tedy není zásadní překážkou právě chráněný kompilátor C.
A třetí věc je ta, že se obvykle taky volají nějaké knihovní funkce. Budete ke svému assemblerovskému kódu schopen přilinkovat a volat knihovní funkce pro cečko?
Napsal: 07 lis 2012, 13:41
od ZdenekHQ
Jak která verze Keilu je hardlocknutá, já jsem zkoušel cracknutou verzi od Rusů, ale nijak mě neoslnila, je to na můj vkus moc přeplácaný a když jsem viděl tu cenu, kdybych si to náhodou chtěl koupit, tak to letělo do koše.
Napsal: 07 lis 2012, 14:39
od Celeron
Koukam ze bude jednodussi nez zacinat s C a nebo lustit ASM z C, tak si to napsat v ASM51 znova. Neni to nic slozityho, dekodovani casu z DCF a multiplexovani 6 cislic displeje. Navic to dekodovani jsem uz kdysi v ASM51 napsal, jen to "seriove" ridilo M5450 ledkovej driver.
Puvodni programek v C kterej jsem chtel predelat ridil multiplexne pres ULN2803 segmenty led displeje, ja potrebuju bcd pro 74141. Je to na retro hodiny s digitronama 10 cm vysokejma
Jirka
Napsal: 07 lis 2012, 15:17
od Habesan
Částečně to připomíná vlákno
t=54145, ve kterém
forbidden vyjádřil možnost naučit se nějaký další jazyk, když assembler už umí.
Napsal: 07 lis 2012, 18:20
od frpr666
Naučit se C zase není tak obtížné. Někteří to zvládnou za 24hodin. (google:Teach Yourself C in 24 Hours). Horší bývá nastavit si na PC prostředí (IDE, kompilátor atd.).
Podle mých posledních poznatků existuje kompilátor zdarma, který by mohl podporovat váš chip? SDCC
http://sdcc.sourceforge.net/
Podporuje to i vkádání asm do C kódu.
Napsal: 11 lis 2012, 12:44
od Celeron
Tak jsem se rozhodl, ze bych C mohl zkusit.

Hledal jsem na netu neco volnyho aby to umelo prociky, ktery me zajimaji (Z80, I51, 68 a pod). Nasel jsem treba tohle, SDCC,
http://sdcc.sourceforge.net/, viz prispevek vyse.
Stahnul, nainstaloval a ... Ve slozce je spustitelny pouze Uninstal

. Nezkousel jste ho nekdo v realu zda funguje a kde je vlastni exe? Zkousel jsem W7, XP, starsi verze SDCC a je stale stejny problem.
Diky
Jirka