Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('L1', '0x2f'), ('L2', '0x1'), ('L3', '0x0'), ('L5', '0x26')])
'0x13012f'
>>> main([('L1', '0x84'), ('L2', '0x0'), ('L3', '0x3'), ('L5', '0x37')])
'0x1b8684'
>>> main([('L1', '0xb8'), ('L2', '0x1'), ('L3', '0x0'), ('L5', '0x17')])
'0xb81b8'
>>> main([('L1', '0x25'), ('L2', '0x1'), ('L3', '0x2'), ('L5', '0x1d')])
'0xe8525'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('2799')
'0x5c5b'
>>> main('4512')
'0x3088'
>>> main('23022')
'0x3adb'
>>> main('7848')
'0x50ea'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(19493603886)
46, 20, 140, 79, 18)
(
>>> main(21434050190)
14, 13, 282, 492, 19)
(
>>> main(15074408197)
5, 14, 19, 20, 14)
(
>>> main(22905754460)
92, 6, 161, 170, 21) (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x5705bab')
'B1', '0x3ab'), ('B2', '0x16'), ('B4', '0x8'), ('B5', '0x3'), ('B6', '0x5')]
[(
>>> main('0x6a5e242')
'B1', '0x242'), ('B2', '0x38'), ('B4', '0x2'), ('B5', '0x5'), ('B6', '0x6')]
[(
>>> main('0x4f842bd')
'B1', '0x2bd'), ('B2', '0x10'), ('B4', '0xc'), ('B5', '0x7'), ('B6', '0x4')]
[(
>>> main('0x2569422')
'B1', '0x22'), ('B2', '0x25'), ('B4', '0xb'), ('B5', '0x2'), ('B6', '0x2')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('150029206205')
24620690312
>>> main('86165722239')
171862392581
>>> main('229008569131')
439501545421
>>> main('324751116920')
89775916402
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('75985277')
265616920773
>>> main('94902253')
193273574751
>>> main('231528875')
185489013222
>>> main('29007009')
144418289522
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x5a699d9')
'O1', '0x9'), ('O2', '0x5'), ('O3', '0x33'), ('O4', '0x1a'), ('O6', '0x5')]
[(
>>> main('0x7a4064d')
'O1', '0xd'), ('O2', '0x4'), ('O3', '0xc'), ('O4', '0x10'), ('O6', '0x7')]
[(
>>> main('0xd74c75c')
'O1', '0xc'), ('O2', '0x5'), ('O3', '0xe'), ('O4', '0x13'), ('O6', '0xd')]
[(
>>> main('0xb119c5e')
'O1', '0xe'), ('O2', '0x5'), ('O3', '0x38'), ('O4', '0x6'), ('O6', '0xb')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x4f574de7012')
'Y1': '18', 'Y2': '56', 'Y3': '6', 'Y4': '667', 'Y5': '939', 'Y6': '9'}
{
>>> main('0x1b2aecd72816')
'Y1': '22', 'Y2': '20', 'Y3': '7', 'Y4': '410', 'Y5': '343', 'Y6': '54'}
{
>>> main('0x176d3bf27dc')
'Y1': '476', 'Y2': '19', 'Y3': '7', 'Y4': '631', 'Y5': '950', 'Y6': '2'}
{
>>> main('0x22b558ef7787')
'Y1': '391', 'Y2': '59', 'Y3': '7', 'Y4': '797', 'Y5': '426', 'Y6': '69'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x105b259')
'76994592'
>>> main('0x2ad2833')
'17732693'
>>> main('0x417eab8')
'78640258'
>>> main('0x5b789b3')
'24102070'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('9', '100', '101', '30'))
16145545
>>> main(('27', '117', '20', '9'))
4804283
>>> main(('17', '93', '31', '19'))
10091441
>>> main(('3', '23', '6', '38'))
19948259
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x95770')
'0', '55', '2')
(
>>> main('0xfbb8f')
'15', '56', '3')
(
>>> main('0x6cd30')
'0', '19', '1')
(
>>> main('0xa081f')
'15', '1', '2') (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(37012)
'J1', '20'), ('J2', '0'), ('J3', '33'), ('J4', '0'), ('J5', '1')]
[(
>>> main(80193)
'J1', '1'), ('J2', '1'), ('J3', '114'), ('J4', '0'), ('J5', '2')]
[(
>>> main(27242)
'J1', '42'), ('J2', '1'), ('J3', '84'), ('J4', '1'), ('J5', '0')]
[(
>>> main(93743)
'J1', '47'), ('J2', '0'), ('J3', '92'), ('J4', '1'), ('J5', '2')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(61465)
'H1': '25', 'H2': '128', 'H3': '7'}
{
>>> main(450147)
'H1': '3', 'H2': '243', 'H3': '54'}
{
>>> main(252861)
'H1': '29', 'H2': '221', 'H3': '30'}
{
>>> main(127762)
'H1': '18', 'H2': '152', 'H3': '15'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(113849683)
'0x3640053'
>>> main(76213426)
'0x6440032'
>>> main(74046015)
'0x234007f'
>>> main(68051890)
'0x6060012'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'J1': 41, 'J2': 0, 'J3': 1, 'J4': 1, 'J5': 1, 'J6': 7})
'8105'
>>> main({'J1': 2, 'J2': 0, 'J3': 0, 'J4': 0, 'J5': 0, 'J6': 6})
'6146'
>>> main({'J1': 44, 'J2': 1, 'J3': 1, 'J4': 0, 'J5': 0, 'J6': 3})
'3308'
>>> main({'J1': 15, 'J2': 0, 'J3': 0, 'J4': 1, 'J5': 1, 'J6': 5})
'5903'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('Z1', '0x0'), ('Z2', '0x6a'), ('Z3', '0x2'), ('Z4', '0x8c')])
'0x4616a0'
>>> main([('Z1', '0x8'), ('Z2', '0x15'), ('Z3', '0xb'), ('Z4', '0x192')])
'0xc95958'
>>> main([('Z1', '0x8'), ('Z2', '0x5c'), ('Z3', '0xf'), ('Z4', '0x1dd')])
'0xeefdc8'
>>> main([('Z1', '0x8'), ('Z2', '0x63'), ('Z3', '0xe'), ('Z4', '0x41')])
'0x20f638'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((0, 313, 12, 7, 0))
242290
>>> main((1, 320, 11, 5, 0))
175745
>>> main((1, 27, 0, 0, 1))
262199
>>> main((0, 21, 16, 3, 1))
376874
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(11089)
27170
>>> main(31954)
23111
>>> main(13070)
8643
>>> main(14405)
18595
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x5cf857b')
'389839749'
>>> main('0x8761028')
'31008784'
>>> main('0x17d2fbde')
'525000443'
>>> main('0x1f358b51')
'483873163'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x5df92e')
'4959996'
>>> main('0x7686b2')
'2931523'
>>> main('0x4d46e6')
'3778211'
>>> main('0x43383d')
'1008028'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main((1, 1, 2, 88, 438))
'28727363'
>>> main((0, 7, 7, 210, 52))
'3461870'
>>> main((1, 10, 1, 190, 482))
'31637045'
>>> main((1, 15, 7, 201, 75))
'4966911'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('388514')
'O1', '0'), ('O2', '1'), ('O3', '45'), ('O4', '189')]
[(
>>> main('414021')
'O1', '1'), ('O2', '2'), ('O3', '10'), ('O4', '202')]
[(
>>> main('1346757')
'O1', '1'), ('O2', '2'), ('O3', '38'), ('O4', '657')]
[(
>>> main('442975')
'O1', '1'), ('O2', '15'), ('O3', '18'), ('O4', '216')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('178108811')
'Q1': '1', 'Q2': '5', 'Q3': '204', 'Q4': '237', 'Q5': '42'}
{
>>> main('55275343')
'Q1': '1', 'Q2': '7', 'Q3': '122', 'Q4': '91', 'Q5': '13'}
{
>>> main('428008293')
'Q1': '1', 'Q2': '2', 'Q3': '27', 'Q4': '23', 'Q5': '102'}
{
>>> main('456511252')
'Q1': '0', 'Q2': '10', 'Q3': '120', 'Q4': '430', 'Q5': '108'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('5929')
'R1': '0x1', 'R2': '0x1ca', 'R3': '0x1', 'R4': '0x0'}
{
>>> main('21834')
'R1': '0x2', 'R2': '0x152', 'R3': '0x1', 'R4': '0x2'}
{
>>> main('22851')
'R1': '0x3', 'R2': '0x250', 'R3': '0x1', 'R4': '0x2'}
{
>>> main('26114')
'R1': '0x2', 'R2': '0x180', 'R3': '0x0', 'R4': '0x3'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x14b7abd06a2')
'A1': '0x2a2', 'A2': '0x1', 'A3': '0x4', 'A4': '0x5e', 'A5': '0x3d', 'A6': '0x14b'}
{
>>> main('0x26cb13075ca')
'A1': '0x1ca', 'A2': '0xd', 'A3': '0x1', 'A4': '0x98', 'A5': '0x58', 'A6': '0x26c'}
{
>>> main('0x2ee0220243a')
'A1': '0x3a', 'A2': '0x9', 'A3': '0x0', 'A4': '0x10', 'A5': '0x1', 'A6': '0x2ee'}
{
>>> main('0x23760d59484')
'A1': '0x84', 'A2': '0x5', 'A3': '0x6', 'A4': '0x6a', 'A5': '0x30', 'A6': '0x237'} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('C1', '4'), ('C2', '935'), ('C3', '12'), ('C4', '5'), ('C5', '34')])
'36412732'
>>> main([('C1', '1'), ('C2', '44'), ('C3', '13'), ('C4', '6'), ('C5', '43')])
'45982049'
>>> main([('C1', '5'), ('C2', '181'), ('C3', '14'), ('C4', '5'), ('C5', '155')])
'163300781'
>>> main([('C1', '7'), ('C2', '708'), ('C3', '4'), ('C4', '2'), ('C5', '39')])
'41195047'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x64cd39ffc74c')
86669124849150
>>> main('0x30084f3bbb9f')
132512038453725
>>> main('0x34f44356c355')
29979319160502
>>> main('0x3acda1acd32a')
14133014801766
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('T1', '0x3'), ('T2', '0x1'), ('T4', '0x331'), ('T5', '0x6'), ('T6', '0x1')])
'0x4d988403'
>>> main([('T1', '0x25b'), ('T2', '0x1'), ('T4', '0xc7'), ('T5', '0xa'), ('T6', '0x0')])
'0x1463865b'
>>> main([('T1', '0x308'), ('T2', '0x0'), ('T4', '0x63'), ('T5', '0x2'), ('T6', '0x0')])
'0x4318308'
>>> main([('T1', '0x8a'), ('T2', '0x0'), ('T4', '0x3a6'), ('T5', '0x1f'), ('T6', '0x0')])
'0x3fd3008a'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(191250244128)
'137604477201'
>>> main(1346905767)
'87812014389'
>>> main(183989866482)
'228333365375'
>>> main(256445703125)
'194728292126'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'T1': '5', 'T2': '0', 'T3': '248', 'T4': '58', 'T5': '208', 'T6': '501'})
'8621076937733'
>>> main({'T1': '6', 'T2': '8', 'T3': '448', 'T4': '283', 'T5': '173', 'T6': '65'})
'1128319934534'
>>> main({'T1': '1', 'T2': '8', 'T3': '274', 'T4': '880', 'T5': '152', 'T6': '8'})
'147697207617'
>>> main({'T1': '0', 'T2': '7', 'T3': '347', 'T4': '764', 'T5': '186', 'T6': '428'})
'7365516373432'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('956263')
'B1', 7), ('B2', 12), ('B3', 2), ('B4', 75), ('B5', 6), ('B6', 1)]
[(
>>> main('505045')
'B1', 5), ('B2', 10), ('B3', 1), ('B4', 90), ('B5', 7), ('B6', 0)]
[(
>>> main('817556')
'B1', 4), ('B2', 2), ('B3', 3), ('B4', 60), ('B5', 4), ('B6', 1)]
[(
>>> main('753402')
'B1', 2), ('B2', 15), ('B3', 1), ('B4', 63), ('B5', 3), ('B6', 1)] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('18408676333199')
'E1': '143', 'E2': '651', 'E3': '851', 'E5': '133'}
{
>>> main('31224203864905')
'E1': '329', 'E2': '565', 'E3': '626', 'E5': '227'}
{
>>> main('9632530602595')
'E1': '99', 'E2': '77', 'E3': '1010', 'E5': '70'}
{
>>> main('22190166678539')
'E1': '11', 'E2': '78', 'E3': '416', 'E5': '161'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x19a11')
'102864'
>>> main('0x10b2a')
'68185'
>>> main('0xb2fb')
'48023'
>>> main('0x3e55')
'13810'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(3028)
'84', '1', '11')
(
>>> main(27278)
'14', '1', '106')
(
>>> main(42210)
'98', '1', '164')
(
>>> main(32998)
'102', '1', '128') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((1, 18, 61, 1))
4114433
>>> main((1, 17, 16, 0))
541697
>>> main((1, 18, 35, 0))
1165313
>>> main((1, 4, 41, 0))
1347585
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('684482')
'L2', '56'), ('L3', '7'), ('L4', '10')]
[(
>>> main('4503308')
'L2', '225'), ('L3', '11'), ('L4', '68')]
[(
>>> main('10169179')
'L2', '363'), ('L3', '2'), ('L4', '155')]
[(
>>> main('2580190')
'L2', '475'), ('L3', '5'), ('L4', '39')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x10e2fd')
'0x161c00'
>>> main('0x4ad39')
'0x49400'
>>> main('0xa1aff')
'0x1d4200'
>>> main('0x15dd1c')
'0x12ba00'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x1637bbe5c')
28, 1, 479, 111, 88)
(
>>> main('0x1219a6132')
50, 4, 304, 51, 72)
(
>>> main('0x14c00bf7d')
61, 5, 95, 0, 83)
(
>>> main('0x1b2917783')
3, 6, 187, 82, 108) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main([('Y1', '99'), ('Y2', '21'), ('Y3', '177'), ('Y4', '617')])
1294670563
>>> main([('Y1', '17'), ('Y2', '23'), ('Y3', '111'), ('Y4', '560')])
1174862737
>>> main([('Y1', '82'), ('Y2', '30'), ('Y3', '254'), ('Y4', '74')])
156233554
>>> main([('Y1', '112'), ('Y2', '21'), ('Y3', '93'), ('Y4', '177')])
371579632
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(15696651)
12777409
>>> main(11398548)
6625015
>>> main(7259357)
3635042
>>> main(12491510)
12427085