Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(591829345)
('0x61', '0x32', '0x11a', '0x23')
>>> main(887619758)
('0x2e', '0x1', '0x3a0', '0x34')
>>> main(145885133)
('0x4d', '0xf', '0x2c8', '0x8')
>>> main(966868600)
('0x78', '0x7c', '0x284', '0x39')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('O1', '0x20'), ('O2', '0x64'), ('O3', '0x1'), ('O5', '0x10'), ('O6', '0x1')])
'604038176'
>>> main([('O1', '0x1f'), ('O2', '0xc'), ('O3', '0x2'), ('O5', '0x36'), ('O6', '0x0')])
'226561055'
>>> main([('O1', '0xf9'), ('O2', '0x9'), ('O3', '0x2'), ('O5', '0x6e'), ('O6', '0x0')])
'461441529'
>>> main([('O1', '0xd0'), ('O2', '0x50'), ('O3', '0x2'), ('O5', '0x9'), ('O6', '0x1')])
'574705872'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(14338599479)
{'R1': '0x37', 'R2': '0x1aa', 'R3': '0x9', 'R4': '0x15a', 'R5': '0x6', 'R6': '0x0'}
>>> main(5571300178)
{'R1': '0x52', 'R2': '0x34b', 'R3': '0x4', 'R4': '0x130', 'R5': '0x2', 'R6': '0x0'}
>>> main(2744179867)
{'R1': '0x9b', 'R2': '0xdc', 'R3': '0x4', 'R4': '0x8e', 'R5': '0x1', 'R6': '0x0'}
>>> main(10931839945)
{'R1': '0xc9', 'R2': '0x2a3', 'R3': '0x5', 'R4': '0x2e', 'R5': '0x5', 'R6': '0x0'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('2', '380', '1', '89', '13', '120'))
'0x786d9df2'
>>> main(('1', '318', '1', '22', '14', '4'))
'0x4716cf9'
>>> main(('3', '178', '0', '82', '5', '176'))
'0xb02d22cb'
>>> main(('3', '208', '0', '101', '12', '188'))
'0xbc665343'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x12', '0x25', '0x1b'))
'889544'
>>> main(('0x16', '0xf5', '0xcf'))
'6814424'
>>> main(('0x0', '0x36', '0xa4'))
'5380864'
>>> main(('0xe', '0x2e', '0x91'))
'4757304'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(5505841)
[('G1', '0x1'), ('G2', '0x66'), ('G3', '0x0'), ('G4', '0xa8')]
>>> main(7505748)
[('G1', '0x4'), ('G2', '0xea'), ('G3', '0x0'), ('G4', '0xe5')]
>>> main(4919517)
[('G1', '0x5'), ('G2', '0x1b'), ('G3', '0x1'), ('G4', '0x96')]
>>> main(6993852)
[('G1', '0x4'), ('G2', '0xf7'), ('G3', '0x3'), ('G4', '0xd5')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(1733501612573)
(29, 2, 28, 191, 50)
>>> main(3502815598554)
(218, 3, 21, 20, 101)
>>> main(668917649904)
(240, 1, 20, 665, 19)
>>> main(1414336764868)
(196, 3, 22, 266, 41)
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x11')
[('D1', '0x1'), ('D2', '0x1'), ('D3', '0x0'), ('D4', '0x0')]
>>> main('0x1d')
[('D1', '0xd'), ('D2', '0x1'), ('D3', '0x0'), ('D4', '0x0')]
>>> main('0x28')
[('D1', '0x8'), ('D2', '0x0'), ('D3', '0x1'), ('D4', '0x0')]
>>> main('0x1d9')
[('D1', '0x9'), ('D2', '0x1'), ('D3', '0x2'), ('D4', '0x3')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(4862040774677)
4399816593539
>>> main(2628735386789)
2200840065229
>>> main(5719869428357)
4400481852460
>>> main(4604505226641)
4399654572318
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x12638d7a')
'0x126387ad'
>>> main('0x3283a88c')
'0x3283a8c8'
>>> main('0x2d5c9082')
'0x2d5c9820'
>>> main('0xd43298d')
'0xd4328d9'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'Z1': '0xe', 'Z2': '0x71', 'Z3': '0x4', 'Z4': '0x37c', 'Z5': '0x1'})
251143966
>>> main({'Z1': '0x8', 'Z2': '0x7b', 'Z3': '0xd', 'Z4': '0x39e', 'Z5': '0x4'})
658272184
>>> main({'Z1': '0xa', 'Z2': '0x12', 'Z3': '0xb', 'Z4': '0x315', 'Z5': '0x4'})
640309546
>>> main({'Z1': '0x9', 'Z2': '0x12', 'Z3': '0x21', 'Z4': '0x232', 'Z5': '0x1'})
207948073
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('1302083')
{'T1': '67', 'T2': '222', 'T3': '19'}
>>> main('1966193')
{'T1': '113', 'T2': '0', 'T3': '30'}
>>> main('807393')
{'T1': '225', 'T2': '81', 'T3': '12'}
>>> main('2779947')
{'T1': '43', 'T2': '107', 'T3': '42'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(71745668)
[('L1', 4), ('L2', 258), ('L3', 1), ('L4', 70), ('L5', 1)]
>>> main(108864467)
[('L1', 19), ('L2', 143), ('L3', 0), ('L4', 637), ('L5', 1)]
>>> main(48441154)
[('L1', 2), ('L2', 157), ('L3', 0), ('L4', 739), ('L5', 0)]
>>> main(98182902)
[('L1', 54), ('L2', 155), ('L3', 0), ('L4', 474), ('L5', 1)]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('5346888785')
'3004048031'
>>> main('5104044505')
'965422744'
>>> main('7841674336')
'6013846505'
>>> main('4763620801')
'8306044557'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(13134115)
13449036067
>>> main(7117940)
7288651892
>>> main(10460293)
10711203973
>>> main(4201980)
4302307836
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0xb329ded18')
[('Z1', 0), ('Z2', 70), ('Z3', 891), ('Z5', 358), ('Z6', 0)]
>>> main('0x1562780fd3')
[('Z1', 3), ('Z2', 244), ('Z3', 515), ('Z5', 172), ('Z6', 1)]
>>> main('0x13560ecc6')
[('Z1', 2), ('Z2', 49), ('Z3', 59), ('Z5', 38), ('Z6', 0)]
>>> main('0x7f8b7afc7')
[('Z1', 3), ('Z2', 241), ('Z3', 491), ('Z5', 255), ('Z6', 0)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x17', '0x233', '0x1', '0x43', '0x1', '0x1'))
'0x5878cd7'
>>> main(('0x33', '0x100', '0x0', '0x62', '0x2', '0x2'))
'0xac44033'
>>> main(('0xb', '0xeb', '0x1', '0x61', '0x1', '0x3'))
'0xdc33acb'
>>> main(('0x1c', '0x35c', '0x0', '0x54', '0x0', '0x3'))
'0xca8d71c'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(812114)
1189996
>>> main(691726)
3605642
>>> main(625212)
2432137
>>> main(402679)
3831846
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(82936243)
'0x1603e604'
>>> main(202745551)
'0x194c2e0c'
>>> main(119009846)
'0x6e42c07'
>>> main(433513367)
'0x12c7ae19'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('638422')
[('L1', 470), ('L2', 623), ('L3', 0)]
>>> main('3975224')
[('L1', 56), ('L2', 810), ('L3', 3)]
>>> main('1973203')
[('L1', 979), ('L2', 902), ('L3', 1)]
>>> main('1717003')
[('L1', 779), ('L2', 652), ('L3', 1)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('M1', '58'), ('M2', '5'), ('M3', '0'), ('M4', '38'), ('M6', '24')])
'3222471354'
>>> main([('M1', '101'), ('M2', '7'), ('M3', '16'), ('M4', '52'), ('M6', '7')])
'941245413'
>>> main([('M1', '105'), ('M2', '6'), ('M3', '3'), ('M4', '62'), ('M6', '26')])
'3491696489'
>>> main([('M1', '45'), ('M2', '0'), ('M3', '16'), ('M4', '16'), ('M6', '14')])
'1879588909'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(540331032971)
{'E1': 395, 'E2': 0, 'E3': 2, 'E4': 29, 'E5': 113, 'E6': 1006}
>>> main(133080483371)
{'E1': 555, 'E2': 1, 'E3': 0, 'E4': 23, 'E5': 225, 'E6': 247}
>>> main(95509278236)
{'E1': 540, 'E2': 3, 'E3': 7, 'E4': 11, 'E5': 230, 'E6': 177}
>>> main(73564063436)
{'E1': 716, 'E2': 1, 'E3': 4, 'E4': 2, 'E5': 6, 'E6': 137}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('1986511127')
'0x4116d9f7'
>>> main('313542054')
'0x45b22c06'
>>> main('780719819')
'0x56ce622b'
>>> main('7010616')
'0x79201ab8'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x3b411cb')
2330331
>>> main('0x2c51771')
19852049
>>> main('0xc5ba2e')
32785182
>>> main('0x1e4f2fc')
15071132
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('128469652')
{'S1': '660', 'S2': '18', 'S3': '2', 'S4': '26', 'S5': '3'}
>>> main('185763666')
{'S1': '850', 'S2': '161', 'S3': '0', 'S4': '17', 'S5': '5'}
>>> main('34025007')
{'S1': '559', 'S2': '203', 'S3': '1', 'S4': '0', 'S5': '1'}
>>> main('259618917')
{'S1': '101', 'S2': '94', 'S3': '2', 'S4': '23', 'S5': '7'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0xf09c6')
[('M1', 0), ('M2', 227), ('M4', 1)]
>>> main('0x22a029')
[('M1', 1), ('M2', 20), ('M4', 4)]
>>> main('0x2d31c3')
[('M1', 1), ('M2', 225), ('M4', 5)]
>>> main('0x2fcbb3')
[('M1', 1), ('M2', 473), ('M4', 5)]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('2965')
'0xb941'
>>> main('3493')
'0xda41'
>>> main('79')
'0x4e1'
>>> main('2161')
'0x8701'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x5a8c2cf0')
{'Z1': 240, 'Z2': 11, 'Z3': 16, 'Z4': 81, 'Z5': 3, 'Z6': 1}
>>> main('0x2815a52d')
{'Z1': 301, 'Z2': 9, 'Z3': 22, 'Z4': 2, 'Z5': 5, 'Z6': 0}
>>> main('0x765fc9d7')
{'Z1': 471, 'Z2': 2, 'Z3': 31, 'Z4': 203, 'Z5': 6, 'Z6': 1}
>>> main('0x1cab5366')
{'Z1': 870, 'Z2': 4, 'Z3': 13, 'Z4': 149, 'Z5': 3, 'Z6': 0}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'Z1': '0', 'Z2': '2', 'Z3': '4', 'Z4': '26', 'Z5': '1'})
7492
>>> main({'Z1': '0', 'Z2': '3', 'Z3': '2', 'Z4': '14', 'Z5': '16'})
67366
>>> main({'Z1': '1', 'Z2': '2', 'Z3': '7', 'Z4': '15', 'Z5': '24'})
100341
>>> main({'Z1': '0', 'Z2': '5', 'Z3': '0', 'Z4': '17', 'Z5': '31'})
129162
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((990, 49, 4))
'0x20c7de'
>>> main((336, 34, 7))
'0x388950'
>>> main((607, 58, 1))
'0x8ea5f'
>>> main((383, 13, 7))
'0x38357f'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x6920')
('0', '2', '26')
>>> main('0xb7da7')
('3', '3', '735')
>>> main('0x9f799')
('1', '7', '637')
>>> main('0x3d71f')
('3', '6', '245')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('24', '25', '703', '5', '7'))
'123404088'
>>> main(('30', '5', '95', '9', '2'))
'43089086'
>>> main(('28', '21', '769', '1', '5'))
'85722812'
>>> main(('23', '20', '892', '15', '0'))
'16642711'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('5201151')
(255, 0, 14, 1, 30, 4)
>>> main('32969971')
(243, 0, 10, 0, 14, 31)
>>> main('39972658')
(50, 1, 23, 1, 3, 38)
>>> main('19659402')
(138, 0, 29, 1, 23, 18)
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'Y1': '2', 'Y2': '6', 'Y4': '202'})
'0x1940182'
>>> main({'Y1': '17', 'Y2': '1', 'Y4': '139'})
'0x1160051'
>>> main({'Y1': '50', 'Y2': '5', 'Y4': '220'})
'0x1b80172'
>>> main({'Y1': '18', 'Y2': '6', 'Y4': '87'})
'0xae0192'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('76224777')
[('X1', '0x1'), ('X2', '0x121'), ('X3', '0x31'), ('X4', '0x1'), ('X5', '0x48')]
>>> main('97136603')
[('X1', '0x3'), ('X2', '0x1fb'), ('X3', '0x22'), ('X4', '0x1'), ('X5', '0x5c')]
>>> main('36467281')
[('X1', '0x1'), ('X2', '0x4a'), ('X3', '0x47'), ('X4', '0x1'), ('X5', '0x22')]
>>> main('84518182')
[('X1', '0x6'), ('X2', '0xa4'), ('X3', '0x1a'), ('X4', '0x1'), ('X5', '0x50')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x33bffbf1')
[('H1', 17), ('H2', 223), ('H3', 511), ('H4', 3), ('H5', 25)]
>>> main('0x1f0b2ffd')
[('H1', 29), ('H2', 127), ('H3', 89), ('H4', 2), ('H5', 15)]
>>> main('0x15ad3a59')
[('H1', 25), ('H2', 210), ('H3', 361), ('H4', 3), ('H5', 10)]
>>> main('0x3095a9d7')
[('H1', 23), ('H2', 78), ('H3', 173), ('H4', 1), ('H5', 24)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('32918120952')
{'O1': 120, 'O3': 2, 'O4': 265, 'O5': 245}
>>> main('10311203363')
{'O1': 35, 'O3': 1, 'O4': 844, 'O5': 76}
>>> main('40487630362')
{'O1': 26, 'O3': 0, 'O4': 672, 'O5': 301}
>>> main('39860817787')
{'O1': 123, 'O3': 7, 'O4': 1009, 'O5': 296}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('159802')
{'O1': 0, 'O2': 29, 'O3': 448, 'O4': 2}
>>> main('77289')
{'O1': 1, 'O2': 20, 'O3': 183, 'O4': 1}
>>> main('62438')
{'O1': 0, 'O2': 19, 'O3': 975, 'O4': 0}
>>> main('103874')
{'O1': 0, 'O2': 1, 'O3': 599, 'O4': 1}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(60754076)
'303562983'
>>> main(239698216)
'74449042'
>>> main(111890306)
'270794922'
>>> main(260774127)
'494665954'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(46909714)
('18', '18', '14', '5')
>>> main(52155664)
('16', '42', '14', '6')
>>> main(100987326)
('62', '35', '7', '12')
>>> main(112562068)
('20', '31', '12', '13')