Add big_digit() func
Этот коммит содержится в:
23
main.cpp
23
main.cpp
@@ -5,6 +5,10 @@
|
||||
#include <cstdint>
|
||||
#include <cassert>
|
||||
|
||||
#include <iostream>
|
||||
#include <cstdint>
|
||||
#include <cassert>
|
||||
|
||||
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;
|
||||
|
||||
Ссылка в новой задаче
Block a user