Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(251092216)
{'X1': '0x18', 'X3': '0x33', 'X4': '0x75', 'X5': '0xf', 'X6': '0x7'}
>>> main(525352115)
{'X1': '0x13', 'X3': '0x32', 'X4': '0x3', 'X5': '0x15', 'X6': '0xf'}
>>> main(83566872)
{'X1': '0x18', 'X3': '0x4', 'X4': '0xb2', 'X5': '0xf', 'X6': '0x2'}
>>> main(522852654)
{'X1': '0xe', 'X3': '0x24', 'X4': '0xa1', 'X5': '0x12', 'X6': '0xf'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(134402994)
[('J1', '50'), ('J2', '423'), ('J3', '2'), ('J4', '32')]
>>> main(190035222)
[('J1', '22'), ('J2', '362'), ('J3', '19'), ('J4', '45')]
>>> main(443804596)
[('J1', '52'), ('J2', '471'), ('J3', '51'), ('J4', '105')]
>>> main(387617187)
[('J1', '35'), ('J2', '291'), ('J3', '26'), ('J4', '92')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x8428f06')
(0, 3, 480, 40, 528)
>>> main('0x310bb37')
(1, 3, 358, 11, 196)
>>> main('0x34650c3')
(1, 1, 24, 37, 209)
>>> main('0xd3a0153')
(1, 1, 42, 32, 846)
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0xddd80')
'28396'
>>> main('0xb8ae4')
'1203286'
>>> main('0xf4461')
'1112610'
>>> main('0x119168')
'1313931'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'Y1': 0, 'Y2': 0, 'Y3': 31, 'Y4': 739, 'Y5': 1})
'451576'
>>> main({'Y1': 1, 'Y2': 1, 'Y3': 20, 'Y4': 665, 'Y5': 0})
'170405'
>>> main({'Y1': 0, 'Y2': 0, 'Y3': 0, 'Y4': 425, 'Y5': 1})
'370944'
>>> main({'Y1': 2, 'Y2': 1, 'Y3': 3, 'Y4': 670, 'Y5': 0})
'171550'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('61108049')
{'A1': '0x1', 'A2': '0x2f5', 'A3': '0x1', 'A4': '0x8', 'A5': '0x3a'}
>>> main('65153144')
{'A1': '0x8', 'A2': '0x287', 'A3': '0x0', 'A4': '0x4', 'A5': '0x3e'}
>>> main('28916221')
{'A1': '0xd', 'A2': '0x39f', 'A3': '0x0', 'A4': '0x12', 'A5': '0x1b'}
>>> main('7692510')
{'A1': '0xe', 'A2': '0x20d', 'A3': '0x1', 'A4': '0xa', 'A5': '0x7'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('100128754')
66039754
>>> main('5646234')
11292264
>>> main('124714159')
48100031
>>> main('109043313')
16759239
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(15186288)
[('X1', '368'), ('X2', '92'), ('X3', '103'), ('X4', '1')]
>>> main(40348292)
[('X1', '132'), ('X2', '85'), ('X3', '103'), ('X4', '4')]
>>> main(27380253)
[('X1', '29'), ('X2', '101'), ('X3', '33'), ('X4', '3')]
>>> main(53562048)
[('X1', '192'), ('X2', '37'), ('X3', '49'), ('X4', '6')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('23360246')
887730
>>> main('1890416')
792846
>>> main('7980639')
522556
>>> main('17520513')
28293
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('W1', '1'), ('W2', '726'), ('W3', '125'), ('W4', '238'), ('W5', '1'), ('W6', '282')])
'0x8d1773edad'
>>> main([('W1', '0'), ('W2', '379'), ('W3', '17'), ('W4', '63'), ('W5', '3'), ('W6', '85')])
'0x2ab1f88af6'
>>> main([('W1', '1'), ('W2', '906'), ('W3', '43'), ('W4', '309'), ('W5', '7'), ('W6', '47')])
'0x17f9a95f15'
>>> main([('W1', '0'), ('W2', '249'), ('W3', '82'), ('W4', '227'), ('W5', '5'), ('W6', '101')])
'0x32d71a91f2'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('J1', '0x7'), ('J2', '0x30'), ('J3', '0x7'), ('J5', '0x2'), ('J6', '0x16c')])
1527254919
>>> main([('J1', '0x6'), ('J2', '0x3b'), ('J3', '0x0'), ('J5', '0x2'), ('J6', '0xa2')])
680002014
>>> main([('J1', '0x2'), ('J2', '0x14'), ('J3', '0x7'), ('J5', '0x2'), ('J6', '0x96')])
629673634
>>> main([('J1', '0x1'), ('J2', '0x2a'), ('J3', '0x4'), ('J5', '0xf'), ('J6', '0xd')])
58460497
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('29844685')
'38591605'
>>> main('36225415')
'1602190'
>>> main('52600236')
'31113771'
>>> main('12272771')
'4733876'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main((78, 1, 37, 15, 112))
1895083232
>>> main((101, 2, 29, 12, 71))
1204008528
>>> main((68, 1, 58, 12, 117))
1975995456
>>> main((105, 0, 15, 12, 95))
1606542992
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('773475')
{'Y1': 1, 'Y2': 49, 'Y3': 973, 'Y4': 2}
>>> main('586339')
{'Y1': 1, 'Y2': 49, 'Y3': 242, 'Y4': 2}
>>> main('407035')
{'Y1': 1, 'Y2': 125, 'Y3': 565, 'Y4': 1}
>>> main('661070')
{'Y1': 0, 'Y2': 39, 'Y3': 534, 'Y4': 2}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('H1', '0x0'), ('H3', '0x35'), ('H4', '0x267')])
2522432
>>> main([('H1', '0x1'), ('H3', '0x4'), ('H4', '0x345')])
3428609
>>> main([('H1', '0x0'), ('H3', '0x27'), ('H4', '0x354')])
3492288
>>> main([('H1', '0x0'), ('H3', '0x1d'), ('H4', '0x331')])
3348288
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(12531612)
(28, 222, 47)
>>> main(23833427)
(19, 173, 90)
>>> main(28503079)
(39, 432, 108)
>>> main(8523604)
(20, 61, 32)
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'L1': 20, 'L2': 1, 'L3': 524, 'L4': 46, 'L5': 712, 'L6': 137})
'0x44d902e8334'
>>> main({'L1': 29, 'L2': 1, 'L3': 942, 'L4': 63, 'L5': 92, 'L6': 8})
'0x40b83febbd'
>>> main({'L1': 9, 'L2': 1, 'L3': 403, 'L4': 241, 'L5': 366, 'L6': 115})
'0x39adcf164e9'
>>> main({'L1': 14, 'L2': 1, 'L3': 717, 'L4': 455, 'L5': 765, 'L6': 78})
'0x275fbc7b36e'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('922707')
[('T1', '0x3'), ('T2', '0x4'), ('T3', '0x11'), ('T4', '0x21'), ('T5', '0x3')]
>>> main('647444')
[('T1', '0x0'), ('T2', '0x5'), ('T3', '0x4'), ('T4', '0x1e'), ('T5', '0x2')]
>>> main('813896')
[('T1', '0x0'), ('T2', '0x2'), ('T3', '0x2d'), ('T4', '0x6'), ('T5', '0x3')]
>>> main('157961')
[('T1', '0x1'), ('T2', '0x2'), ('T3', '0x24'), ('T4', '0x26'), ('T5', '0x0')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(31275)
[('H1', '0x2b'), ('H2', '0x0'), ('H3', '0x0'), ('H4', '0x3d'), ('H5', '0x0')]
>>> main(12092)
[('H1', '0x3c'), ('H2', '0x0'), ('H3', '0x1'), ('H4', '0x17'), ('H5', '0x0')]
>>> main(10093)
[('H1', '0x6d'), ('H2', '0x0'), ('H3', '0x1'), ('H4', '0x13'), ('H5', '0x0')]
>>> main(89329)
[('H1', '0x71'), ('H2', '0x1'), ('H3', '0x0'), ('H4', '0x2e'), ('H5', '0x1')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'I1': 1, 'I2': 16, 'I3': 5, 'I4': 6})
'12993'
>>> main({'I1': 2, 'I2': 23, 'I3': 5, 'I4': 7})
'15070'
>>> main({'I1': 3, 'I2': 31, 'I3': 4, 'I4': 3})
'6783'
>>> main({'I1': 1, 'I2': 21, 'I3': 1, 'I4': 1})
'2261'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(7514756)
('0x284', '0x0', '0x255', '0x3')
>>> main(8079263)
('0x39f', '0x1', '0x368', '0x3')
>>> main(6014374)
('0x1a6', '0x1', '0x378', '0x2')
>>> main(1751810)
('0x302', '0x0', '0x357', '0x0')
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('1002')
[('R1', 0), ('R2', 21), ('R3', 3), ('R4', 1), ('R5', 1)]
>>> main('154')
[('R1', 0), ('R2', 13), ('R3', 2), ('R4', 0), ('R5', 0)]
>>> main('556')
[('R1', 0), ('R2', 22), ('R3', 0), ('R4', 0), ('R5', 1)]
>>> main('88')
[('R1', 0), ('R2', 12), ('R3', 1), ('R4', 0), ('R5', 0)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('743740968265')
[('Y1', 73), ('Y2', 26), ('Y3', 168), ('Y4', 339), ('Y5', 346)]
>>> main('1272519902323')
[('Y1', 115), ('Y2', 8), ('Y3', 396), ('Y4', 576), ('Y5', 592)]
>>> main('1210378573857')
[('Y1', 33), ('Y2', 16), ('Y3', 245), ('Y4', 641), ('Y5', 563)]
>>> main('1796555100857')
[('Y1', 57), ('Y2', 5), ('Y3', 117), ('Y4', 600), ('Y5', 836)]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(2367129)
{'W1': 1, 'W2': 467, 'W3': 1, 'W4': 2, 'W5': 1}
>>> main(7283534)
{'W1': 6, 'W2': 105, 'W3': 18, 'W4': 7, 'W5': 3}
>>> main(4619784)
{'W1': 0, 'W2': 449, 'W3': 7, 'W4': 3, 'W5': 2}
>>> main(3995526)
{'W1': 6, 'W2': 240, 'W3': 15, 'W4': 14, 'W5': 1}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('204654')
(251, 0, 3)
>>> main('2176544')
(433, 0, 33)
>>> main('1507834')
(15, 0, 23)
>>> main('565453')
(262, 2, 8)
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('B1', 2), ('B2', 2), ('B4', 30)])
'61458'
>>> main([('B1', 0), ('B2', 13), ('B4', 30)])
'61544'
>>> main([('B1', 3), ('B2', 9), ('B4', 25)])
'51275'
>>> main([('B1', 2), ('B2', 4), ('B4', 7)])
'14370'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x1f3a9188a')
'7403914'
>>> main('0x40615052')
'4726866'
>>> main('0x15fccaf1a')
'4173594'
>>> main('0x8f589ad5')
'2770901'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x2baf03')
'0x103ae15'
>>> main('0x1339ee6')
'0xe69f19'
>>> main('0x19587c9')
'0x1c9878a'
>>> main('0x11cd1ad')
'0x1add10e'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main({'A2': '2', 'A3': '7', 'A4': '436', 'A5': '6', 'A6': '0'})
1684720
>>> main({'A2': '2', 'A3': '2', 'A4': '151', 'A5': '6', 'A6': '1'})
3708752
>>> main({'A2': '2', 'A3': '5', 'A4': '290', 'A5': '1', 'A6': '0'})
336560
>>> main({'A2': '2', 'A3': '0', 'A4': '111', 'A5': '4', 'A6': '0'})
1077008
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x5e76')
'21405'
>>> main('0x5220')
'20616'
>>> main('0x611c')
'24647'
>>> main('0x37d2')
'12788'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('1157941553')
[('R1', '305'), ('R2', '50'), ('R4', '276')]
>>> main('305389587')
[('R1', '19'), ('R2', '248'), ('R4', '72')]
>>> main('2851791692')
[('R1', '844'), ('R2', '184'), ('R4', '679')]
>>> main('1231716577')
[('R1', '225'), ('R2', '160'), ('R4', '293')]
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x7b17d')
'286589'
>>> main('0x3de87')
'500190'
>>> main('0x21d47')
'479696'
>>> main('0x2383')
'57537'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(10705201)
[('M1', 305), ('M2', 2), ('M4', 40)]
>>> main(12178969)
[('M1', 537), ('M2', 1), ('M4', 46)]
>>> main(19149020)
[('M1', 220), ('M2', 0), ('M4', 73)]
>>> main(7814050)
[('M1', 930), ('M2', 2), ('M4', 29)]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('U1', 1000), ('U2', 0), ('U3', 27), ('U5', 2)])
'33610728'
>>> main([('U1', 963), ('U2', 0), ('U3', 29), ('U5', 12)])
'201386947'
>>> main([('U1', 458), ('U2', 0), ('U3', 25), ('U5', 0)])
'51658'
>>> main([('U1', 617), ('U2', 0), ('U3', 31), ('U5', 9)])
'151059049'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('63433348277')
'47982878571'
>>> main('22019020325')
'49526344347'
>>> main('19737724111')
'65263569485'
>>> main('32770796325')
'46305127378'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x220b41')
(1, 5, 0, 17)
>>> main('0xc15434')
(0, 2, 21, 96)
>>> main('0x155d5b1')
(1, 2, 29, 170)
>>> main('0x1b0c422')
(2, 2, 12, 216)
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(208016653)
'0xc65870a'
>>> main(340754031)
'0x144f37bf'
>>> main(527518752)
'0x1f7010a6'
>>> main(161603048)
'0x9a0f4ee'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'J1': '0x1c', 'J2': '0xd6', 'J3': '0x7a', 'J4': '0xec', 'J5': '0x5', 'J6': '0x3c'})
8249518503324
>>> main({'J1': '0x3a', 'J2': '0x7', 'J3': '0x6b', 'J4': '0xca', 'J5': '0x5c', 'J6': '0x2c'})
6097131454970
>>> main({'J1': '0x16', 'J2': '0x21', 'J3': '0x60', 'J4': '0x4a', 'J5': '0x33', 'J6': '0xc'})
1676804622422
>>> main({'J1': '0x3f', 'J2': '0x69', 'J3': '0x0', 'J4': '0xf2', 'J5': '0xe6', 'J6': '0x22'})
4796912245375
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'I1': 57, 'I2': 7, 'I3': 61})
125433
>>> main({'I1': 29, 'I2': 21, 'I3': 397})
814429
>>> main({'I1': 11, 'I2': 29, 'I3': 398})
816971
>>> main({'I1': 40, 'I2': 22, 'I3': 412})
845224
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('48641731721')
{'Q2': 0, 'Q3': 34, 'Q4': 758, 'Q5': 104, 'Q6': 181}
>>> main('49010089674')
{'Q2': 1, 'Q3': 50, 'Q4': 335, 'Q5': 295, 'Q6': 182}
>>> main('104281944592')
{'Q2': 0, 'Q3': 4, 'Q4': 25, 'Q5': 246, 'Q6': 388}
>>> main('38454748526')
{'Q2': 1, 'Q3': 91, 'Q4': 626, 'Q5': 130, 'Q6': 143}