Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(138206762445)
[('O1', '461'), ('O3', '220'), ('O4', '257')]
>>> main(378869439016)
[('O1', '552'), ('O3', '358'), ('O4', '705')]
>>> main(76521268841)
[('O1', '617'), ('O3', '272'), ('O4', '142')]
>>> main(397547499679)
[('O1', '159'), ('O3', '250'), ('O4', '740')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('10067492968')
{'W1': 8, 'W2': 1, 'W3': 1, 'W4': 71, 'W5': 0, 'W6': 150}
>>> main('10088130941')
{'W1': 29, 'W2': 1, 'W3': 165, 'W4': 50, 'W5': 5, 'W6': 150}
>>> main('34063759519')
{'W1': 31, 'W2': 0, 'W3': 226, 'W4': 110, 'W5': 9, 'W6': 507}
>>> main('30680332095')
{'W1': 31, 'W2': 1, 'W3': 220, 'W4': 194, 'W5': 2, 'W6': 457}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('32', '10', '1', '5', '7'))
'0x3ac2a0'
>>> main(('50', '0', '0', '2', '13'))
'0x690032'
>>> main(('18', '15', '0', '5', '0'))
'0x283d2'
>>> main(('17', '9', '1', '4', '12'))
'0x624251'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x7ece')
'0xe007ec'
>>> main('0x525e')
'0xe00525'
>>> main('0x608a')
'0xa00608'
>>> main('0x7bc5')
'0x5007bc'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x32967110')
[('Y1', '0'), ('Y3', '412'), ('Y4', '1'), ('Y5', '20'), ('Y6', '12')]
>>> main('0x290de634')
[('Y1', '0'), ('Y3', '889'), ('Y4', '0'), ('Y5', '8'), ('Y6', '10')]
>>> main('0x2d9bb449')
[('Y1', '1'), ('Y3', '749'), ('Y4', '1'), ('Y5', '12'), ('Y6', '11')]
>>> main('0x34fc1b20')
[('Y1', '0'), ('Y3', '774'), ('Y4', '1'), ('Y5', '7'), ('Y6', '13')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'V1': '0x173', 'V2': '0xb', 'V3': '0x1f2', 'V4': '0x0', 'V6': '0x8'})
'0x20001f21773'
>>> main({'V1': '0x199', 'V2': '0x56', 'V3': '0x146', 'V4': '0x2', 'V6': '0x2f'})
'0xbc00546ad99'
>>> main({'V1': '0xbb', 'V2': '0x68', 'V3': '0x11a', 'V4': '0x5', 'V6': '0x3'})
'0xc00b1ad0bb'
>>> main({'V1': '0x144', 'V2': '0x62', 'V3': '0x1b2', 'V4': '0xa', 'V6': '0xad'})
'0x2b4015b2c544'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('7529855899872')
2530795739
>>> main('1709387603027')
12867883825
>>> main('3543821355786')
2354252391
>>> main('6850191350083')
6289179591
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x15', '0x19a', '0x50', '0x1ee'))
'33193734997'
>>> main(('0x18', '0x3d7', '0x7f', '0x261'))
'40935914232'
>>> main(('0xe', '0x26c', '0x19', '0x190'))
'26856672654'
>>> main(('0xd', '0x142', '0x3b', '0x2b0'))
'46201841741'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(27217166)
('0xe', '0xd', '0xa', '0x1', '0x67')
>>> main(19862006)
('0xf6', '0x11', '0x8', '0x1', '0x4b')
>>> main(30398793)
('0x49', '0x19', '0xe', '0x1', '0x73')
>>> main(20155767)
('0x77', '0xd', '0xc', '0x1', '0x4c')
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('13332807')
{'T2': '276', 'T3': '27', 'T4': '25'}
>>> main('10031165')
{'T2': '259', 'T3': '8', 'T4': '19'}
>>> main('13363725')
{'T2': '160', 'T3': '31', 'T4': '25'}
>>> main('16542493')
{'T2': '177', 'T3': '35', 'T4': '31'}
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(8088153)
[('C1', '0x1'), ('C2', '0x2c'), ('C4', '0xb'), ('C5', '0x7')]
>>> main(15411651)
[('C1', '0x1'), ('C2', '0x21'), ('C4', '0xb'), ('C5', '0xe')]
>>> main(6407567)
[('C1', '0x1'), ('C2', '0x7'), ('C4', '0x1'), ('C5', '0x6')]
>>> main(6645132)
[('C1', '0x0'), ('C2', '0x6'), ('C4', '0x5'), ('C5', '0x6')]
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('26', '867', '1', '36', '55'))
949786620928
>>> main(('11', '812', '3', '62', '50'))
867442234880
>>> main(('10', '167', '1', '39', '1'))
22453392384
>>> main(('38', '285', '3', '11', '54'))
929299352576
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0xdaf13674182')
'0x8ae6ce8305b'
>>> main('0x55c203a1254')
'0x15c07424a8a'
>>> main('0x4b439580679')
'0x1b52b00cf29'
>>> main('0x46edf06d63e')
'0x6efe0dac7c8'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x11b60')
('0x0', '0x0', '0x3', '0x236')
>>> main('0x166b3')
('0x0', '0x1', '0x1', '0x2cd')
>>> main('0xe76')
('0x1', '0x1', '0x3', '0x1c')
>>> main('0x1a8b7')
('0x1', '0x1', '0x1', '0x351')
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'D1': 2, 'D2': 13, 'D3': 15, 'D4': 0, 'D6': 11})
'11536362'
>>> main({'D1': 1, 'D2': 15, 'D3': 0, 'D4': 1, 'D6': 6})
'6293625'
>>> main({'D1': 6, 'D2': 3, 'D3': 9, 'D4': 1, 'D6': 5})
'5246110'
>>> main({'D1': 5, 'D2': 9, 'D3': 8, 'D4': 0, 'D6': 13})
'13632589'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('8641443513329')
{'T1': '1009', 'T2': '0', 'T3': '94', 'T4': '1', 'T6': '1005'}
>>> main('4241163243544')
{'T1': '24', 'T2': '4', 'T3': '58', 'T4': '0', 'T6': '493'}
>>> main('8668631514597')
{'T1': '485', 'T2': '7', 'T3': '157', 'T4': '1', 'T6': '1009'}
>>> main('2872926285189')
{'T1': '389', 'T2': '3', 'T3': '1', 'T4': '2', 'T6': '334'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x82285a')
1090890
>>> main('0x28aee6')
4576662
>>> main('0x9180c0')
9015360
>>> main('0x1eabd')
883981
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(493691)
(33, 4, 7)
>>> main(513169)
(82, 6, 7)
>>> main(193102)
(73, 7, 2)
>>> main(205567)
(11, 1, 3)
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x3ac1770')
'0xb0e1d7'
>>> main('0x3c458b7')
'0x2116ff8'
>>> main('0x2c7230d')
'0x11c1b63'
>>> main('0x3d78c42')
'0x5e85ec'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(3225137)
{'Y1': 49, 'Y2': 12, 'Y3': 6, 'Y4': 2, 'Y5': 3}
>>> main(31991755)
{'Y1': 75, 'Y2': 15, 'Y3': 4, 'Y4': 16, 'Y5': 30}
>>> main(32116809)
{'Y1': 73, 'Y2': 0, 'Y3': 2, 'Y4': 20, 'Y5': 30}
>>> main(3839222)
{'Y1': 118, 'Y2': 9, 'Y3': 2, 'Y4': 21, 'Y5': 3}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('867244')
'0xb34c6'
>>> main('956160')
'0x3a44'
>>> main('625786')
'0xea601'
>>> main('1031375')
'0x3fec3'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0xcd59dbb18f8d')
'469710957671995'
>>> main('0x1ded68bbad80')
'489862525753133'
>>> main('0x297b0e4fc2d2')
'333193460959713'
>>> main('0x2404e41712db')
'141328978117276'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'A1': '0x3a4', 'A2': '0x3ed', 'A3': '0x39'})
'0x39fb7a4'
>>> main({'A1': '0x167', 'A2': '0x70', 'A3': '0x18f'})
'0x18f1c167'
>>> main({'A1': '0xfc', 'A2': '0xc8', 'A3': '0x13b'})
'0x13b320fc'
>>> main({'A1': '0x1e8', 'A2': '0x397', 'A3': '0x1d9'})
'0x1d9e5de8'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'G1': 3, 'G2': 232, 'G3': 5, 'G4': 4, 'G5': 16})
'269505443'
>>> main({'G1': 0, 'G2': 256, 'G3': 51, 'G4': 41, 'G5': 66})
'1118254080'
>>> main({'G1': 0, 'G2': 230, 'G3': 63, 'G4': 13, 'G5': 71})
'1194849176'
>>> main({'G1': 3, 'G2': 826, 'G3': 9, 'G4': 47, 'G5': 38})
'649895147'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x38a8c206b2')
191127901190
>>> main('0x1037fa8390')
154619353987
>>> main('0x3b12dab360')
103081150899
>>> main('0xfeba87f8b')
149250635135
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(896315675)
'0x3511b36b'
>>> main(683783974)
'0x287304db'
>>> main(878656873)
'0x34d57d33'
>>> main(989865911)
'0x3b7806e2'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(1066840742)
'1422055166'
>>> main(413924232)
'1896185442'
>>> main(1393862208)
'1208128844'
>>> main(595205493)
'782713485'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'M1': 142, 'M2': 358, 'M3': 71, 'M4': 3, 'M5': 283})
'0x236e3acc8e'
>>> main({'M1': 343, 'M2': 902, 'M3': 93, 'M4': 6, 'M5': 241})
'0x1e3aef0d57'
>>> main({'M1': 103, 'M2': 752, 'M3': 42, 'M4': 5, 'M5': 614})
'0x4cd555e067'
>>> main({'M1': 19, 'M2': 910, 'M3': 83, 'M4': 2, 'M5': 464})
'0x3a0a9f1c13'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main([('K1', '0x0'), ('K2', '0x7'), ('K3', '0x23a'), ('K4', '0xc')])
822968
>>> main([('K1', '0x5'), ('K2', '0x6'), ('K3', '0x2b9'), ('K4', '0x2')])
175733
>>> main([('K1', '0x3'), ('K2', '0x3'), ('K3', '0x26b'), ('K4', '0x16')])
1481435
>>> main([('K1', '0x3'), ('K2', '0x2'), ('K3', '0x12e'), ('K4', '0x1f')])
2050963
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x44560')
729664
>>> main('0x69e61')
216929
>>> main('0x7a4')
852740
>>> main('0x45081')
272449
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(7638084320202)
7553717264384
>>> main(2849281748124)
3655181231104
>>> main(1769189339565)
4620761688064
>>> main(6473291174050)
5209965407232
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('6', '537', '75', '904', '19'))
699584546609152
>>> main(('54', '76', '3', '12', '18'))
633731839744000
>>> main(('170', '679', '35', '591', '4'))
161053667141632
>>> main(('200', '231', '87', '905', '14'))
523700187111424
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('102690513')
74934272
>>> main('100497677')
58492800
>>> main('7850977')
4583808
>>> main('83341603')
16290688
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('44695')
'477974'
>>> main('402976')
'200898'
>>> main('429111')
'400340'
>>> main('362155')
'218548'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x4eec3')
[('N1', '1'), ('N2', '33'), ('N4', '14'), ('N5', '78')]
>>> main('0x20c55')
[('N1', '1'), ('N2', '42'), ('N4', '12'), ('N5', '32')]
>>> main('0x6b66b')
[('N1', '1'), ('N2', '53'), ('N4', '6'), ('N5', '107')]
>>> main('0x78f63')
[('N1', '1'), ('N2', '49'), ('N4', '15'), ('N5', '120')]
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0xf5')
{'L1': '0x1', 'L2': '0x3a', 'L3': '0x1', 'L4': '0x0'}
>>> main('0x285')
{'L1': '0x1', 'L2': '0x2', 'L3': '0x5', 'L4': '0x0'}
>>> main('0x5c8')
{'L1': '0x0', 'L2': '0x24', 'L3': '0x3', 'L4': '0x1'}
>>> main('0x298')
{'L1': '0x0', 'L2': '0xc', 'L3': '0x5', 'L4': '0x0'}
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main({'E1': 6, 'E3': 864, 'E4': 168})
22130694
>>> main({'E1': 3, 'E3': 808, 'E4': 32})
4297731
>>> main({'E1': 5, 'E3': 485, 'E4': 468})
61403781
>>> main({'E1': 2, 'E3': 415, 'E4': 245})
32165762
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('L1', '0x2e6'), ('L3', '0xe1'), ('L4', '0xc7'), ('L5', '0x10'), ('L6', '0x0')])
'4504556262'
>>> main([('L1', '0x200'), ('L3', '0x7d'), ('L4', '0xbb'), ('L5', '0x10'), ('L6', '0x0')])
'4491563520'
>>> main([('L1', '0x395'), ('L3', '0xa2'), ('L4', '0x9a'), ('L5', '0xc'), ('L6', '0x2')])
'20563239829'
>>> main([('L1', '0x140'), ('L3', '0xf2'), ('L4', '0x25'), ('L5', '0x5'), ('L6', '0x3')])
'27151769920'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x3e9614a')
{'D1': '0x2', 'D2': '0x12', 'D3': '0x21', 'D4': '0x5', 'D5': '0x1f4'}
>>> main('0x6bdd80')
{'D1': '0x0', 'D2': '0x20', 'D3': '0x1d', 'D4': '0x7', 'D5': '0x35'}
>>> main('0x37d9e7b')
{'D1': '0x3', 'D2': '0x1e', 'D3': '0x1e', 'D4': '0x6', 'D5': '0x1be'}
>>> main('0x245b5b9')
{'D1': '0x1', 'D2': '0x2e', 'D3': '0x35', 'D4': '0x6', 'D5': '0x122'}
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('4368858103971')
'0x1f8bfa00a00'
>>> main('2025772259929')
'0xdf1d4ba580'
>>> main('3943586924163')
'0x1b239006800'
>>> main('2756667145104')
'0x54e831b900'