Я попробовал определить 1-байтовый uint8_t (8 бит) как «слово» и получить доступ к его первым 4 битам (слово младшего разряда) и последним 4 битам (слово старшего порядка) для двух 4-битных типов данных. Для доступа и индексации я попробовал определить для них макросы, однако у меня вопрос: будет ли это быстрее во время выполнения, если я реализую это как класс?
Версия макроса:
Код: Выделить всё
#include
#include
using std::cout;
using std::cin;
using std::endl;
typedef uint8_t word;
#define wordLO(wrd) (0b11110000 & wrd) >> 4
#define wordHI(wrd) 0b00001111 & wrd
#define setwordLO(wrd, num) wrd = (num = 16) {
cout
Подробнее здесь: [url]https://stackoverflow.com/questions/79863412/storing-millions-of-4-bit-values-nibbles-should-i-use-macros-or-classes[/url]
Мобильная версия