Disas C

Diskuze a poradna o programátorech a programování různých obvodů

Moderátor: Moderátoři

Zpráva
Autor
Uživatelský avatar
Celeron
Příspěvky: 20526
Registrován: 02 dub 2011, 00:00
Bydliště: Nový Bydžov

Disas C

#1 Příspěvek 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
Uživatelský avatar
piitr
Příspěvky: 1003
Registrován: 19 říj 2007, 00:00
Kontaktovat uživatele:

#2 Příspěvek 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í.
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#3 Příspěvek od Andrea »

Tak jde o disassembler nebo o kompiler C? :?
Uživatelský avatar
procesor
Příspěvky: 5286
Registrován: 02 říj 2009, 00:00
Bydliště: PO

#4 Příspěvek od procesor »

Ten "krátkej prográmek" máš v akej forme?
Uživatelský avatar
Celeron
Příspěvky: 20526
Registrován: 02 dub 2011, 00:00
Bydliště: Nový Bydžov

#5 Příspěvek 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
Andrea
Příspěvky: 9340
Registrován: 07 zář 2007, 00:00

#6 Příspěvek 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ý. :roll:
Uživatelský avatar
rnbw
Příspěvky: 37419
Registrován: 21 bře 2006, 00:00
Bydliště: Bratislava

#7 Příspěvek od rnbw »

Tak si zozen kompilator. V tom C programe to upravis jednoducho. Upravovat to prelozene do assembleru nie je prave najlepsi napad.
Uživatelský avatar
piitr
Příspěvky: 1003
Registrován: 19 říj 2007, 00:00
Kontaktovat uživatele:

#8 Příspěvek od piitr »

Celeron píše:... co potrebuju jsem snad popsal. Tak jeste jednou.
Když jseš tak chytrej, tak se tu neptej.
Uživatelský avatar
Celeron
Příspěvky: 20526
Registrován: 02 dub 2011, 00:00
Bydliště: Nový Bydžov

#9 Příspěvek od Celeron »

to piitr: Co se rozcilujes? Kdyt to nebylo na Tebe. 8O
Jirka
Uživatelský avatar
mtajovsky
Příspěvky: 3728
Registrován: 19 zář 2007, 00:00
Bydliště: Praha

#10 Příspěvek 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?
Uživatelský avatar
ZdenekHQ
Významný člen
Příspěvky: 25519
Registrován: 21 črc 2006, 00:00
Bydliště: skoro Brno
Kontaktovat uživatele:

#11 Příspěvek 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.
Pro moje oslovení klidně použijte jméno Zdeněk
Správně navržené zapojení je jako recept na dobré jídlo.
Můžete vynechat půlku ingrediencí, nebo přidat jiné,
ale jste si jistí, že vám to bude chutnat[?
]
Uživatelský avatar
Celeron
Příspěvky: 20526
Registrován: 02 dub 2011, 00:00
Bydliště: Nový Bydžov

#12 Příspěvek 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
Uživatelský avatar
Habesan
Příspěvky: 7377
Registrován: 12 led 2009, 00:00
Bydliště: Plzeňsko
Kontaktovat uživatele:

#13 Příspěvek 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í.
Sháním hasičák s CO2 "sněhový", raději funkční.
(Nemusí mít platnou revizi.)
(Celkově budu raději, když se to obejde bez papírů.)
Uživatelský avatar
frpr666
Příspěvky: 1051
Registrován: 28 pro 2009, 00:00

#14 Příspěvek 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.
Uživatelský avatar
Celeron
Příspěvky: 20526
Registrován: 02 dub 2011, 00:00
Bydliště: Nový Bydžov

#15 Příspěvek 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 8O . 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
Odpovědět

Zpět na „Programování PIC, ATMEL, EEPROM a dalších obvodů“