У меня есть два битовых поля, один из 8 бит и один из 4 бит.Сопоставление битового поля с другим битовым полем в C#
[Flags]
public enum Bits1 {
A = 1,
B = 2,
C = 4,
D = 8,
E = 16,
F = 32,
G = 64,
H = 128
}
[Flags]
public enum Bits2 {
I = 1,
J = 2,
K = 4,
L = 8
}
мне нужно отобразить биты в Bits1 к Bits2, как это:
Bits2 = Map(Bits1)
Например, если предположить, что карты А и С, карту на J, B карты ни к чему, и D, чтобы I в отображении ABCD (значение 13), после прохождения функции отображения, возвращает IJ (значение 3).
Карта должна быть установлена и изменена программно по мере необходимости. Это звучит как нечто, что может сделать словарь, но я не уверен, как его настроить. Какой был бы лучший способ сделать это на C#?
Возможно, я мог бы создать битмаску на основе сопоставления, которое я хочу использовать, а затем применить битовую маску к первому битовому полю? – GameKyuubi