Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- rand_seed = *(int*)input_buffer_ptr;
- moving_input_ptr = (BYTE*)((int*)input_buffer_ptr + 1);
- RAM: .... [8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit] ....
- .... [8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit] ....
- ^
- input_buffer_ptr
- (int*)input_buffer_ptr; // casts this pointer to int*,
- //so now you treat data under this pointer as 4 bytes integer
- *(int*)input_buffer_ptr; // operator * before pointer gets data under
- //that pointer, in this case, integer (4 bytes).
- .... [8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit] ....
- | random_seed |
- (int*)input_buffer_ptr + 1
- // ^ ^
- // casting to int* moving pointer to size of int (4 bytes)
- .... [8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit] ....
- ^
- ((int*)input_buffer_ptr + 1)
- (BYTE*)((int*)input_buffer_ptr + 1);
- // ^
- // casting pointer to BYTE*, so it points to the same place
- // but now treated as one byte pointer.
- *(BYTE*)((int*)input_buffer_ptr + 1);
- .... [8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit][8bit] ....
- | |
- ^
- *(BYTE*)((int*)input_buffer_ptr + 1)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement