ИКБО-11-22

Вариант №1

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.
0 1 2 7 8 16 17 21 M1 M3 M4

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('3691684')
(0, 84, 28)

>>> main('1287796')
(0, 422, 9)

>>> main('3499169')
(1, 356, 26)

>>> main('2252604')
(0, 95, 17)

Вариант №2

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.
0 1 5 6 9 10 11 20 21 29 O1 O2 O3 O4 O5

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(1599933)
{'O1': '1', 'O2': '30', 'O3': '6', 'O4': '0', 'O5': '781'}

>>> main(692169)
{'O1': '1', 'O2': '4', 'O3': '15', 'O4': '1', 'O5': '337'}

>>> main(1328928)
{'O1': '0', 'O2': '16', 'O3': '12', 'O4': '1', 'O5': '648'}

>>> main(1774187)
{'O1': '1', 'O2': '21', 'O3': '9', 'O4': '0', 'O5': '866'}

Вариант №3

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.
0 4 5 11 12 16 17 18 19 C1 C3 C4 C5

Тесты:

>>> main([('C1', 24), ('C3', 7), ('C4', 0), ('C5', 2)])
'552984'

>>> main([('C1', 31), ('C3', 23), ('C4', 0), ('C5', 1)])
'356383'

>>> main([('C1', 17), ('C3', 0), ('C4', 1), ('C5', 1)])
'393233'

>>> main([('C1', 24), ('C3', 16), ('C4', 1), ('C5', 2)])
'720920'

Вариант №4

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.
0 5 6 8 9 10 17 H1 H2 H4

Тесты:

>>> main((61, 7, 81))
'83453'

>>> main((13, 7, 127))
'130509'

>>> main((6, 4, 165))
'169222'

>>> main((44, 7, 202))
'207340'

Вариант №5

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.
0 6 7 13 14 18 19 21 22 29 30 T1 T2 T3 T4 T5 T6

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main(1994932003)
{'T1': '0x23', 'T2': '0x7e', 'T3': '0x0', 'T4': '0x5', 'T5': '0xdb', 'T6': '0x1'}

>>> main(1687190785)
{'T1': '0x1', 'T2': '0x7a', 'T3': '0x1', 'T4': '0x2', 'T5': '0x92', 'T6': '0x1'}

>>> main(1430602403)
{'T1': '0x23', 'T2': '0x5', 'T3': '0x15', 'T4': '0x0', 'T5': '0x55', 'T6': '0x1'}

>>> main(1610923070)
{'T1': '0x3e', 'T2': '0x78', 'T3': '0x12', 'T4': '0x0', 'T5': '0x80', 'T6': '0x1'}

Вариант №6

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

0 6 7 9 10 12 13 16 17 21 22 H1 H2 H3 H4 H5 H6

Выходные данные:

Целое.

0 6 7 9 10 11 14 15 17 18 22 H1 H3 H6 H4 H2 H5

Тесты:

>>> main(2863091)
5761523

>>> main(734599)
1428103

>>> main(7567672)
6643512

>>> main(7723366)
6911846

Вариант №7

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

0 1 2 3 12 13 20 21 25 B1 B2 B3 B4 B5

Выходные данные:

Десятичная строка.

0 7 8 17 18 22 23 24 25 B4 B3 B5 B2 B1

Тесты:

>>> main(1985332)
'16869106'

>>> main(46838461)
'56252245'

>>> main(818966)
'25420387'

>>> main(62626379)
'49760732'

Вариант №8

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

0 5 6 10 11 13 14 15 16 25 Q1 Q2 Q3 Q4 Q5

Выходные данные:

Целое.

0 1 2 7 8 17 18 22 23 25 Q4 Q1 Q5 Q2 Q3

Тесты:

>>> main(66518327)
64222943

>>> main(5662017)
39081477

>>> main(38973775)
51794494

>>> main(23017644)
59334576

Вариант №9

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.
0 4 5 6 11 12 14 15 19 20 28 R1 R2 R3 R4 R5 R6

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('86992612')
{'R1': '0x4', 'R2': '0x1', 'R3': '0x1b', 'R4': '0x6', 'R5': '0x1e', 'R6': '0x52'}

>>> main('383475106')
{'R1': '0x2', 'R2': '0x1', 'R3': '0x36', 'R4': '0x5', 'R5': '0x16', 'R6': '0x16d'}

>>> main('401379752')
{'R1': '0x8', 'R2': '0x1', 'R3': '0x6', 'R4': '0x1', 'R5': '0x19', 'R6': '0x17e'}

>>> main('20258448')
{'R1': '0x10', 'R2': '0x0', 'R3': '0x3a', 'R4': '0x1', 'R5': '0xa', 'R6': '0x13'}

Вариант №10

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.
0 4 5 7 8 17 18 25 L1 L2 L3 L4

Тесты:

>>> main(('0x5', '0x6', '0x8e', '0xc'))
3182277

>>> main(('0xe', '0x1', '0x1b7', '0x24'))
9549614

>>> main(('0xc', '0x2', '0x253', '0xfa'))
65688396

>>> main(('0x1e', '0x7', '0x37d', '0x3c'))
15957502

Вариант №11

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

0 1 3 4 6 7 10 N1 N3 N4

Выходные данные:

Целое.

0 3 4 6 7 9 10 N4 N3 N1

Тесты:

>>> main(1437)
1163

>>> main(1534)
907

>>> main(1701)
1293

>>> main(1972)
399

Вариант №12

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Десятичная строка.
0 8 9 16 G1 G2 17 18 19 20 22 23 32 G2 G3 G4 G5

Тесты:

>>> main({'G1': '78', 'G2': '422', 'G3': '1', 'G4': '4', 'G5': '1007'})
'8452262990'

>>> main({'G1': '459', 'G2': '374', 'G3': '1', 'G4': '2', 'G5': '932'})
'7820996043'

>>> main({'G1': '40', 'G2': '696', 'G3': '0', 'G4': '4', 'G5': '722'})
'6061125672'

>>> main({'G1': '332', 'G2': '515', 'G3': '1', 'G4': '3', 'G5': '436'})
'3661367116'

Вариант №13

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.
0 3 4 13 14 17 O1 O2 O3 18 27 28 34 O4 O5

Тесты:

>>> main({'O1': '0x9', 'O2': '0x3b4', 'O3': '0x4', 'O4': '0x279', 'O5': '0x68'})
'0x689e53b49'

>>> main({'O1': '0xe', 'O2': '0xa6', 'O3': '0xe', 'O4': '0x24c', 'O5': '0x7e'})
'0x7e9338a6e'

>>> main({'O1': '0xa', 'O2': '0xcf', 'O3': '0xa', 'O4': '0x1cb', 'O5': '0x59'})
'0x5972e8cfa'

>>> main({'O1': '0xa', 'O2': '0x5e', 'O3': '0xf', 'O4': '0x25e', 'O5': '0x41'})
'0x4197bc5ea'

Вариант №14

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.
0 3 4 5 10 11 16 17 18 24 C1 C2 C3 C4 C5 C6

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main('12122557')
[('C1', '13'), ('C2', '1'), ('C3', '13'), ('C4', '31'), ('C5', '0'), ('C6', '46')]

>>> main('16683778')
[('C1', '2'), ('C2', '0'), ('C3', '24'), ('C4', '18'), ('C5', '1'), ('C6', '63')]

>>> main('6999215')
[('C1', '15'), ('C2', '0'), ('C3', '37'), ('C4', '25'), ('C5', '1'), ('C6', '26')]

>>> main('11418067')
[('C1', '3'), ('C2', '1'), ('C3', '14'), ('C4', '7'), ('C5', '1'), ('C6', '43')]

Вариант №15

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

0 6 7 12 13 20 21 23 24 25 B1 B2 B3 B4 B5

Выходные данные:

Целое.

0 7 8 9 10 16 17 22 23 25 B3 B5 B1 B2 B4

Тесты:

>>> main('0x1e8a638')
60350789

>>> main('0x3e9a9fc')
61338445

>>> main('0x1a51ae3')
48991528

>>> main('0x5f018a')
17180920

Вариант №16

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.
0 1 5 6 7 8 17 18 22 23 30 J1 J2 J3 J4 J6

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('1783164284')
{'J1': 0, 'J2': 30, 'J3': 1, 'J4': 237, 'J6': 212}

>>> main('1272388991')
{'J1': 1, 'J2': 31, 'J3': 1, 'J4': 797, 'J6': 151}

>>> main('941405317')
{'J1': 1, 'J2': 2, 'J3': 2, 'J4': 180, 'J6': 112}

>>> main('92079207')
{'J1': 1, 'J2': 19, 'J3': 1, 'J4': 260, 'J6': 10}

