Minimalizace programu v C

Potřeboval bych poradit, mám takový docela závažný problém, dá se nějakým způsobem minimalizovat program v C, využívám Keil C51, nebo’t se mi stalo, že jsem napsal program, nebo spíš jenom jeho jednu část a po zkompilování mi vznikl 7Kb hex, soubor, a jelikož píšu program pro processor AT89s52, který má jenom 8Kb flash, a bohužel nemám ještě všechny věci naprogramovaný, tudíž se bojím že budu mít konečný program mnohem větší než co se mi vejde do procesoru.

Děkuji za radu.

Muzes zkusit nektery casti kodu zkusit napsat jinak, urcite se nektery casti daj napsat usporneji. Potom zalezi, jak optimalizuje prekladac kod. To co pises neznam, ale treba gcc ma vic urovni optimalizace kodu a rozdily jsou dost znatelne. Hex soubor je dost ukecanej, takze skutecna velikost kodu bude mensi, ale to by ten prekladac mel nejak umet rict. No a posledni vec, ktera je ti asi prd platna je prejit na jiny procesory nez tyhle archeologicky vykopavky :slight_smile:

HEX je vždycky mnohem větší než data k naprogramování. Překladač ti při překladu nenapíše, jak velký je program?
Např. hex: 3.66kB -> bin: 1.3kB

No jako soubor je velkej necelej kB, ale mám tam knihovny ještě taky.

No jako na AVR se chcu dostat teď o prázdninách, ale teď dělám projekt do jedný soutěže, a předělávat všechny plošnáky, a kupovat vše znovu a učit na poslední chvíli asi by to tak lehce nešlo :smiley:

1 kB hex bude tak 300-400 B