Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x315', '0x5', '0x1d7'))
'0x1d7a0315'
>>> main(('0x1', '0x6', '0x3b'))
'0x3bc0001'
>>> main(('0x2e5', '0x4', '0xae'))
'0xae802e5'
>>> main(('0x189', '0x1', '0x97'))
'0x9720189'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(49570679)
7, 55, 0, 35, 47)
(
>>> main(19844645)
5, 34, 3, 118, 18)
(
>>> main(24157139)
3, 61, 6, 4, 23)
(
>>> main(18039453)
13, 41, 0, 26, 17) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'A1': '26', 'A2': '151', 'A3': '1', 'A4': '33', 'A6': '0'})
'69243642'
>>> main({'A1': '27', 'A2': '654', 'A3': '2', 'A4': '33', 'A6': '0'})
'69292507'
>>> main({'A1': '3', 'A2': '419', 'A3': '20', 'A4': '199', 'A6': '0'})
'418002019'
>>> main({'A1': '21', 'A2': '1016', 'A3': '16', 'A4': '155', 'A6': '1'})
'275203522325'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0xe99544d1')
'F1': '0x11', 'F2': '0x13', 'F3': '0x154', 'F4': '0xc', 'F5': '0x1d'}
{
>>> main('0x1af81d9b0')
'F1': '0x30', 'F2': '0x26', 'F3': '0x1d', 'F4': '0x3c', 'F5': '0x35'}
{
>>> main('0x17a2eff55')
'F1': '0x15', 'F2': '0x3d', 'F3': '0xef', 'F4': '0x11', 'F5': '0x2f'}
{
>>> main('0x6c2d38eb')
'F1': '0x2b', 'F2': '0x23', 'F3': '0xd3', 'F4': '0x21', 'F5': '0xd'} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main(('0x1', '0x4f', '0x2', '0x11', '0xb'))
2901663
>>> main(('0x0', '0x3e', '0x1', '0x43', '0x7'))
1903996
>>> main(('0x1', '0x46', '0x1', '0x48', '0x1'))
336269
>>> main(('0x0', '0x33', '0x3', '0x5e', '0xe'))
3767142
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'U1': '80', 'U2': '11', 'U3': '11', 'U4': '3', 'U5': '773'})
'25950891088'
>>> main({'U1': '67', 'U2': '48', 'U3': '21', 'U4': '5', 'U5': '160'})
'5391106115'
>>> main({'U1': '98', 'U2': '61', 'U3': '19', 'U4': '4', 'U5': '444'})
'14916252770'
>>> main({'U1': '526', 'U2': '4', 'U3': '18', 'U4': '5', 'U5': '243'})
'8175882766'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('2744477')
'M1': 157, 'M2': 0, 'M3': 28, 'M4': 41}
{
>>> main('6093698')
'M1': 386, 'M2': 1, 'M3': 31, 'M4': 92}
{
>>> main('5419473')
'M1': 465, 'M2': 0, 'M3': 22, 'M4': 82}
{
>>> main('8110518')
'M1': 438, 'M2': 0, 'M3': 24, 'M4': 123} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(2707310650)
2684650389
>>> main(2147056773)
2114439775
>>> main(1049220484)
1040538216
>>> main(969076187)
939973820
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x2', '0x3b', '0x11', '0x37', '0x46'))
'0x8db91ec02'
>>> main(('0x1', '0x7', '0x7b', '0x3a', '0x63'))
'0xc7d7b1c01'
>>> main(('0x2', '0x1b', '0x26', '0x18', '0x73'))
'0xe6c266c02'
>>> main(('0x0', '0xf', '0x31', '0x11', '0x47'))
'0x8e8b13c00'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('S1', '0x0'), ('S2', '0x3e'), ('S3', '0x2')])
'1148'
>>> main([('S1', '0x0'), ('S2', '0x53'), ('S3', '0x0')])
'166'
>>> main([('S1', '0x0'), ('S2', '0xcd'), ('S3', '0x1')])
'922'
>>> main([('S1', '0x0'), ('S2', '0x7f'), ('S3', '0x3')])
'1790'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'P1': '0x9', 'P2': '0xc', 'P3': '0x117', 'P4': '0x4', 'P5': '0x116'})
'2336798921'
>>> main({'P1': '0xf', 'P2': '0x3b', 'P3': '0x1da', 'P4': '0x2', 'P5': '0x112'})
'2301547455'
>>> main({'P1': '0x0', 'P2': '0x3b', 'P3': '0x1f7', 'P4': '0x2', 'P5': '0x58'})
'741325744'
>>> main({'P1': '0x1', 'P2': '0x64', 'P3': '0x1cf', 'P4': '0x0', 'P5': '0x1c6'})
'3809377857'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'L1': 61, 'L2': 0, 'L3': 285, 'L4': 13})
'3553853'
>>> main({'L1': 246, 'L2': 1, 'L3': 241, 'L4': 46})
'12182518'
>>> main({'L1': 208, 'L2': 1, 'L3': 156, 'L4': 58})
'15284688'
>>> main({'L1': 60, 'L2': 1, 'L3': 310, 'L4': 51})
'13528380'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x1bdff4')
'H1': '4', 'H3': '223', 'H4': '27'}
{
>>> main('0x15270')
'H1': '0', 'H3': '82', 'H4': '1'}
{
>>> main('0x1c8e1d')
'H1': '13', 'H3': '142', 'H4': '28'}
{
>>> main('0xd124b')
'H1': '11', 'H3': '18', 'H4': '13'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('4437')
4432
>>> main('6483')
6352
>>> main('7059')
6384
>>> main('5164')
5888
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('487936047')
488117931
>>> main('507790739')
508741769
>>> main('113074024')
112179112
>>> main('257104844')
256763490
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x10805')
'C1', 1), ('C3', 1), ('C4', 4)]
[(
>>> main('0x78bea')
'C1', 0), ('C3', 1), ('C4', 30)]
[(
>>> main('0x5ae41')
'C1', 1), ('C3', 5), ('C4', 22)]
[(
>>> main('0x43499')
'C1', 1), ('C3', 6), ('C4', 16)] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main([('J1', 61), ('J2', 7), ('J4', 210)])
55050749
>>> main([('J1', 40), ('J2', 7), ('J4', 331)])
86770152
>>> main([('J1', 11), ('J2', 435), ('J4', 384)])
100691147
>>> main([('J1', 58), ('J2', 432), ('J4', 266)])
69758010
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('E1', '0x1'), ('E2', '0x0'), ('E3', '0x3'), ('E5', '0x10')])
'8394753'
>>> main([('E1', '0x25'), ('E2', '0x16'), ('E3', '0x1'), ('E5', '0x17')])
'12062117'
>>> main([('E1', '0x26'), ('E2', '0x15'), ('E3', '0x0'), ('E5', '0x1')])
'525670'
>>> main([('E1', '0x8'), ('E2', '0x7'), ('E3', '0x3'), ('E5', '0x15')])
'11016648'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x4953ddc')
'L1', '476'), ('L2', '30'), ('L3', '2'), ('L4', '10'), ('L5', '18')]
[(
>>> main('0x1460225')
'L1', '37'), ('L2', '1'), ('L3', '0'), ('L4', '3'), ('L5', '5')]
[(
>>> main('0x1f8e3d0')
'L1', '464'), ('L2', '49'), ('L3', '1'), ('L4', '28'), ('L5', '7')]
[(
>>> main('0x3f80948')
'L1', '328'), ('L2', '4'), ('L3', '0'), ('L4', '28'), ('L5', '15')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(7180899680)
1754795
>>> main(5778345733)
11895928
>>> main(2466890671)
32060957
>>> main(3927162663)
15640057
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('97667661')
'76901970'
>>> main('49564161')
'219456080'
>>> main('267392245')
'202896551'
>>> main('196543952')
'230879278'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'Y1': '0x122', 'Y2': '0x93', 'Y3': '0x2', 'Y4': '0x0', 'Y5': '0x8a'})
'0x8a52722'
>>> main({'Y1': '0xec', 'Y2': '0xf', 'Y3': '0x1', 'Y4': '0x0', 'Y5': '0x24'})
'0x2421eec'
>>> main({'Y1': '0x3', 'Y2': '0x8', 'Y3': '0x1', 'Y4': '0x1', 'Y5': '0x77'})
'0x77a1003'
>>> main({'Y1': '0xcf', 'Y2': '0x25', 'Y3': '0x2', 'Y4': '0x1', 'Y5': '0x67'})
'0x67c4acf'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'N1': '35', 'N2': '0', 'N4': '110', 'N5': '2', 'N6': '5'})
745406499
>>> main({'N1': '26', 'N2': '0', 'N4': '359', 'N5': '3', 'N6': '53'})
7237730330
>>> main({'N1': '52', 'N2': '0', 'N4': '450', 'N5': '3', 'N6': '140'})
18920636468
>>> main({'N1': '61', 'N2': '1', 'N4': '444', 'N5': '1', 'N6': '131'})
17645174909
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('57539216')
'X1', '0'), ('X2', '36'), ('X3', '29'), ('X4', '55'), ('X5', '0'), ('X6', '27')]
[(
>>> main('56138625')
'X1', '1'), ('X2', '96'), ('X3', '13'), ('X4', '34'), ('X5', '1'), ('X6', '26')]
[(
>>> main('53952335')
'X1', '3'), ('X2', '83'), ('X3', '31'), ('X4', '28'), ('X5', '1'), ('X6', '25')]
[(
>>> main('65183662')
'X1', '2'), ('X2', '107'), ('X3', '15'), ('X4', '10'), ('X5', '0'), ('X6', '31')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'O2': 5, 'O3': 46, 'O4': 8, 'O5': 11})
'0xb2170a0'
>>> main({'O2': 61, 'O3': 63, 'O4': 36, 'O5': 13})
'0xd91ffa0'
>>> main({'O2': 60, 'O3': 62, 'O4': 27, 'O5': 11})
'0xb6df780'
>>> main({'O2': 10, 'O3': 53, 'O4': 10, 'O5': 3})
'0x329a940'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('102066995')
102078938
>>> main('41927275')
41891312
>>> main('26457996')
26461805
>>> main('102553800')
102523958
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(46668378)
'0x25a8b00'
>>> main(94656560)
'0x305680'
>>> main(83983058)
'0x2d21400'
>>> main(125742420)
'0x554fdc0'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(2173094)
'0x844a52'
>>> main(24130903)
'0x16e286b'
>>> main(13127176)
'0x19109c'
>>> main(22760094)
'0xab3e96'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(3745756135)
'Z2', '0x7'), ('Z3', '0x3b'), ('Z4', '0x1'), ('Z5', '0x5f'), ('Z6', '0x1')]
[(
>>> main(5667638371)
'Z2', '0x18'), ('Z3', '0x114'), ('Z4', '0x3'), ('Z5', '0x51'), ('Z6', '0x2')]
[(
>>> main(4803841297)
'Z2', '0x1a'), ('Z3', '0x14c'), ('Z4', '0x1'), ('Z5', '0x1e'), ('Z6', '0x2')]
[(
>>> main(4635062817)
'Z2', '0x4'), ('Z3', '0x57'), ('Z4', '0x1'), ('Z5', '0x14'), ('Z6', '0x2')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('B1', 39), ('B2', 0), ('B3', 159), ('B5', 55), ('B6', 75)])
'646090669607'
>>> main([('B1', 48), ('B2', 1), ('B3', 114), ('B5', 153), ('B6', 106)])
'915666953392'
>>> main([('B1', 85), ('B2', 0), ('B3', 151), ('B5', 5), ('B6', 14)])
'120426933845'
>>> main([('B1', 94), ('B2', 1), ('B3', 108), ('B5', 205), ('B6', 132)])
'1140750080222'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x1bc253')
'K1': 19, 'K2': 265, 'K3': 55}
{
>>> main('0x742ae9')
'K1': 41, 'K2': 171, 'K3': 232}
{
>>> main('0x58921e')
'K1': 30, 'K2': 72, 'K3': 177}
{
>>> main('0xb64ea0')
'K1': 32, 'K2': 314, 'K3': 364} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(4036438285)
'0x972800f0'
>>> main(1288415094)
'0xcba4004c'
>>> main(3892823533)
'0x7c400e8'
>>> main(351937447)
'0xfa200014'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'V1': 46, 'V2': 271, 'V4': 0})
17390
>>> main({'V1': 13, 'V2': 77, 'V4': 0})
4941
>>> main({'V1': 27, 'V2': 213, 'V4': 0})
13659
>>> main({'V1': 18, 'V2': 252, 'V4': 0})
16146
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x110e9abe09c')
'R1', '0x9c'), ('R2', '0x70'), ('R4', '0xe9'), ('R5', '0x44')]
[(
>>> main('0x18f4a89174e')
'R1', '0x14e'), ('R2', '0xb'), ('R4', '0x34a'), ('R5', '0x63')]
[(
>>> main('0xc1f2ac2c8b')
'R1', '0x8b'), ('R2', '0x16'), ('R4', '0x1f2'), ('R5', '0x30')]
[(
>>> main('0xc49b6a2899')
'R1', '0x99'), ('R2', '0x14'), ('R4', '0x9b'), ('R5', '0x31')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x17a8b5535')
'F1', '0x35'), ('F3', '0x2d5'), ('F4', '0xa8'), ('F5', '0x17')]
[(
>>> main('0x1f0ab7f51')
'F1', '0x51'), ('F3', '0x2df'), ('F4', '0xa'), ('F5', '0x1f')]
[(
>>> main('0x3f6d6f492')
'F1', '0x92'), ('F3', '0x1bd'), ('F4', '0x6d'), ('F5', '0x3f')]
[(
>>> main('0x406120f3')
'F1', '0xf3'), ('F3', '0x48'), ('F4', '0x6'), ('F5', '0x4')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('297', '3', '84', '41', '1'))
'55396137'
>>> main(('467', '2', '0', '62', '1'))
'66061779'
>>> main(('128', '7', '105', '14', '0'))
'7773824'
>>> main(('3', '5', '44', '17', '0'))
'9095683'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'P1': 7, 'P2': 2, 'P3': 27, 'P5': 7, 'P6': 26})
'1803578439'
>>> main({'P1': 6, 'P2': 11, 'P3': 43, 'P5': 1, 'P6': 24})
'1619045734'
>>> main({'P1': 25, 'P2': 20, 'P3': 243, 'P5': 1, 'P6': 44})
'2961428121'
>>> main({'P1': 8, 'P2': 28, 'P3': 241, 'P5': 1, 'P6': 3})
'209962888'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('H1', '0x24'), ('H2', '0x28'), ('H3', '0x0'), ('H5', '0x1b4'), ('H6', '0xb5')])
1562093032484
>>> main([('H1', '0x48'), ('H2', '0x35'), ('H3', '0x1'), ('H5', '0xd2'), ('H6', '0x183')])
3327827917512
>>> main([('H1', '0x4b'), ('H2', '0xa'), ('H3', '0x0'), ('H5', '0x1fe'), ('H6', '0x9b')])
1339996243275
>>> main([('H1', '0x56'), ('H2', '0xf'), ('H3', '0x1'), ('H5', '0x68'), ('H6', '0xe9')])
2003199600598
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'S1': '0x7', 'S2': '0x1ef', 'S3': '0xdb', 'S4': '0x5', 'S5': '0x12'})
'157138815'
>>> main({'S1': '0x1', 'S2': '0xf2', 'S3': '0x84', 'S4': '0x3', 'S5': '0x12'})
'154683281'
>>> main({'S1': '0x3', 'S2': '0xb8', 'S3': '0x8f', 'S4': '0x3', 'S5': '0x2'})
'20510147'
>>> main({'S1': '0x7', 'S2': '0x3', 'S3': '0xcb', 'S4': '0x7', 'S5': '0xf'})
'134000671'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x8777e314d18')
12887019392010
>>> main('0xb2c8f2ae50d')
6919983105751
>>> main('0x41007f309ce')
8813406381848
>>> main('0x91bd6e6b732')
15294763079989