Вариант №17

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.
0 7 8 9 10 16 17 21 22 26 27 Z1 Z2 Z3 Z4 Z5 Z6

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(217920058)
('58', '2', '76', '30', '19', '1')

>>> main(99118862)
('14', '3', '27', '20', '23', '0')

>>> main(2357310)
('62', '0', '126', '17', '0', '0')

>>> main(228986070)
('214', '0', '3', '19', '22', '1')

Вариант №18

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.
0 6 7 15 16 17 P1 P2 P3 18 23 24 28 29 33 34 35 P3 P5 P6

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('30520457954')
{'P1': 98, 'P2': 117, 'P3': 41, 'P5': 24, 'P6': 1}

>>> main('21044533523')
{'P1': 19, 'P2': 50, 'P3': 90, 'P5': 7, 'P6': 1}

>>> main('65854931023')
{'P1': 79, 'P2': 256, 'P3': 66, 'P5': 26, 'P6': 3}

>>> main('20342729876')
{'P1': 20, 'P2': 217, 'P3': 133, 'P5': 5, 'P6': 1}

Вариант №19

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.
0 1 2 3 11 12 19 20 24 25 27 K1 K2 K3 K4 K5 K6

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Тесты:

>>> main('0x4d9ec06')
{'K1': 2, 'K2': 1, 'K3': 384, 'K4': 158, 'K5': 13, 'K6': 2}

>>> main('0x2f6d0d5')
{'K1': 1, 'K2': 1, 'K3': 26, 'K4': 109, 'K5': 15, 'K6': 1}

>>> main('0xdaef1b2')
{'K1': 2, 'K2': 0, 'K3': 54, 'K4': 239, 'K5': 26, 'K6': 6}

>>> main('0x2251926')
{'K1': 2, 'K2': 1, 'K3': 292, 'K4': 81, 'K5': 2, 'K6': 1}

Вариант №20

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

0 6 7 8 9 10 12 R1 R2 R4

Выходные данные:

Десятичная строка.

0 1 2 3 9 10 12 R2 R1 R4

Тесты:

>>> main(8106)
'7505'

>>> main(7314)
'7313'

>>> main(342)
'688'

>>> main(906)
'81'

Вариант №21

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.
0 1 8 9 17 U1 U2 U3 18 25 26 34 U4 U5

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('12033426548')
[('U1', '0x0'), ('U2', '0x3a'), ('U3', '0x1c2'), ('U4', '0x4f'), ('U5', '0xb3')]

>>> main('19131158121')
[('U1', '0x1'), ('U2', '0x34'), ('U3', '0x127'), ('U4', '0x13'), ('U5', '0x11d')]

>>> main('7657864967')
[('U1', '0x1'), ('U2', '0x83'), ('U3', '0xdf'), ('U4', '0x1c'), ('U5', '0x72')]

>>> main('6174446051')
[('U1', '0x1'), ('U2', '0xf1'), ('U3', '0x148'), ('U4', '0x1'), ('U5', '0x5c')]

Вариант №22

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

0 4 5 6 7 13 14 15 23 R1 R2 R3 R4 R5

Выходные данные:

Шестнадцатиричная строка.

0 6 7 11 12 13 21 22 23 R3 R1 R4 R5 R2

Тесты:

>>> main('0x985ed7')
'0xa61bbd'

>>> main('0x74b1de')
'0x9d2f63'

>>> main('0xd0d74d')
'0xb436ae'

>>> main('0x7a09fd')
'0xde8e93'

Вариант №23

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Выходные данные:

Целое.
0 3 4 6 7 14 15 16 18 19 28 I1 I2 I3 I4 I6

Тесты:

>>> main({'I1': '0x9', 'I2': '0x5', 'I3': '0x73', 'I4': '0x1', 'I6': '0x100'})
134265305

>>> main({'I1': '0x5', 'I2': '0x6', 'I3': '0x6d', 'I4': '0x1', 'I6': '0x1ba'})
231782117

>>> main({'I1': '0xf', 'I2': '0x6', 'I3': '0x57', 'I4': '0x0', 'I6': '0x1c7'})
238562287

>>> main({'I1': '0xb', 'I2': '0x3', 'I3': '0xdd', 'I4': '0x1', 'I6': '0x4d'})
40431291

Вариант №24

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.
0 6 7 12 13 18 19 20 21 23 L1 L2 L4 L5 L6

Тесты:

