-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathfuncs33.cpp
More file actions
35 lines (26 loc) · 1.23 KB
/
funcs33.cpp
File metadata and controls
35 lines (26 loc) · 1.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
#include <iostream>
// Функция для сравнения указанных последовательностей битов в числе для 31
bool compareBitSequences(unsigned long long& number, int s1, int s2, int len) {
// Создаем маску для первой последовательности
int mask1 = (1 << len) - 1;
mask1 <<= s1;
// Создаем маску для второй последовательности
int mask2 = (1 << len) - 1;
mask2 <<= s2;
// Извлекаем битовые последовательности из числа
int extracted1 = (number & mask1) >> s1;
int extracted2 = (number & mask2) >> s2;
// Сравниваем битовые последовательности
return extracted1 == extracted2;
}
//для 33
bool compareBitSequences2(unsigned long long& num1, unsigned long long& num2, int startBit, int length) {
int mask = ((1 << length) - 1) << startBit; // Создаем маску для извлечения указанной последовательности битов
int extractedBits1 = (num1 & mask) >> startBit; // Извлекаем указанную последовательность битов из первого числа
int extractedBits2 = (num2 & mask) >> startBit; // Извлекаем указанную последовательность битов из второго числа
return extractedBits1 == extractedBits2; // Сравниваем извлеченные последовательности битов
<<<<<<< HEAD
}
=======
}
>>>>>>> 07f38bcb5a8691e0f9da8b0e3934363f1fd0a694