getbits.c 459 B

1234567891011121314151617181920212223
  1. /*
  2. * Giovanni Agosta, Andrea Di Biagio
  3. * Politecnico di Milano, 2007
  4. *
  5. * getbits.c
  6. * Formal Languages & Compilers Machine, 2007/2008
  7. *
  8. */
  9. #include <stdio.h>
  10. #include <stdlib.h>
  11. #include "getbits.h"
  12. unsigned int getbits(unsigned int data, int from, int to){
  13. unsigned int res;
  14. unsigned int mask;
  15. mask = (0xFFFFFFFF >> (31 - from));
  16. res = data & mask;
  17. mask = (0xFFFFFFFF << to);
  18. res = res & mask;
  19. res = res >> to;
  20. return res;
  21. }