>>> main([('L1', 85), ('L2', 6), ('L4', 0), ('L5', 0), ('L6', 6)])
'12583765'

>>> main([('L1', 84), ('L2', 35), ('L4', 1), ('L5', 0), ('L6', 7)])
'15208916'

>>> main([('L1', 52), ('L2', 49), ('L4', 0), ('L5', 0), ('L6', 7)])
'14686388'

>>> main([('L1', 70), ('L2', 37), ('L4', 1), ('L5', 1), ('L6', 2)])
'5771974'

Вариант №25

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

0 5 6 11 12 17 18 24 M1 M2 M3 M4

Выходные данные:

Целое.

0 5 6 11 12 18 19 24 M2 M3 M4 M1

Тесты:

>>> main('0x11808c3')
1859619

>>> main('0x2441e9')
21532935

>>> main('0x5dbb9c')
14776046

>>> main('0x42b8e0')
16845539

Вариант №26

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.

Выходные данные:

Шестнадцатиричная строка.
0 6 7 8 10 11 18 T1 T2 T3 T4 19 20 28 29 37 T4 T6

Тесты:

>>> main([('T1', 125), ('T2', 1), ('T3', 5), ('T4', 402), ('T6', 30)])
'0x3c00c95fd'

>>> main([('T1', 117), ('T2', 1), ('T3', 5), ('T4', 324), ('T6', 215)])
'0x1ae00a25f5'

>>> main([('T1', 58), ('T2', 1), ('T3', 4), ('T4', 508), ('T6', 138)])
'0x11400fe4ba'

>>> main([('T1', 40), ('T2', 1), ('T3', 2), ('T4', 122), ('T6', 14)])
'0x1c003d2a8'

Вариант №27

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

0 7 8 9 10 17 18 21 22 30 A2 A3 A4 A5

Выходные данные:

Десятичная строка.

0 1 2 9 10 13 14 22 23 30 A2 A3 A4 A5

Тесты:

>>> main('0x728af2c5')
'7506674'

>>> main('0x2e981e04')
'3053598'

>>> main('0x73335495')
'7549780'

>>> main('0x3e776c41')
'4093804'

Вариант №28

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Десятичная строка.
0 4 5 12 13 22 23 30 Q1 Q2 Q3 Q4

Тесты:

>>> main(('3', '19', '83', '200'))
'1678402147'

>>> main(('16', '120', '912', '201'))
'1693585168'

>>> main(('30', '79', '97', '208'))
'1745627646'

>>> main(('10', '112', '933', '108'))
'913616394'

Вариант №29

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.

Выходные данные:

Десятичная строка.
0 1 3 4 13 14 17 18 23 T1 T2 T3 T5

Тесты:

>>> main({'T1': '1', 'T2': '4', 'T3': '606', 'T5': '50'})
'13116905'

>>> main({'T1': '0', 'T2': '7', 'T3': '262', 'T5': '25'})
'6557806'

>>> main({'T1': '0', 'T2': '5', 'T3': '398', 'T5': '42'})
'11016426'

>>> main({'T1': '0', 'T2': '6', 'T3': '403', 'T5': '47'})
'12327228'

Вариант №30

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.
0 4 5 7 8 13 14 23 I1 I2 I3 I4

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Тесты:

>>> main(3195245)
(13, 3, 1, 195)

>>> main(13914110)
(30, 7, 15, 849)

>>> main(13792111)
(15, 3, 51, 841)

>>> main(12498584)
(24, 4, 54, 762)

Вариант №31

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.
0 6 7 8 15 16 A1 A2 A3 A4 17 21 22 27 28 33 A4 A5

Выходные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.

Тесты:

>>> main('0x296ffeb')
{'A1': '0x6b', 'A2': '0x1', 'A3': '0xff', 'A4': '0x16', 'A5': '0xa'}

>>> main('0x4193304')
{'A1': '0x4', 'A2': '0x0', 'A3': '0x33', 'A4': '0x19', 'A5': '0x10'}

>>> main('0x74e2952')
{'A1': '0x52', 'A2': '0x0', 'A3': '0x29', 'A4': '0xe', 'A5': '0x1d'}

>>> main('0x1d8a43b')
{'A1': '0x3b', 'A2': '0x0', 'A3': '0xa4', 'A4': '0x18', 'A5': '0x7'}

Вариант №32

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

0 7 8 15 16 17 18 23 24 E1 E2 E3 E5

Выходные данные:

Десятичная строка.

