Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('34853')
'5', '1', '0', '1', '1')
(
>>> main('64883')
'19', '3', '10', '15', '1')
(
>>> main('59844')
'4', '2', '3', '13', '1')
(
>>> main('50705')
'17', '0', '12', '8', '1') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('Q1', '590'), ('Q2', '216'), ('Q3', '23'), ('Q4', '0'), ('Q5', '6'), ('Q6', '159')])
'343066763854'
>>> main([('Q1', '343'), ('Q2', '138'), ('Q3', '53'), ('Q4', '1'), ('Q5', '3'), ('Q6', '343')])
'737540450647'
>>> main([('Q1', '301'), ('Q2', '101'), ('Q3', '257'), ('Q4', '0'), ('Q5', '1'), ('Q6', '480')])
'1031128061229'
>>> main([('Q1', '52'), ('Q2', '222'), ('Q3', '56'), ('Q4', '0'), ('Q5', '2'), ('Q6', '405')])
'870282655796'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(101872720)
0, 69, 39, 194, 0)
(
>>> main(213112660)
4, 117, 61, 150, 1)
(
>>> main(88009592)
8, 183, 110, 167, 0)
(
>>> main(40473866)
10, 80, 25, 77, 0) (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x20db408017d77')
375, 95, 0, 129, 32)
(
>>> main('0x16b883760a7b5')
949, 41, 944, 262, 22)
(
>>> main('0x91602f6c4ad7')
727, 18, 950, 5, 9)
(
>>> main('0x530ac9ca5a78')
632, 22, 229, 345, 5) (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x932e38')
'0x38', '0x0', '0x2', '0xcb', '0x24')
(
>>> main('0x3bab960')
'0x60', '0x0', '0x1', '0xae', '0xee')
(
>>> main('0xbc1b84')
'0x4', '0x1', '0x3', '0x6', '0x2f')
(
>>> main('0x29813d8')
'0x58', '0x1', '0x3', '0x4', '0xa6') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('26', '102', '1', '107', '2'))
5962138
>>> main(('13', '46', '0', '78', '7'))
15960973
>>> main(('41', '4', '1', '112', '3'))
8134953
>>> main(('5', '84', '1', '48', '2'))
4994309
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'A1': 11, 'A2': 37, 'A4': 1})
'0x1250b'
>>> main({'A1': 33, 'A2': 32, 'A4': 57})
'0x392021'
>>> main({'A1': 58, 'A2': 3, 'A4': 53})
'0x35033a'
>>> main({'A1': 234, 'A2': 52, 'A4': 8})
'0x834ea'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('1', '47', '59', '83'))
'2785078461'
>>> main(('3', '86', '49', '5'))
'167822683'
>>> main(('3', '25', '93', '98'))
'3288429671'
>>> main(('2', '1', '118', '122'))
'4093761542'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('J1', '0x3'), ('J2', '0x18'), ('J3', '0x0'), ('J4', '0x1'), ('J5', '0x2'), ('J6', '0x3')])
'0x1d3003'
>>> main([('J1', '0x1fc'), ('J2', '0x37'), ('J3', '0x0'), ('J4', '0x1'), ('J5', '0x2'), ('J6', '0x2')])
'0x156ffc'
>>> main([('J1', '0x130'), ('J2', '0x7'), ('J3', '0x0'), ('J4', '0x0'), ('J5', '0x3'), ('J6', '0x1')])
'0xe0f30'
>>> main([('J1', '0x7'), ('J2', '0x17'), ('J3', '0x0'), ('J4', '0x0'), ('J5', '0x2'), ('J6', '0x3')])
'0x1c2e07'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main((2, 1, 95, 2))
'0x45f84'
>>> main((21, 1, 92, 13))
'0x1a5caa'
>>> main((45, 1, 505, 5))
'0xbf9da'
>>> main((62, 0, 354, 9))
'0x13627c'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('45863666')
2, 0, 122, 174)
(
>>> main('45579881')
1, 2, 111, 173)
(
>>> main('8470840')
0, 2, 40, 32)
(
>>> main('5213707')
3, 2, 113, 19) (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'T1': 88, 'T2': 1, 'T3': 1, 'T4': 185, 'T5': 19})
'0x13b9958'
>>> main({'T1': 8, 'T2': 5, 'T3': 1, 'T4': 66, 'T5': 46})
'0x2e42d08'
>>> main({'T1': 244, 'T2': 0, 'T3': 0, 'T4': 162, 'T5': 47})
'0x2fa20f4'
>>> main({'T1': 177, 'T2': 6, 'T3': 0, 'T4': 73, 'T5': 27})
'0x1b496b1'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x130afa8f8f2')
738766241356
>>> main('0x2fc096fd77f')
34611393983
>>> main('0xc3af66eab0')
4037359548976
>>> main('0x2811d368ef4')
1220004127392
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('M1', '485'), ('M3', '114'), ('M4', '1'), ('M5', '410')])
'440830788069'
>>> main([('M1', '171'), ('M3', '91'), ('M4', '1'), ('M5', '177')])
'190636884139'
>>> main([('M1', '972'), ('M3', '771'), ('M4', '0'), ('M5', '175')])
'188309046220'
>>> main([('M1', '54'), ('M3', '23'), ('M4', '1'), ('M5', '295')])
'317302767670'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('0x69f809')
'C1': 9, 'C2': 32, 'C3': 15, 'C4': 1, 'C5': 2, 'C6': 3}
{
>>> main('0x425352')
'C1': 18, 'C2': 13, 'C3': 5, 'C4': 2, 'C5': 0, 'C6': 2}
{
>>> main('0x63effb')
'C1': 59, 'C2': 63, 'C3': 14, 'C4': 3, 'C5': 0, 'C6': 3}
{
>>> main('0x3756a5')
'C1': 37, 'C2': 26, 'C3': 5, 'C4': 3, 'C5': 5, 'C6': 1} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(29635902)
32614684
>>> main(27472767)
66689242
>>> main(27598721)
589146
>>> main(63935448)
46440444
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('347', '3', '1'))
'0x8eb60'
>>> main(('301', '30', '2'))
'0x17a5a0'
>>> main(('437', '6', '3'))
'0x19b6a0'
>>> main(('435', '3', '1'))
'0x8f660'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('41719988206')
41607640759
>>> main('8039930625')
7784877878
>>> main('9624143352')
9395400097
>>> main('23952751386')
23890817974
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('64', '0', '48', '6'))
'0x33040'
>>> main(('48', '1', '40', '1'))
'0xa8b0'
>>> main(('18', '1', '52', '6'))
'0x33492'
>>> main(('99', '0', '6', '3'))
'0x18663'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('896683')
'U1', '0x1'), ('U2', '0x1'), ('U4', '0x3'), ('U5', '0x2d'), ('U6', '0x1')]
[(
>>> main('366432')
'U1', '0x0'), ('U2', '0x0'), ('U4', '0x5'), ('U5', '0x2c'), ('U6', '0x0')]
[(
>>> main('1230817')
'U1', '0x1'), ('U2', '0x0'), ('U4', '0x1'), ('U5', '0x16'), ('U6', '0x2')]
[(
>>> main('785644')
'U1', '0x0'), ('U2', '0x2'), ('U4', '0x7'), ('U5', '0x1f'), ('U6', '0x1')] [(
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x1444540b')
'L1', '1'), ('L2', '5'), ('L3', '84'), ('L4', '17'), ('L5', '10')]
[(
>>> main('0x3ce58b15')
'L1', '1'), ('L2', '10'), ('L3', '395'), ('L4', '57'), ('L5', '30')]
[(
>>> main('0x7b00821')
'L1', '1'), ('L2', '16'), ('L3', '8'), ('L4', '108'), ('L5', '3')]
[(
>>> main('0xb3085be')
'L1', '0'), ('L2', '95'), ('L3', '133'), ('L4', '76'), ('L5', '5')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x1cdd74b4b6')
128124151597
>>> main('0x383eb0886c')
252329775010
>>> main('0x3bdda087d0')
268502370081
>>> main('0xc36c56d49')
47581535707
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(436128299)
267799552
>>> main(375829252)
322279424
>>> main(395893726)
482793472
>>> main(58732906)
469860352
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Целое.
Тесты:
>>> main('0x456f0f6b1bb')
4741700770507
>>> main('0xec1e0cf9b0d')
16217897385581
>>> main('0x6fddb3ee80d')
7627862768557
>>> main('0x7a6f5335825')
8383781719397
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'L1': '0x13', 'L2': '0x8', 'L3': '0x14', 'L4': '0x0'})
'83987'
>>> main({'L1': '0x3', 'L2': '0x6', 'L3': '0x17', 'L4': '0x31'})
'6518275'
>>> main({'L1': '0x35', 'L2': '0x4', 'L3': '0x1c', 'L4': '0x30'})
'6407221'
>>> main({'L1': '0x2d', 'L2': '0x8', 'L3': '0x10', 'L4': '0x27'})
'5179437'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x48c4c6')
'Z2', '0x0'), ('Z3', '0x3'), ('Z4', '0x1'), ('Z5', '0x46'), ('Z6', '0x1')]
[(
>>> main('0x6d3f16')
'Z2', '0x0'), ('Z3', '0xc'), ('Z4', '0x7'), ('Z5', '0x169'), ('Z6', '0x1')]
[(
>>> main('0x788347')
'Z2', '0x0'), ('Z3', '0xd'), ('Z4', '0x0'), ('Z5', '0x1c4'), ('Z6', '0x1')]
[(
>>> main('0xad46a')
'Z2', '0x1'), ('Z3', '0x1'), ('Z4', '0x5'), ('Z5', '0x56'), ('Z6', '0x0')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Целое.
Тесты:
>>> main(3651755)
3577713
>>> main(2071108)
2034484
>>> main(128987)
79855
>>> main(2326473)
2298623
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(24150473)
'A1', '0x1'), ('A2', '0x0'), ('A3', '0x72'), ('A4', '0x8'), ('A5', '0x0'), ('A6', '0x17')]
[(
>>> main(22956882)
'A1', '0x0'), ('A2', '0x1'), ('A3', '0x2d4'), ('A4', '0x4'), ('A5', '0xe'), ('A6', '0x15')]
[(
>>> main(11074302)
'A1', '0x0'), ('A2', '0x1'), ('A3', '0x2bf'), ('A4', '0xf'), ('A5', '0x8'), ('A6', '0xa')]
[(
>>> main(32389335)
'A1', '0x1'), ('A2', '0x1'), ('A3', '0x235'), ('A4', '0x3'), ('A5', '0xe'), ('A6', '0x1e')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(229300)
'0x78ded0'
>>> main(4233327)
'0x27be'
>>> main(2706174)
'0x2a53f9'
>>> main(7528968)
'0x24b823'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Целое.Тесты:
>>> main({'L1': '0x1', 'L2': '0x4', 'L3': '0xd9', 'L4': '0x9'})
40345
>>> main({'L1': '0x1', 'L2': '0x1', 'L3': '0x3a', 'L4': '0x22'})
140195
>>> main({'L1': '0x0', 'L2': '0x0', 'L3': '0x36', 'L4': '0x58'})
361312
>>> main({'L1': '0x1', 'L2': '0x2', 'L3': '0x1c', 'L4': '0x43'})
274885
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main([('Q1', 94), ('Q2', 783), ('Q3', 126), ('Q4', 171)])
22967846878
>>> main([('Q1', 16), ('Q2', 861), ('Q3', 224), ('Q4', 4)])
566341264
>>> main([('Q1', 112), ('Q2', 883), ('Q3', 385), ('Q4', 96)])
12935477744
>>> main([('Q1', 22), ('Q2', 827), ('Q3', 446), ('Q4', 155)])
20862311830
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('4126613')
'21', '1', '1007', '0')
(
>>> main('89433962')
'106', '1', '330', '21')
(
>>> main('64424465')
'17', '2', '368', '15')
(
>>> main('106099608')
'24', '0', '303', '25') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'B1': 36, 'B2': 77, 'B3': 0, 'B5': 0})
'9892'
>>> main({'B1': 82, 'B2': 82, 'B3': 3, 'B5': 1})
'8497490'
>>> main({'B1': 13, 'B2': 223, 'B3': 3, 'B5': 1})
'8515469'
>>> main({'B1': 106, 'B2': 153, 'B3': 0, 'B5': 0})
'19690'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x1', '0xc', '0x3'))
'3265'
>>> main(('0x2', '0x3c', '0x3'))
'4034'
>>> main(('0xa', '0x1e', '0x3'))
'3562'
>>> main(('0xa', '0x3e', '0x0'))
'1002'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('2096216')
'D1', '88'), ('D2', '1022'), ('D3', '3'), ('D4', '0')]
[(
>>> main('3226392')
'D1', '280'), ('D2', '157'), ('D3', '2'), ('D4', '1')]
[(
>>> main('162174')
'D1', '382'), ('D2', '316'), ('D3', '0'), ('D4', '0')]
[(
>>> main('2487919')
'D1', '111'), ('D2', '763'), ('D3', '0'), ('D4', '1')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Целое.Тесты:
>>> main(('141', '62', '1', '3'))
201391245
>>> main(('184', '20', '2', '0'))
75960
>>> main(('457', '56', '1', '2'))
134279625
>>> main(('223', '26', '1', '1'))
67155167
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(265788)
'409827'
>>> main(18659)
'99470'
>>> main(129678)
'466856'
>>> main(117325)
'433316'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x9147f9')
'H1': '0x9', 'H2': '0x7', 'H3': '0xf', 'H4': '0x5', 'H5': '0x4', 'H6': '0x2'}
{
>>> main('0xe0c0ec')
'H1': '0xc', 'H2': '0x6', 'H3': '0x1', 'H4': '0x3', 'H5': '0x8', 'H6': '0x3'}
{
>>> main('0x2e8bf7')
'H1': '0x7', 'H2': '0x7', 'H3': '0x17', 'H4': '0xa', 'H5': '0xb', 'H6': '0x0'}
{
>>> main('0x8dc869')
'H1': '0x9', 'H2': '0x6', 'H3': '0x10', 'H4': '0x7', 'H5': '0x3', 'H6': '0x2'} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'V1': 3, 'V2': 25, 'V3': 152, 'V4': 14})
'30605515'
>>> main({'V1': 3, 'V2': 532, 'V3': 108, 'V4': 12})
'26054819'
>>> main({'V1': 3, 'V2': 988, 'V3': 233, 'V4': 3})
'8208099'
>>> main({'V1': 0, 'V2': 1018, 'V3': 236, 'V4': 15})
'33398736'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Тесты:
>>> main('566')
'Z1', 0), ('Z2', 3), ('Z3', 35), ('Z4', 0)]
[(
>>> main('246')
'Z1', 0), ('Z2', 3), ('Z3', 15), ('Z4', 0)]
[(
>>> main('3966')
'Z1', 0), ('Z2', 7), ('Z3', 55), ('Z4', 3)]
[(
>>> main('4091')
'Z1', 1), ('Z2', 5), ('Z3', 63), ('Z4', 3)] [(