From 9b025a7e51024c7796acee8b27a937fbf0e2f3e2 Mon Sep 17 00:00:00 2001 From: rogozinay Date: Tue, 16 Jan 2024 22:51:08 +0300 Subject: [PATCH] Add big_digit() func --- main.cpp | 23 ++++++++++++++--------- 1 file changed, 14 insertions(+), 9 deletions(-) diff --git a/main.cpp b/main.cpp index c2b8934..f14f033 100644 --- a/main.cpp +++ b/main.cpp @@ -5,6 +5,10 @@ #include #include +#include +#include +#include + char nibble_to_hex(uint8_t i) { char digits[] = "0123456789abcdef"; assert(0x0 <= i && i <= 0xf); @@ -44,6 +48,13 @@ char bit_digit(uint8_t byte, uint8_t bit) { return '0'; } +// Функция для печати байта в двоичной системе +void print_in_binary(uint8_t byte) { + for (uint8_t bit = 7; bit > 0; bit--) { + std::cout << bit_digit(byte, bit); + } +} + int main() { uint8_t u8 = 0x42; uint16_t u16 = 0x42; @@ -53,27 +64,21 @@ int main() { print_in_hex(&u8, sizeof(u8)); std::cout << "\nu8 binary: "; - for (int i = 7; i >= 0; --i) { - std::cout << bit_digit(u8, i); - } + print_in_binary(u8); std::cout << '\n'; std::cout << "\nu16 bytes: "; print_in_hex(&u16, sizeof(u16)); std::cout << "\nu16 binary: "; - for (int i = 15; i >= 0; --i) { - std::cout << bit_digit(u16, i); - } + print_in_binary(u16); std::cout << '\n'; std::cout << "\nu32 bytes: "; print_in_hex(&u32, sizeof(u32)); std::cout << "\nu32 binary: "; - for (int i = 31; i >= 0; --i) { - std::cout << bit_digit(u32, i); - } + print_in_binary(u32); std::cout << '\n'; return 0;