#include #include #include using namespace std; void print_in_hex(uint8_t byte) { cout << hex << setw(2) << setfill('0') << static_cast(byte) << " "; } void print_in_hex(const void* data, size_t size) { const uint8_t* bytes = static_cast(data); for (size_t i = 0; i < size; ++i) { print_in_hex(bytes[i]); if ((i + 1) % 16 == 0) cout << endl; } cout << endl; } void print_in_binary(uint8_t byte) { for (int i = 7; i >= 0; --i) cout << ((byte >> i) & 1); cout << " "; } void print_in_binary(const void* data, size_t size) { const uint8_t* bytes = static_cast(data); for (size_t i = 0; i < size; ++i) { print_in_binary(bytes[i]); if ((i + 1) % 4 == 0) cout << endl; } cout << endl; } int main() { uint8_t data[] = {0xDE, 0xAD, 0xBE, 0xEF, 0x12, 0x34, 0x56, 0x78}; size_t size = sizeof(data); cout << "Hexadecimal representation:" << endl; print_in_hex(data, size); cout << "Binary representation:" << endl; print_in_binary(data, size); return 0; }