Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('8', '1', '1', '427', '2', '58'))
'30567160'
>>> main(('9', '0', '1', '355', '0', '11'))
'5789929'
>>> main(('13', '0', '0', '453', '1', '19'))
'10056013'
>>> main(('14', '0', '0', '551', '5', '52'))
'27625934'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x2b874')
'1399'
>>> main('0x37c0')
'229484'
>>> main('0xd2eb')
'164262'
>>> main('0x64c6a')
'263326'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('61', '786', '44', '2', '5'))
'85910668477'
>>> main(('23', '815', '61', '5', '48'))
'824658742231'
>>> main(('39', '982', '40', '5', '5'))
'85923001767'
>>> main(('47', '147', '61', '2', '7'))
'120271480047'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(3129200860991816)
{'I1': '0x148', 'I2': '0x8', 'I3': '0x338', 'I4': '0xe', 'I5': '0xfe', 'I6': '0x2c7'}
>>> main(596425623215994)
{'I1': '0x17a', 'I2': '0xf', 'I3': '0x12d', 'I4': '0x1', 'I5': '0x139', 'I6': '0x87'}
>>> main(179063235227001)
{'I1': '0x179', 'I2': '0x396', 'I3': '0x110', 'I4': '0xb', 'I5': '0x16d', 'I6': '0x28'}
>>> main(2804982622731937)
{'I1': '0xa1', 'I2': '0x21f', 'I3': '0x11a', 'I4': '0xf', 'I5': '0x18e', 'I6': '0x27d'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x18ebf')
[('V1', 703), ('V2', 3), ('V3', 0), ('V4', 1), ('V5', 1)]
>>> main('0x24ba9')
[('V1', 937), ('V2', 2), ('V3', 1), ('V4', 0), ('V5', 2)]
>>> main('0x23d84')
[('V1', 388), ('V2', 15), ('V3', 0), ('V4', 0), ('V5', 2)]
>>> main('0xae24')
[('V1', 548), ('V2', 11), ('V3', 0), ('V4', 1), ('V5', 0)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x44', '0x24', '0x5', '0x3', '0x380', '0x0'))
'0x1c06b244'
>>> main(('0x2d', '0x15', '0x6', '0x2', '0x226', '0x1'))
'0x3134caad'
>>> main(('0x26', '0x3b', '0x3', '0x0', '0x135', '0x1'))
'0x29a87da6'
>>> main(('0x7', '0x32', '0xc', '0x1', '0x1a0', '0x1'))
'0x2d039907'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x1650b62')
{'B1': 2, 'B2': 108, 'B3': 1, 'B4': 40, 'B5': 22}
>>> main('0x292fc6f')
{'B1': 7, 'B2': 141, 'B3': 3, 'B4': 23, 'B5': 41}
>>> main('0x78f290a')
{'B1': 2, 'B2': 33, 'B3': 1, 'B4': 121, 'B5': 120}
>>> main('0xea88f50')
{'B1': 0, 'B2': 234, 'B3': 1, 'B4': 68, 'B5': 234}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'U1': 22, 'U2': 135, 'U3': 15, 'U5': 3})
13583254
>>> main({'U1': 91, 'U2': 95, 'U3': 15, 'U5': 8})
34549723
>>> main({'U1': 92, 'U2': 318, 'U3': 2, 'U5': 3})
12754780
>>> main({'U1': 74, 'U2': 86, 'U3': 9, 'U5': 2})
8989514
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('V1', '0x3'), ('V2', '0x2c'), ('V3', '0x7'), ('V4', '0x3f')])
'0x7eeb3'
>>> main([('V1', '0x0'), ('V2', '0x29'), ('V3', '0x6'), ('V4', '0x36')])
'0x6cca4'
>>> main([('V1', '0x3'), ('V2', '0x63'), ('V3', '0x5'), ('V4', '0x1d')])
'0x3ab8f'
>>> main([('V1', '0x1'), ('V2', '0x7'), ('V3', '0x9'), ('V4', '0x31')])
'0x6321d'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('E1', '0x0'), ('E2', '0x23'), ('E3', '0x0'), ('E4', '0x1e'), ('E6', '0x9f')])
'2667608204'
>>> main([('E1', '0x0'), ('E2', '0x34'), ('E3', '0x0'), ('E4', '0x11f'), ('E6', '0x55')])
'1426357456'
>>> main([('E1', '0x2'), ('E2', '0x13'), ('E3', '0x3'), ('E4', '0xed'), ('E6', '0xe3')])
'3808671566'
>>> main([('E1', '0x2'), ('E2', '0x12'), ('E3', '0x2'), ('E4', '0x3c'), ('E6', '0x46')])
'1174467146'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x1b8435')
('0x8', '0x70', '0x6')
>>> main('0xfa874')
('0x0', '0x75', '0x3')
>>> main('0xf7338')
('0x6', '0x6e', '0x3')
>>> main('0x1f4a7b')
('0x4', '0x69', '0x7')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('55', '34', '132', '446', '16'))
'0x10df211137'
>>> main(('106', '55', '295', '401', '3'))
'0x3c8c9dbea'
>>> main(('9', '38', '508', '112', '40'))
'0x28387f1309'
>>> main(('41', '76', '58', '132', '41'))
'0x29420ea629'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('P1', '0x0'), ('P2', '0x0'), ('P3', '0x59')])
'1424'
>>> main([('P1', '0x0'), ('P2', '0x3'), ('P3', '0x1d')])
'476'
>>> main([('P1', '0x1'), ('P2', '0x2'), ('P3', '0x77')])
'1913'
>>> main([('P1', '0x0'), ('P2', '0x2'), ('P3', '0x38')])
'904'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x1ea296fd')
(5, 7, 20, 245, 0)
>>> main('0x22f45810')
(0, 2, 162, 23, 1)
>>> main('0x3a759b66')
(6, 4, 172, 211, 1)
>>> main('0x2eba1961')
(1, 4, 208, 117, 1)
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('968188')
[('Z1', '0x3c'), ('Z2', '0x1'), ('Z3', '0xb'), ('Z4', '0x18'), ('Z5', '0x7')]
>>> main('23316')
[('Z1', '0x14'), ('Z2', '0x0'), ('Z3', '0x6'), ('Z4', '0xb'), ('Z5', '0x0')]
>>> main('3192388')
[('Z1', '0x4'), ('Z2', '0x1'), ('Z3', '0xc'), ('Z4', '0x16'), ('Z5', '0x18')]
>>> main('2133881')
[('Z1', '0x39'), ('Z2', '0x1'), ('Z3', '0xe'), ('Z4', '0x11'), ('Z5', '0x10')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('12', '11', '18', '216', '4', '160'))
'0x5046c24bc'
>>> main(('14', '11', '5', '258', '5', '85'))
'0x2ad810abe'
>>> main(('10', '19', '31', '359', '1', '236'))
'0x761b3bf3a'
>>> main(('6', '4', '15', '228', '5', '48'))
'0x185721e46'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'O1': '74', 'O2': '17', 'O3': '0', 'O4': '12'})
401994
>>> main({'O1': '329', 'O2': '1', 'O3': '0', 'O4': '24'})
787273
>>> main({'O1': '509', 'O2': '24', 'O3': '1', 'O4': '13'})
455165
>>> main({'O1': '2', 'O2': '22', 'O3': '1', 'O4': '7'})
257026
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x1d7fe41')
{'Z1': '0x1', 'Z2': '0x190', 'Z3': '0xf', 'Z4': '0x7', 'Z5': '0x15', 'Z6': '0x3'}
>>> main('0x8a740c8')
{'Z1': '0x0', 'Z2': '0x32', 'Z3': '0x8', 'Z4': '0x6', 'Z5': '0x9', 'Z6': '0x11'}
>>> main('0x14e4f91')
{'Z1': '0x1', 'Z2': '0x1e4', 'Z3': '0x9', 'Z4': '0x4', 'Z5': '0x13', 'Z6': '0x2'}
>>> main('0x5c9840a')
{'Z1': '0x2', 'Z2': '0x102', 'Z3': '0x0', 'Z4': '0x3', 'Z5': '0x12', 'Z6': '0xb'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('X1', '90'), ('X2', '0'), ('X3', '18'), ('X4', '7'), ('X5', '191')])
25158746
>>> main([('X1', '150'), ('X2', '0'), ('X3', '18'), ('X4', '3'), ('X5', '15')])
2024598
>>> main([('X1', '153'), ('X2', '0'), ('X3', '26'), ('X4', '0'), ('X5', '243')])
31863961
>>> main([('X1', '225'), ('X2', '1'), ('X3', '11'), ('X4', '5'), ('X5', '244')])
32069601
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('480132')
'474640384'
>>> main('327374')
'317708288'
>>> main('2611680')
'2651536384'
>>> main('1594790')
'1617605632'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x5521803f')
[('T1', '0x3f'), ('T2', '0x200'), ('T3', '0x1'), ('T4', '0x1'), ('T5', '0xaa')]
>>> main('0xd66300d')
[('T1', '0xd'), ('T2', '0xc0'), ('T3', '0x6'), ('T4', '0x3'), ('T5', '0x1a')]
>>> main('0xcb376c91')
[('T1', '0x11'), ('T2', '0x1b2'), ('T3', '0x17'), ('T4', '0x1'), ('T5', '0x196')]
>>> main('0xced8ddb4')
[('T1', '0x34'), ('T2', '0x376'), ('T3', '0x18'), ('T4', '0x2'), ('T5', '0x19d')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(9080063)
65464488
>>> main(17887498)
8933647
>>> main(18022607)
8843568
>>> main(17242964)
22712433
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main([('V1', 1), ('V2', 600), ('V3', 9), ('V4', 160)])
10505393
>>> main([('V1', 1), ('V2', 190), ('V3', 30), ('V4', 259)])
17035645
>>> main([('V1', 0), ('V2', 54), ('V3', 15), ('V4', 363)])
23820396
>>> main([('V1', 1), ('V2', 830), ('V3', 21), ('V4', 158)])
10399357
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(148305663)
'116850228'
>>> main(103104532)
'88115592'
>>> main(101914325)
'51833220'
>>> main(17030133)
'64747584'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(31720927476)
'0x681ab6fec'
>>> main(28034650646)
'0x2c46fedd0'
>>> main(4838248908)
'0x183861d24'
>>> main(12159239721)
'0x52c4bf45a'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'Z1': '56', 'Z2': '0', 'Z3': '2', 'Z4': '0'})
'0x238'
>>> main({'Z1': '12', 'Z2': '0', 'Z3': '0', 'Z4': '5'})
'0x140c'
>>> main({'Z1': '48', 'Z2': '2', 'Z3': '0', 'Z4': '40'})
'0xa0b0'
>>> main({'Z1': '43', 'Z2': '3', 'Z3': '0', 'Z4': '34'})
'0x88eb'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'E2': '24', 'E3': '2', 'E4': '1'})
1191936
>>> main({'E2': '86', 'E3': '13', 'E4': '7'})
8236032
>>> main({'E2': '81', 'E3': '5', 'E4': '2'})
2466304
>>> main({'E2': '7', 'E3': '9', 'E4': '1'})
1641984
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(9184)
67809
>>> main(114808)
126993
>>> main(117369)
127635
>>> main(44111)
11039
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(7156)
1279
>>> main(887)
1947
>>> main(6254)
3683
>>> main(2435)
812
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('L1', '0x5'), ('L2', '0x0'), ('L4', '0x1'), ('L5', '0x3a')])
'0xea5'
>>> main([('L1', '0x5'), ('L2', '0x1'), ('L4', '0x0'), ('L5', '0xa9')])
'0x2a4d'
>>> main([('L1', '0x6'), ('L2', '0x1'), ('L4', '0x0'), ('L5', '0x94')])
'0x250e'
>>> main([('L1', '0x2'), ('L2', '0x1'), ('L4', '0x1'), ('L5', '0x1f')])
'0x7ea'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(203124760175)
[('O1', '0x6f'), ('O3', '0x4b'), ('O4', '0x3a5'), ('O5', '0x5')]
>>> main(38036424855)
[('O1', '0x97'), ('O3', '0x49'), ('O4', '0x6d'), ('O5', '0x1')]
>>> main(12011950262)
[('O1', '0xb6'), ('O3', '0x7d'), ('O4', '0x165'), ('O5', '0x0')]
>>> main(151922848189)
[('O1', '0xbd'), ('O3', '0x53'), ('O4', '0x1af'), ('O5', '0x4')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x9f345689d')
[('I1', '157'), ('I3', '1'), ('I4', '77'), ('I5', '79')]
>>> main('0x14263c1db')
[('I1', '475'), ('I3', '8'), ('I4', '9'), ('I5', '10')]
>>> main('0xbdd46f7b4')
[('I1', '436'), ('I3', '1'), ('I4', '117'), ('I5', '94')]
>>> main('0xb95791f34')
[('I1', '308'), ('I3', '14'), ('I4', '85'), ('I5', '92')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(19693189)
'4085381'
>>> main(12174834)
'14775794'
>>> main(6832367)
'2147567'
>>> main(9222482)
'6096722'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'F1': 200, 'F2': 57, 'F3': 2, 'F4': 4})
2177480
>>> main({'F1': 166, 'F2': 124, 'F3': 1, 'F4': 2})
1113254
>>> main({'F1': 166, 'F2': 71, 'F3': 5, 'F4': 3})
1755046
>>> main({'F1': 243, 'F2': 14, 'F3': 4, 'F4': 2})
1183475
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main([('C1', 8), ('C2', 186), ('C3', 11), ('C4', 698), ('C5', 504)])
67737316264
>>> main([('C1', 2), ('C2', 204), ('C3', 14), ('C4', 39), ('C5', 164)])
22016937154
>>> main([('C1', 13), ('C2', 424), ('C3', 13), ('C4', 15), ('C5', 273)])
36643519117
>>> main([('C1', 12), ('C2', 443), ('C3', 14), ('C4', 732), ('C5', 324)])
43582610364
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(137005)
'754388'
>>> main(3400171)
'3209911'
>>> main(1635337)
'3804305'
>>> main(2903572)
'2561352'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('T2', 3), ('T3', 1), ('T4', 473), ('T5', 1), ('T6', 11)])
'6298020864'
>>> main([('T2', 2), ('T3', 21), ('T4', 625), ('T5', 1), ('T6', 4)])
'2579933184'
>>> main([('T2', 1), ('T3', 18), ('T4', 946), ('T5', 1), ('T6', 14)])
'8032764928'
>>> main([('T2', 5), ('T3', 13), ('T4', 725), ('T5', 0), ('T6', 7)])
'3948262400'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('0x22', '0x17', '0x1f2', '0x0', '0x1'))
'0x41f25e2'
>>> main(('0x29', '0x3', '0x1d7', '0x10', '0x3'))
'0xe1d70e9'
>>> main(('0x27', '0x2c', '0xbc', '0x14', '0x3'))
'0xe8bcb27'
>>> main(('0x25', '0x3b', '0xb0', '0x8', '0x2'))
'0x90b0ee5'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((20, 0, 50, 30))
'0x3c19014'
>>> main((45, 17, 693, 4))
'0x95ac6d'
>>> main((57, 15, 217, 11))
'0x166cbf9'
>>> main((62, 11, 382, 17))
'0x22bf2fe'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'E2': '0x31', 'E3': '0x356', 'E4': '0x1', 'E5': '0x7'})
33207840
>>> main({'E2': '0x3c', 'E3': '0x1db', 'E4': '0x0', 'E5': '0x5'})
21946240
>>> main({'E2': '0xf', 'E3': '0x32d', 'E4': '0x0', 'E5': '0x0'})
1665504
>>> main({'E2': '0x2f', 'E3': '0x34', 'E4': '0x1', 'E5': '0x5'})
23176672