| ??? 12/30/04 10:10 Read: times |
#84095 - C Code t o Assembly Responding to: ???'s previous message |
Hi Shahzad,
The tool to convert C to assembler is your compiler, that's what the compiler does. Writing the code in assembler in the first place can be a little more efficient. Are you sure that its code memory you are running out of? What imediatley stikes me about your code is that you are using a lot of unsigned long variables (4 bytes each) which will take up a lot of data space. See if some of those variables could be unsigned short (2 bytes each) or even single character variables. A good place to start would be the DaysInPriorMonths variable. Since the maximum value of any element is 31 you could use unsigned chars. Since only February changes I would place two constant tables in the code memory rather than building the table each time the code is run. e.g. unsigned char code DaysInLeapYear[] = { 31, 29, 31, 30 ... etc. unsigned char code DaysInNonLeapYear[] = { 31, 28, 31, 30 ... etc. You may find this is more efficient in both code and data memory than building the table each time through. Hope this helps Paul |
| Topic | Author | Date |
| C Code t o Assembly | 01/01/70 00:00 | |
| C to Asm | 01/01/70 00:00 | |
| C Code t o Assembly | 01/01/70 00:00 | |
| only one table | 01/01/70 00:00 | |
| Need some more details | 01/01/70 00:00 | |
| Not even true ! | 01/01/70 00:00 | |
| Answer is Wrong!! | 01/01/70 00:00 | |
| Re : previous 3 replies and Paul | 01/01/70 00:00 | |
| Previously on 8052.com | 01/01/70 00:00 | |
| Overflow | 01/01/70 00:00 | |
| just one array | 01/01/70 00:00 | |
| too limited, Paul | 01/01/70 00:00 | |
| Nothing to do with scope | 01/01/70 00:00 | |
| Agreed | 01/01/70 00:00 | |
| No success ! | 01/01/70 00:00 | |
| Re: Peter | 01/01/70 00:00 | |
| to assembly | 01/01/70 00:00 | |
| Example code | 01/01/70 00:00 | |
| Any unused functions in your program? | 01/01/70 00:00 | |
| query | 01/01/70 00:00 | |
| Off-Topic - start a new thread | 01/01/70 00:00 | |
... and use a _descriptive_ subject! | 01/01/70 00:00 |



