Guest User

Untitled

a guest
Jul 22nd, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.98 KB | None | 0 0
  1. /*
  2.     Výpis nezpracovane pameti hexadecimalnich
  3.     bajtech a formatu vhodne clenemu pro tisk NO KIDDING
  4. */
  5.  
  6. void dump(const unsigned char *data_buffer, const unsigned int length) {
  7.  
  8.     unsigned char byte;
  9.     unsigned int i, j;
  10.  
  11.     for(i = 0; i < length; i++) {
  12.  
  13.         byte = data_buffer[i];
  14.         printf("%02x ", data_buffer[i]);    // zobrazi data hexadecimalne
  15.  
  16.         if(((i % 16) == 15) || (i == length - 1)) {
  17.             for(j = 0; j < 15 - (i % 16); j++)
  18.                 printf(" ");
  19.             printf("| ");
  20.  
  21.             for(j = (i - (i % 16)); j <= i; j++) {    // zobrazi znaky z radku, ktere ma smysl tisknout
  22.                 byte = data_buffer[j];
  23.                 if((byte > 31) && (byte < 127))    // rozsah vne znaku, ktere ma smysl tisknout
  24.                     printf("%c", byte);
  25.                 else
  26.                     printf(".");
  27.             }
  28.  
  29.             printf("\n");    // vypis prazdneho radku (co radek, to 16 bajtu)
  30.         }
  31.     }
  32. }
Add Comment
Please, Sign In to add comment