#include <perms.h>
// Edinburgh IMP77 Compiler - Version 8.4
//
// 1 %begin
int main(int argc, char **argv) { /*%begin*/
_imp_initialise(argc, argv);
// 2 %integer res, fred, jim
int RES;
int FRED;
int JIM;
// 3 fred = 1
FRED = 1;
// 4 jim = fred + 2
JIM = FRED + 2;
// 5 ! how do you do integer exponentiation?
// 6 res = ((fred * jim) + jim) - ((fred << jim) // jim)
RES = FRED * JIM + JIM - ((long)(FRED << JIM) / (long)JIM);
// 7 res = fred >> (fred ! jim) & jim;
RES = (unsigned int)FRED >> (FRED | JIM) & JIM;
// 8 %endofprogram
_imp_stop(0);
return 0;
end_0:;
}