ИКБО-74-23

Вариант №1

Задача №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')]

Вариант №2

Задача №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}

Вариант №3

Задача №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'

Вариант №4

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('0x7ece')
'0xe007ec'

>>> main('0x525e')
'0xe00525'

>>> main('0x608a')
'0xa00608'

>>> main('0x7bc5')
'0x5007bc'

Вариант №5

Задача №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')]

Вариант №6

Задача №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'

Вариант №7

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main('7529855899872')
2530795739

>>> main('1709387603027')
12867883825

>>> main('3543821355786')
2354252391

>>> main('6850191350083')
6289179591

Вариант №8

Задача №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'

Вариант №9

Задача №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')

Вариант №10

Задача №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'}

Вариант №11

Задача №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')]

Вариант №12

Задача №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

Вариант №13

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('0xdaf13674182')
'0x8ae6ce8305b'

>>> main('0x55c203a1254')
'0x15c07424a8a'

>>> main('0x4b439580679')
'0x1b52b00cf29'

>>> main('0x46edf06d63e')
'0x6efe0dac7c8'

Вариант №14

Задача №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')

Вариант №15

Задача №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'

Вариант №16

Задача №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'}

Вариант №17

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main('0x82285a')
1090890

>>> main('0x28aee6')
4576662

>>> main('0x9180c0')
9015360

>>> main('0x1eabd')
883981

Вариант №18

Задача №8

Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.

Тесты:

>>> main(493691)
(33, 4, 7)

>>> main(513169)
(82, 6, 7)

>>> main(193102)
(73, 7, 2)

>>> main(205567)
(11, 1, 3)

Вариант №19

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('0x3ac1770')
'0xb0e1d7'

>>> main('0x3c458b7')
'0x2116ff8'

>>> main('0x2c7230d')
'0x11c1b63'

>>> main('0x3d78c42')
'0x5e85ec'

Вариант №20

Задача №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}

Вариант №21

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('867244')
'0xb34c6'

>>> main('956160')
'0x3a44'

>>> main('625786')
'0xea601'

>>> main('1031375')
'0x3fec3'

Вариант №22

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('0xcd59dbb18f8d')
'469710957671995'

>>> main('0x1ded68bbad80')
'489862525753133'

>>> main('0x297b0e4fc2d2')
'333193460959713'

>>> main('0x2404e41712db')
'141328978117276'

Вариант №23

Задача №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'

Вариант №24

Задача №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'

Вариант №25

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main('0x38a8c206b2')
191127901190

>>> main('0x1037fa8390')
154619353987

>>> main('0x3b12dab360')
103081150899

>>> main('0xfeba87f8b')
149250635135

Вариант №26

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Целое.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main(896315675)
'0x3511b36b'

>>> main(683783974)
'0x287304db'

>>> main(878656873)
'0x34d57d33'

>>> main(989865911)
'0x3b7806e2'

Вариант №27

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Десятичная строка.

Тесты:

>>> main(1066840742)
'1422055166'

>>> main(413924232)
'1896185442'

>>> main(1393862208)
'1208128844'

>>> main(595205493)
'782713485'

Вариант №28

Задача №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'

Вариант №29

Задача №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

Вариант №30

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Шестнадцатиричная строка.

Выходные данные:

Целое.

Тесты:

>>> main('0x44560')
729664

>>> main('0x69e61')
216929

>>> main('0x7a4')
852740

>>> main('0x45081')
272449

Вариант №31

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Целое.

Выходные данные:

Целое.

Тесты:

>>> main(7638084320202)
7553717264384

>>> main(2849281748124)
3655181231104

>>> main(1769189339565)
4620761688064

>>> main(6473291174050)
5209965407232

Вариант №32

Задача №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

Вариант №33

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Целое.

Тесты:

>>> main('102690513')
74934272

>>> main('100497677')
58492800

>>> main('7850977')
4583808

>>> main('83341603')
16290688

Вариант №34

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.

Входные данные:

Десятичная строка.

Выходные данные:

Десятичная строка.

Тесты:

>>> main('44695')
'477974'

>>> main('402976')
'200898'

>>> main('429111')
'400340'

>>> main('362155')
'218548'

Вариант №35

Задача №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')]

Вариант №36

Задача №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'}

Вариант №37

Задача №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

Вариант №38

Задача №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'

Вариант №39

Задача №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'}

Вариант №40

Задача №8

Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.

Входные данные:

Десятичная строка.

Выходные данные:

Шестнадцатиричная строка.

Тесты:

>>> main('4368858103971')
'0x1f8bfa00a00'

>>> main('2025772259929')
'0xdf1d4ba580'

>>> main('3943586924163')
'0x1b239006800'

>>> main('2756667145104')
'0x54e831b900'