Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('19611')
{'W1': '0x3', 'W3': '0x9', 'W4': '0x2', 'W5': '0x9'}
>>> main('25767')
{'W1': '0x7', 'W3': '0xa', 'W4': '0x2', 'W5': '0xc'}
>>> main('24490')
{'W1': '0x2', 'W3': '0x1a', 'W4': '0x3', 'W5': '0xb'}
>>> main('23290')
{'W1': '0x2', 'W3': '0xf', 'W4': '0x1', 'W5': '0xb'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x5931c748')
410465864
>>> main('0x2465e245')
841459973
>>> main('0x3a7c559e')
1046040222
>>> main('0x687f390b')
1066465803
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('29009304')
{'U1': '152', 'U2': '5', 'U3': '340', 'U4': '27'}
>>> main('39532189')
{'U1': '157', 'U2': '6', 'U3': '358', 'U4': '37'}
>>> main('37041238')
{'U1': '86', 'U2': '4', 'U3': '166', 'U4': '35'}
>>> main('44664662')
{'U1': '86', 'U2': '7', 'U3': '304', 'U4': '42'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0xd5', '0x1', '0x13d'))
'0x4f50d5'
>>> main(('0xd2', '0x2', '0x306'))
'0xc1a0d2'
>>> main(('0xdf', '0x3', '0x24c'))
'0x9330df'
>>> main(('0x8', '0x1', '0x1f4'))
'0x7d1008'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main(('0xb', '0x19f', '0x2'))
39419
>>> main(('0x9', '0xc9', '0x3'))
52377
>>> main(('0x5', '0xc2', '0x1'))
19493
>>> main(('0xe', '0x195', '0x0'))
6494
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(306658371)
{'A1': '3', 'A2': '113', 'A3': '57', 'A4': '2', 'A5': '9'}
>>> main(733408965)
{'A1': '5', 'A2': '59', 'A3': '183', 'A4': '13', 'A5': '21'}
>>> main(645782440)
{'A1': '40', 'A2': '110', 'A3': '238', 'A4': '3', 'A5': '19'}
>>> main(339362655)
{'A1': '31', 'A2': '13', 'A3': '210', 'A4': '1', 'A5': '10'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0xc', '0x1', '0x1b1', '0x6'))
'0x1b6208c'
>>> main(('0x29', '0x3', '0x92', '0x7'))
'0x1d241a9'
>>> main(('0x47', '0x3', '0x4', '0x2'))
'0x8081c7'
>>> main(('0xf', '0x0', '0xb2', '0x6'))
'0x196400f'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x1cb885')
'1836099'
>>> main('0x19a5ba')
'1575644'
>>> main('0x88c85')
'525891'
>>> main('0x8508d')
'524359'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x13aa450')
'0x1d52284'
>>> main('0xfd3a5a')
'0x1e9d2d3'
>>> main('0x47000d')
'0x380069'
>>> main('0xf4a343')
'0x1a51a1b'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'H1': '0x3', 'H2': '0x16', 'H3': '0xf0'})
'0x3c2c3'
>>> main({'H1': '0x17', 'H2': '0x15', 'H3': '0x1a2'})
'0x68ab7'
>>> main({'H1': '0x19', 'H2': '0x11', 'H3': '0x4d'})
'0x13639'
>>> main({'H1': '0x11', 'H2': '0x1c', 'H3': '0x4'})
'0x1391'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main(('0x0', '0x1b8', '0x0', '0xc', '0x5', '0x31'))
411796336
>>> main(('0x0', '0x289', '0x1', '0x8', '0x36', '0x58'))
745344274
>>> main(('0x0', '0x390', '0x0', '0x9', '0x20', '0xee'))
2000758560
>>> main(('0x1', '0x14d', '0x2', '0x1', '0x32', '0x1'))
14955163
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('108147430')
'0x65e7260'
>>> main('44044218')
'0x1f6a1a0'
>>> main('83470716')
'0x52cfbc0'
>>> main('24750106')
'0x50179a0'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(852982)
'0x10b1a'
>>> main(1903118)
'0x5073a'
>>> main(3547973)
'0x1102ec'
>>> main(1268478)
'0x2d0f26'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x4f4e89f')
[('M2', '15'), ('M3', '4'), ('M4', '29'), ('M5', '13'), ('M6', '19')]
>>> main('0x688190a')
[('M2', '5'), ('M3', '8'), ('M4', '3'), ('M5', '2'), ('M6', '26')]
>>> main('0x158b775')
[('M2', '10'), ('M3', '59'), ('M4', '22'), ('M5', '6'), ('M6', '5')]
>>> main('0xbc0d17')
[('M2', '11'), ('M3', '40'), ('M4', '1'), ('M5', '15'), ('M6', '2')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x17', '0xfc', '0x24', '0xc'))
'13180823'
>>> main(('0x17', '0x111', '0x3', '0x4'))
'4252215'
>>> main(('0x6', '0x13', '0xb', '0x1a'))
'27443814'
>>> main(('0x17', '0x149', '0x2e', '0x0'))
'764215'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'I1': '905', 'I2': '138', 'I3': '3', 'I4': '0', 'I5': '98', 'I6': '170'})
'733433703305'
>>> main({'I1': '889', 'I2': '157', 'I3': '6', 'I4': '7', 'I5': '113', 'I6': '285'})
'1227873744761'
>>> main({'I1': '509', 'I2': '3', 'I3': '5', 'I4': '1', 'I5': '42', 'I6': '237'})
'1019319946749'
>>> main({'I1': '367', 'I2': '204', 'I3': '4', 'I4': '3', 'I5': '18', 'I6': '110'})
'473057931631'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x169ec460e2bdf')
'580472010737802'
>>> main('0x1d04db03f095')
'846943962045308'
>>> main('0x13d29ad0480ea')
'286376171943328'
>>> main('0x205e48f6cdabd')
'964678645748150'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('K1', '0x30'), ('K3', '0xd0'), ('K4', '0x45'), ('K5', '0x0')])
585629744
>>> main([('K1', '0x59'), ('K3', '0xeb'), ('K4', '0x14'), ('K5', '0x1')])
2322956377
>>> main([('K1', '0x33'), ('K3', '0x3f'), ('K4', '0xbd'), ('K5', '0x0')])
1587511347
>>> main([('K1', '0x32'), ('K3', '0x4a'), ('K4', '0x44'), ('K5', '0x0')])
572850226
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('791931')
'0x1ab60'
>>> main('479716')
'0xa0e080'
>>> main('14728343')
'0x5c3af0'
>>> main('7902775')
'0x4f2ee0'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'V1': 20, 'V2': 277, 'V3': 5, 'V4': 145, 'V6': 57})
489664373428
>>> main({'V1': 27, 'V2': 293, 'V3': 5, 'V4': 94, 'V6': 24})
206183163067
>>> main({'V1': 15, 'V2': 262, 'V3': 4, 'V4': 137, 'V6': 39})
335043436751
>>> main({'V1': 14, 'V2': 111, 'V3': 6, 'V4': 18, 'V6': 47})
403731746286
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'I1': '0x7', 'I2': '0xb', 'I3': '0x16a'})
46431
>>> main({'I1': '0x0', 'I2': '0xf', 'I3': '0x16e'})
46968
>>> main({'I1': '0x3', 'I2': '0xb', 'I3': '0x1e8'})
62555
>>> main({'I1': '0x7', 'I2': '0x7', 'I3': '0x54'})
10815
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('127158036493')
'0x1d9a6cd0d4'
>>> main('57285992750')
'0xd57720c70'
>>> main('14187587866')
'0x34cd694b4'
>>> main('42399028101')
'0x9de2cb6e9'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('R2', '0x3'), ('R3', '0x49'), ('R4', '0x3')])
'0x1c9c00'
>>> main([('R2', '0x2'), ('R3', '0x71'), ('R4', '0x1')])
'0xf1800'
>>> main([('R2', '0x1'), ('R3', '0x7a'), ('R4', '0x0')])
'0x7a400'
>>> main([('R2', '0x1'), ('R3', '0x74'), ('R4', '0x1')])
'0xf4400'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x2c2cd36a6')
('38', '13', '6', '205', '2', '88')
>>> main('0x706ede97')
('23', '13', '27', '110', '0', '14')
>>> main('0x3441fc1b9')
('57', '3', '24', '31', '4', '104')
>>> main('0x2fa4f6062')
('98', '0', '12', '79', '2', '95')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'S1': '14', 'S2': '5', 'S3': '1', 'S4': '180', 'S5': '162'})
'170606942'
>>> main({'S1': '1', 'S2': '14', 'S3': '14', 'S4': '0', 'S5': '239'})
'250613473'
>>> main({'S1': '3', 'S2': '1', 'S3': '1', 'S4': '184', 'S5': '836'})
'877363475'
>>> main({'S1': '8', 'S2': '1', 'S3': '10', 'S4': '168', 'S5': '185'})
'194677272'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('2470522068')
3494589012
>>> main('1904738169')
1644154489
>>> main('765134116')
1723942308
>>> main('1100231601')
1695344689
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(905804639223)
[('T1', '0x1f7'), ('T2', '0xf5'), ('T3', '0x5'), ('T4', '0x0'), ('T5', '0x13'), ('T6', '0x34b')]
>>> main(660829684065)
[('T1', '0x161'), ('T2', '0x260'), ('T3', '0x0'), ('T4', '0x1'), ('T5', '0xe'), ('T6', '0x267')]
>>> main(371430697148)
[('T1', '0xbc'), ('T2', '0x354'), ('T3', '0xf'), ('T4', '0x1'), ('T5', '0x1d'), ('T6', '0x159')]
>>> main(884654653339)
[('T1', '0x19b'), ('T2', '0x35f'), ('T3', '0x0'), ('T4', '0x3'), ('T5', '0x1c'), ('T6', '0x337')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x9b247')
[('K1', 1), ('K2', 35), ('K4', 620)]
>>> main('0x45788')
[('K1', 0), ('K2', 68), ('K4', 277)]
>>> main('0x4932e')
[('K1', 0), ('K2', 23), ('K4', 292)]
>>> main('0xb9b1')
[('K1', 1), ('K2', 88), ('K4', 46)]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('711048643')
'1392496'
>>> main('700788717')
'1354747'
>>> main('9162207')
'20343'
>>> main('552355456')
'1065376'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((0, 440, 5, 169, 70, 25))
13569963888
>>> main((0, 298, 1, 230, 22, 25))
13469795924
>>> main((1, 82, 0, 170, 204, 12))
6871662757
>>> main((0, 371, 3, 57, 141, 26))
14254812902
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('X1', '37'), ('X3', '1'), ('X4', '0'), ('X5', '194'), ('X6', '28')])
3808985125
>>> main([('X1', '75'), ('X3', '2'), ('X4', '1'), ('X5', '473'), ('X6', '21')])
2942763083
>>> main([('X1', '109'), ('X3', '3'), ('X4', '0'), ('X5', '157'), ('X6', '19')])
2591391853
>>> main([('X1', '82'), ('X3', '0'), ('X4', '1'), ('X5', '390'), ('X6', '23')])
3189375058
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(14495992459)
{'U1': 11, 'U2': 149, 'U3': 14, 'U4': 432}
>>> main(10529684192)
{'U1': 96, 'U2': 117, 'U3': 828, 'U4': 313}
>>> main(15122576076)
{'U1': 76, 'U2': 101, 'U3': 704, 'U4': 450}
>>> main(3198729395)
{'U1': 51, 'U2': 121, 'U3': 337, 'U4': 95}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0xecbe4d')
'58915123'
>>> main('0x26cbd3c')
'26408179'
>>> main('0xe591c8')
'59131681'
>>> main('0x71173ca')
'74829600'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('73134758')
{'C1': 6, 'C2': 5, 'C3': 121, 'C4': 11, 'C5': 69}
>>> main('354479052')
{'C1': 12, 'C2': 14, 'C3': 117, 'C4': 0, 'C5': 338}
>>> main('506435658')
{'C1': 10, 'C2': 2, 'C3': 76, 'C4': 15, 'C5': 482}
>>> main('172859375')
{'C1': 15, 'C2': 15, 'C3': 79, 'C4': 13, 'C5': 164}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('3264')
[('D2', 12), ('D3', 12), ('D4', 0)]
>>> main('775')
[('D2', 0), ('D3', 3), ('D4', 0)]
>>> main('9448')
[('D2', 14), ('D3', 4), ('D4', 1)]
>>> main('3186')
[('D2', 7), ('D3', 12), ('D4', 0)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('X2', '1'), ('X3', '231'), ('X4', '5'), ('X5', '23'), ('X6', '30')])
'32232350'
>>> main([('X2', '0'), ('X3', '41'), ('X4', '3'), ('X5', '12'), ('X6', '16')])
'17182884'
>>> main([('X2', '1'), ('X3', '686'), ('X4', '4'), ('X5', '22'), ('X6', '30')])
'32197306'
>>> main([('X2', '1'), ('X3', '282'), ('X4', '0'), ('X5', '9'), ('X6', '21')])
'22316138'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('2585')
'1688'
>>> main('2726')
'2474'
>>> main('4312')
'5635'
>>> main('6950')
'2477'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('2248714')
(10, 0, 5, 0, 2)
>>> main('45333146')
(154, 5, 27, 0, 43)
>>> main('6617831')
(231, 5, 15, 0, 6)
>>> main('39264381')
(125, 0, 18, 0, 37)
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'I1': '0x7', 'I2': '0x12', 'I3': '0x11', 'I4': '0x0', 'I5': '0x0', 'I6': '0x6'})
'3163719'
>>> main({'I1': '0x17', 'I2': '0xe', 'I3': '0x1c', 'I4': '0x0', 'I5': '0x2', 'I6': '0x4'})
'2388439'
>>> main({'I1': '0x1b', 'I2': '0x1b', 'I3': '0x1a', 'I4': '0x2', 'I5': '0x3', 'I6': '0x6'})
'3631995'
>>> main({'I1': '0x12', 'I2': '0x16', 'I3': '0x13', 'I4': '0x2', 'I5': '0x3', 'I6': '0x3'})
'2051794'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('P1', '0'), ('P3', '9'), ('P4', '127'), ('P5', '0')])
'2085376'
>>> main([('P1', '0'), ('P3', '7'), ('P4', '592'), ('P5', '1')])
'26480128'
>>> main([('P1', '1'), ('P3', '28'), ('P4', '381'), ('P5', '1')])
'23033857'
>>> main([('P1', '1'), ('P3', '16'), ('P4', '884'), ('P5', '1')])
'31268865'