#include "stackCode.h" Code Codes[MAX_CODE]; int nCode; void codeGen() { int i; printf("int stack[100]; \nmain(){ int sp = 0; \n"); for(i = 0; i < nCode; i++){ switch(Codes[i].opcode){ case PUSH: printf("stack[sp++]=%d;\n",Codes[i].operand); break; case ADD: printf("sp--; stack[sp-1] += stack[sp];\n"); break; case SUB: printf("sp--; stack[sp-1] -= stack[sp];\n"); break; case PRINT: printf("printf(\"%%d\\n\",stack[--sp]);\n"); break; } } printf("}\n"); }