Gast
#1652848
Hallo Ich möchte ein art Betriebssystem programmieren, das ein programm in extrem einfacher und selbst entwickelten sprache ausführt. Dazu habe ich eine Funktion geschrieben, die ein gigantisches switch (153 cases) enthält, ein case für jeden Programmbefehl (von meiner eigenen sprache). Nun möchte ich die funktion am ende rekursiv aufrufen, sodass die Befehle nach einander abgearbeitet werden. Da die funktion ausser in den Cases einzelne lokale variablen keine variablen enthält, sollte das mit dem SRAM gehen, ausserdem sollten die einzelnen Teilprogramme nicht so lang sein. Nun zu meinem Problem: als ich das komplette switch programmiert hatte, war der programmcode 2996 bytes gross. Als ich dann die zeile, wo sich die Funktion selbst aufruft (mit 2 parametern) einfügte, war das programm plötzlich 4810 bytes gross!! Wie kann das sein?? Arbeite mit obtimierung s Gruss Erdbewohner