Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((1, 0, 1, 42))
344321
>>> main((14, 1, 16, 300))
2461774
>>> main((26, 2, 9, 146))
1198490
>>> main((28, 0, 20, 349))
2864156
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('8242')
(2, 4, 1, 4)
>>> main('11927')
(3, 5, 52, 5)
>>> main('15172')
(0, 1, 26, 7)
>>> main('14060')
(0, 3, 55, 6)
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0xdac9c81c')
'0x49ed5c9'
>>> main('0xbc3208fc')
'0x1b25e3c1'
>>> main('0x1ec379c6')
'0x3c30f46f'
>>> main('0xb39a72db')
'0x59a59dbe'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(408301214)
('670', '3', '177', '194', '0')
>>> main(1068856250)
('954', '4', '171', '253', '1')
>>> main(253603546)
('730', '3', '237', '120', '0')
>>> main(282889882)
('666', '3', '228', '134', '0')
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x15e682e')
('0x5', '0xcd', '0x2b')
>>> main('0x16ffe5d')
('0xcb', '0xff', '0x2d')
>>> main('0x10d7336')
('0x66', '0xae', '0x21')
>>> main('0x1931777')
('0xee', '0x62', '0x32')
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(3782924)
'0x87b870'
>>> main(4160962)
'0xe17c7e'
>>> main(15834953)
'0x1a59de1'
>>> main(14241255)
'0xf34db3'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('63065247')
{'B1': '31', 'B2': '50', 'B3': '36', 'B4': '30'}
>>> main('79393189')
{'B1': '37', 'B2': '6', 'B3': '439', 'B4': '37'}
>>> main('17875113')
{'B1': '41', 'B2': '2', 'B3': '268', 'B4': '8'}
>>> main('80510678')
{'B1': '22', 'B2': '59', 'B3': '199', 'B4': '38'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x45', '0x23', '0x1', '0x1eb', '0x1'))
'2103544901'
>>> main(('0x224', '0x3b', '0x18', '0xb1', '0x1'))
'1446571556'
>>> main(('0x1ce', '0x2c', '0x7', '0xe8', '0x0'))
'487043534'
>>> main(('0xfc', '0x2b', '0x1c', '0x1de', '0x2'))
'3151801596'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0xf00553b9de0')
{'O1': '0xe0', 'O2': '0x9d', 'O3': '0x3b', 'O4': '0x1', 'O5': '0x15', 'O6': '0xf0'}
>>> main('0x37b757102ad')
{'O1': '0xad', 'O2': '0x2', 'O3': '0x71', 'O4': '0x1', 'O5': '0x2dd', 'O6': '0x37'}
>>> main('0x884ea14d43c')
{'O1': '0x3c', 'O2': '0xd4', 'O3': '0x14', 'O4': '0x2', 'O5': '0x13a', 'O6': '0x88'}
>>> main('0x1f65f74658e')
{'O1': '0x8e', 'O2': '0x65', 'O3': '0x74', 'O4': '0x3', 'O5': '0x197', 'O6': '0x1f'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(165227)
{'I2': '0xb5', 'I3': '0x2', 'I4': '0x14', 'I5': '0x0'}
>>> main(965905)
{'I2': '0x88', 'I3': '0xe', 'I4': '0x35', 'I5': '0x1'}
>>> main(261145)
{'I2': '0xc', 'I3': '0xe', 'I4': '0x1f', 'I5': '0x0'}
>>> main(582512)
{'I2': '0xb8', 'I3': '0x1', 'I4': '0x7', 'I5': '0x1'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'B1': '0', 'B3': '209', 'B4': '1', 'B5': '8'})
269584
>>> main({'B1': '0', 'B3': '197', 'B4': '3', 'B5': '2'})
80976
>>> main({'B1': '0', 'B3': '185', 'B4': '1', 'B5': '13'})
433040
>>> main({'B1': '1', 'B3': '53', 'B4': '0', 'B5': '1'})
33617
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('3245579655')
{'R1': '0x7', 'R3': '0xe7', 'R4': '0x7', 'R5': '0x182'}
>>> main('2175744326')
{'R1': '0x6', 'R3': '0x3ce', 'R4': '0x2', 'R5': '0x103'}
>>> main('8092436705')
{'R1': '0x1', 'R3': '0x232', 'R4': '0x5', 'R5': '0x3c4'}
>>> main('3143121230')
{'R1': '0xe', 'R3': '0x20e', 'R4': '0x5', 'R5': '0x176'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x15c', '0x3', '0x48', '0x3a', '0xa'))
'0x14ea475c'
>>> main(('0x29', '0x0', '0x20', '0xd', '0x8'))
'0x10350029'
>>> main(('0x46', '0x3', '0x28', '0x10', '0x0'))
'0x414646'
>>> main(('0xdc', '0x0', '0x39', '0x77', '0x1'))
'0x3ddc8dc'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('P1', 32), ('P2', 11), ('P3', 3), ('P4', 5)])
'97056'
>>> main([('P1', 150), ('P2', 5), ('P3', 0), ('P4', 3)])
'50582'
>>> main([('P1', 170), ('P2', 14), ('P3', 0), ('P4', 98)])
'1609386'
>>> main([('P1', 91), ('P2', 5), ('P3', 0), ('P4', 10)])
'165211'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((184, 106, 48, 1, 2))
163632312
>>> main((488, 369, 0, 2, 10))
704832488
>>> main((156, 263, 12, 2, 3))
238161564
>>> main((490, 55, 55, 0, 1))
81555434
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('1515520586')
{'P1': '10', 'P2': '18', 'P4': '10', 'P5': '90'}
>>> main('792890617')
{'P1': '25', 'P2': '103', 'P4': '8', 'P5': '47'}
>>> main('1224113511')
{'P1': '7', 'P2': '1003', 'P4': '30', 'P5': '72'}
>>> main('414510469')
{'P1': '5', 'P2': '876', 'P4': '22', 'P5': '24'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x9e7bc3')
[('P2', '0xb'), ('P3', '0x1e7'), ('P4', '0x4')]
>>> main('0x19bfe7cd')
[('P2', '0x7'), ('P3', '0x1fe'), ('P4', '0xcd')]
>>> main('0x6c9f2a5')
[('P2', '0x2'), ('P3', '0x9f'), ('P4', '0x36')]
>>> main('0xe70577f')
[('P2', '0x7'), ('P3', '0x105'), ('P4', '0x73')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('2', '98', '1', '73', '5', '1'))
3559186
>>> main(('0', '45', '0', '91', '3', '0'))
973160
>>> main(('2', '26', '0', '0', '6', '1'))
3670226
>>> main(('1', '42', '1', '49', '3', '1'))
2985297
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('64824902704890')
[('T1', '0x7a'), ('T2', '0xbd'), ('T3', '0x98'), ('T5', '0xf5'), ('T6', '0x3a')]
>>> main('11090545306009')
[('T1', '0x19'), ('T2', '0xd3'), ('T3', '0x6'), ('T5', '0x16'), ('T6', '0xa')]
>>> main('24876355659124')
[('T1', '0x74'), ('T2', '0x4a'), ('T3', '0xaf'), ('T5', '0x9f'), ('T6', '0x16')]
>>> main('66456013572388')
[('T1', '0x24'), ('T2', '0x12'), ('T3', '0x2a'), ('T5', '0x70'), ('T6', '0x3c')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(508632182)
'0x1e5b4471'
>>> main(290846178)
'0x115157d7'
>>> main(215359857)
'0xcd8d885'
>>> main(64745014)
'0x3db6fb8'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('52102022')
[('M1', '0x6'), ('M2', '0x7'), ('M3', '0x0'), ('M4', '0x6c'), ('M5', '0x3')]
>>> main('75589423')
[('M1', '0x2f'), ('M2', '0x6'), ('M3', '0x9'), ('M4', '0x205'), ('M5', '0x4')]
>>> main('11686777')
[('M1', '0x79'), ('M2', '0x6'), ('M3', '0x4'), ('M4', '0x2c9'), ('M5', '0x0')]
>>> main('95780349')
[('M1', '0x7d'), ('M2', '0x3'), ('M3', '0xf'), ('M4', '0x2d5'), ('M5', '0x5')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(94319315212)
'0x144bea1977'
>>> main(28788081450)
'0x1a1d6254f9'
>>> main(108946087485)
'0xaf2bc7b6c'
>>> main(95621392513)
'0x15448b02de'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('1983746061669')
'1433982212074'
>>> main('4230432502847')
'4230274506676'
>>> main('3591749861392')
'18253692390'
>>> main('1211149916531')
'936034665636'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('267320274')
{'M1': 466, 'M2': 381, 'M4': 63}
>>> main('53145464')
{'M1': 376, 'M2': 375, 'M4': 12}
>>> main('49195071')
{'M1': 63, 'M2': 340, 'M4': 11}
>>> main('91989566')
{'M1': 62, 'M2': 467, 'M4': 21}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(4903)
('1', '19', '6', '2')
>>> main(27292)
('0', '14', '5', '13')
>>> main(12676)
('0', '2', '3', '6')
>>> main(9506)
('0', '17', '10', '4')
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('6392529315')
'2202403197'
>>> main('3634978387')
'3164995800'
>>> main('4723951309')
'6670647577'
>>> main('915901938')
'4762894390'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x6b72797c2')
{'Q1': 66, 'Q2': 15, 'Q3': 242, 'Q4': 882, 'Q5': 26}
>>> main('0x1cc056163b')
{'Q1': 59, 'Q2': 12, 'Q3': 194, 'Q4': 5, 'Q5': 115}
>>> main('0x387662b23b')
{'Q1': 59, 'Q2': 4, 'Q3': 86, 'Q4': 870, 'Q5': 225}
>>> main('0x119d7e5cda')
{'Q1': 90, 'Q2': 9, 'Q3': 459, 'Q4': 471, 'Q5': 70}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(33815732217)
{'E1': '0x1f9', 'E2': '0x7', 'E3': '0x131', 'E4': '0x17e', 'E5': '0xf'}
>>> main(80520162656)
{'E1': '0x160', 'E2': '0x6', 'E3': '0x202', 'E4': '0xfd', 'E5': '0x25'}
>>> main(57082299661)
{'E1': '0x10d', 'E2': '0x2', 'E3': '0x1ec', 'E4': '0x129', 'E5': '0x1a'}
>>> main(63088414092)
{'E1': '0x18c', 'E2': '0x6', 'E3': '0x1cc', 'E4': '0xc1', 'E5': '0x1d'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('Y1', '123'), ('Y2', '2'), ('Y3', '15'), ('Y4', '0'), ('Y6', '3')])
'1588859'
>>> main([('Y1', '195'), ('Y2', '0'), ('Y3', '1'), ('Y4', '3'), ('Y6', '2')])
'1098947'
>>> main([('Y1', '152'), ('Y2', '0'), ('Y3', '12'), ('Y4', '0'), ('Y6', '3')])
'1585304'
>>> main([('Y1', '63'), ('Y2', '2'), ('Y3', '15'), ('Y4', '0'), ('Y6', '2')])
'1064511'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x127ec9560')
'0xab070093'
>>> main('0x23ab7b58')
'0x1dac60011'
>>> main('0x9839da43')
'0xd218004c'
>>> main('0x99c9c985')
'0x4c2f004c'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(14636)
'53545'
>>> main(14188)
'45929'
>>> main(14153)
'42825'
>>> main(9658)
'10681'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x5112')
'0x2342'
>>> main('0x75a5')
'0x35d5'
>>> main('0x534c')
'0x694c'
>>> main('0x437')
'0x617'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0xeee4cc')
2175965
>>> main('0x49e115')
2638995
>>> main('0x8747bf')
3796750
>>> main('0x4a8ed1')
767125
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((15, 36, 663, 72))
'0x1229748f'
>>> main((20, 49, 1011, 207))
'0x33ff3634'
>>> main((18, 53, 810, 73))
'0x1272a6b2'
>>> main((27, 95, 516, 102))
'0x19a04bfb'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'G1': '0x1', 'G2': '0xe5', 'G3': '0x1', 'G4': '0x1', 'G6': '0x2'})
16795541
>>> main({'G1': '0x2', 'G2': '0x7b', 'G3': '0xd', 'G4': '0x3', 'G6': '0x69'})
880866798
>>> main({'G1': '0x0', 'G2': '0x27', 'G3': '0x9', 'G4': '0x0', 'G6': '0x44'})
570434716
>>> main({'G1': '0x0', 'G2': '0xce', 'G3': '0x4', 'G4': '0x3', 'G6': '0x20'})
268489528
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'L1': '25', 'L2': '0', 'L3': '797', 'L4': '18', 'L5': '2'})
'43399705'
>>> main({'L1': '56', 'L2': '3', 'L3': '1016', 'L4': '10', 'L5': '0'})
'5763320'
>>> main({'L1': '61', 'L2': '7', 'L3': '362', 'L4': '15', 'L5': '2'})
'41604605'
>>> main({'L1': '14', 'L2': '4', 'L3': '439', 'L4': '3', 'L5': '1'})
'18575118'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(1039707503)
{'S1': '15', 'S2': '22', 'S4': '789', 'S5': '495'}
>>> main(813821451)
{'S1': '11', 'S2': '0', 'S4': '61', 'S5': '388'}
>>> main(226086402)
{'S1': '2', 'S2': '0', 'S4': '825', 'S5': '107'}
>>> main(236041001)
{'S1': '9', 'S2': '18', 'S4': '566', 'S5': '112'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('S1', '0x3'), ('S2', '0x7'), ('S3', '0x20'), ('S4', '0x0')])
2079
>>> main([('S1', '0x3'), ('S2', '0xb'), ('S3', '0x7'), ('S4', '0x1')])
4591
>>> main([('S1', '0x1'), ('S2', '0x9'), ('S3', '0x2c'), ('S4', '0x0')])
2853
>>> main([('S1', '0x0'), ('S2', '0xa'), ('S3', '0x32'), ('S4', '0x1')])
7336
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('416759475')
'402741645'
>>> main('63529967')
'402781756'
>>> main('103782856')
'58466'
>>> main('428236062')
'268472216'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main((4, 0, 972))
'7962628'
>>> main((4, 0, 296))
'2424836'
>>> main((7, 1, 421))
'3448847'
>>> main((4, 1, 764))
'6258700'