0 1 8 9 14 15 16 17 24 E5 E1 E3 E2

Тесты:

>>> main('30181112')
'17564145'

>>> main('233185')
'18710978'

>>> main('5346188')
'19300632'

>>> main('22843247')
'18743519'

Вариант №33

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

0 1 2 3 4 5 12 13 16 X1 X2 X3 X4 X5

Выходные данные:

Шестнадцатиричная строка.

0 1 2 3 4 11 12 15 16 X3 X1 X4 X5 X2

Тесты:

>>> main('0x146ae')
'0x1a359'

>>> main('0x1153f')
'0x18a9f'

>>> main('0x111b2')
'0x88da'

>>> main('0xf27e')
'0x1793b'

Вариант №34

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

0 8 9 10 11 12 13 17 18 24 25 30 P1 P2 P3 P4 P6

Выходные данные:

Шестнадцатиричная строка.

0 4 5 6 7 15 16 22 23 24 25 30 P4 P2 P1 P3 P6

Тесты:

>>> main('1627933014')
'0x6080ab02'

>>> main('1751627238')
'0x6900f35d'

>>> main('1556970715')
'0x5d806dcb'

>>> main('135781215')
'0x980afbe'

Вариант №35

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Выходные данные:

Десятичная строка.
0 3 4 13 14 16 L1 L2 L3 17 19 20 29 30 32 L3 L4 L5

Тесты:

>>> main({'L1': 6, 'L2': 243, 'L3': 8, 'L4': 345, 'L5': 5})
'5730602806'

>>> main({'L1': 7, 'L2': 194, 'L3': 7, 'L4': 62, 'L5': 4})
'4360096807'

>>> main({'L1': 10, 'L2': 686, 'L3': 27, 'L4': 250, 'L5': 1})
'1336339178'

>>> main({'L1': 10, 'L2': 599, 'L3': 52, 'L4': 721, 'L5': 3})
'3978110330'

Вариант №36

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

0 1 10 11 14 15 23 N1 N2 N3 N4

Выходные данные:

Десятичная строка.

0 3 4 13 14 15 23 N3 N2 N1 N4

Тесты:

>>> main(11351161)
'11363270'

>>> main(6656560)
'6656386'

>>> main(5699749)
'5686575'

>>> main(1875993)
'1884356'

Вариант №37

Задача №8

Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Словарь из битовых полей. Значения битовых полей имеют тип: целое.

Выходные данные:

Целое.
0 7 8 9 18 V1 V2 V3 19 27 28 32 33 37 V4 V5 V6

Тесты:

>>> main({'V1': 111, 'V2': 1, 'V3': 586, 'V4': 157, 'V5': 21, 'V6': 11})
100209038703

>>> main({'V1': 239, 'V2': 1, 'V3': 152, 'V4': 7, 'V5': 19, 'V6': 17})
151132910063

>>> main({'V1': 127, 'V2': 1, 'V3': 452, 'V4': 38, 'V5': 5, 'V6': 17})
147391220095

>>> main({'V1': 97, 'V2': 0, 'V3': 924, 'V4': 319, 'V5': 14, 'V6': 8})
72645294177

Вариант №38

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

0 5 6 13 14 15 17 R2 R3 R4 18 21 22 28 29 34 R4 R5 R6

Выходные данные:

Целое.

0 1 7 8 13 14 17 R3 R4 R5 18 20 21 28 29 34 R5 R2 R6

Тесты:

>>> main('0x28d3dd28b')
10893459703

>>> main('0x171976638')
6225494109

>>> main('0x21ad2f6e0')
9050964043

>>> main('0x28552f3dd')
11171872843

Вариант №39

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.
0 7 8 9 10 12 13 17 X1 X3 X4

Выходные данные:

Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.

Тесты:

>>> main(182339)
[('X1', '67'), ('X3', '2'), ('X4', '22')]

>>> main(133986)
[('X1', '98'), ('X3', '2'), ('X4', '16')]

>>> main(188476)
[('X1', '60'), ('X3', '0'), ('X4', '23')]

>>> main(161811)
[('X1', '19'), ('X3', '6'), ('X4', '19')]

Вариант №40

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

0 7 8 9 10 16 U1 U2 U3

Выходные данные:

Десятичная строка.

0 1 8 9 10 16 U3 U1 U2

Тесты:

>>> main('0x25a')
'181'

>>> main('0x36f')
'735'

>>> main('0x34d')
'667'

>>> main('0x1a1')
'834'