Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(69351348)
'0xa1e46'
>>> main(70526901)
'0xe1e84'
>>> main(20075573)
'0xc904a'
>>> main(109257813)
'0x35064'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('676101148')
537468640
>>> main('801662794')
553130682
>>> main('628986537')
548365845
>>> main('695130296')
539866821
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('15016537')
'0x1', '0x22', '0xca', '0x1')
(
>>> main('12470594')
'0x0', '0x49', '0x7c', '0x1')
(
>>> main('76023490')
'0x0', '0x6', '0x10', '0x9')
(
>>> main('29399272')
'0x0', '0x18', '0x81', '0x3') (
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(2086083)
'0x1f5303'
>>> main(949847)
'0x19f901'
>>> main(219928)
'0xd6c00'
>>> main(315328)
'0x133f00'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Тесты:
>>> main(1812621460)
4, 649, 9, 2, 0, 108)
(
>>> main(4201482788)
4, 162, 6, 3, 3, 250)
(
>>> main(2551387341)
13, 332, 12, 4, 0, 152)
(
>>> main(3494347529)
9, 48, 14, 1, 2, 208) (
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('11456')
4198
>>> main('2864')
8281
>>> main('14453')
15043
>>> main('13010')
14614
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('135002998')
'0x20b17'
>>> main('207815485')
'0x31ec6'
>>> main('62643141')
'0xe2f7'
>>> main('42424158')
'0xaf0e'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('2075373')
'O1': '0xed', 'O2': '0xa', 'O3': '0xfd'}
{
>>> main('376261')
'O1': '0xc5', 'O2': '0x1d', 'O3': '0x2d'}
{
>>> main('1721223')
'O1': '0x87', 'O2': '0x3', 'O3': '0xd2'}
{
>>> main('239244')
'O1': '0x8c', 'O2': '0x6', 'O3': '0x1d'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x7527e')
'0', '63', '169', '3', '0')
(
>>> main('0xc9145')
'1', '162', '72', '6', '0')
(
>>> main('0x324836')
'0', '27', '36', '9', '1')
(
>>> main('0xd4ba7')
'1', '211', '165', '6', '0') (
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('691')
'Y1': '1', 'Y2': '1', 'Y3': '172'}
{
>>> main('450')
'Y1': '0', 'Y2': '1', 'Y3': '112'}
{
>>> main('843')
'Y1': '1', 'Y2': '1', 'Y3': '210'}
{
>>> main('716')
'Y1': '0', 'Y2': '0', 'Y3': '179'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Десятичная строка.
Тесты:
>>> main('0x9491c9f54')
'43618478372'
>>> main('0xf0c92de29')
'20259791250'
>>> main('0xbe5c1ba66')
'14738881719'
>>> main('0x3b6f54056')
'48590255787'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main([('M1', 348), ('M2', 25), ('M4', 1006), ('M5', 4)])
'0x13ee0655c'
>>> main([('M1', 465), ('M2', 30), ('M4', 929), ('M5', 3)])
'0xfa1079d1'
>>> main([('M1', 414), ('M2', 13), ('M4', 881), ('M5', 4)])
'0x13710359e'
>>> main([('M1', 82), ('M2', 21), ('M4', 218), ('M5', 4)])
'0x10da05452'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('T1', '0xe9'), ('T2', '0x70'), ('T3', '0x7'), ('T4', '0x1')])
'8876265'
>>> main([('T1', '0x85'), ('T2', '0xd0'), ('T3', '0x74'), ('T4', '0x1')])
'16044165'
>>> main([('T1', '0xeb'), ('T2', '0x38'), ('T3', '0x37'), ('T4', '0x0')])
'3619051'
>>> main([('T1', '0xb2'), ('T2', '0x49'), ('T3', '0x27'), ('T4', '0x0')])
'2574770'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('0x6bf6f764')
'0x17df6ec803'
>>> main('0x307dcdb334')
'0x3bccda6983'
>>> main('0x34b95ae853')
'0x32a5aca7a5'
>>> main('0x22dad19fc3')
'0x357d1b8716'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('4452094816093')
'0xe81e8640056'
>>> main('8866175430805')
'0x10f2c820044'
>>> main('3021958314142')
'0x8501dfc006b'
>>> main('13006714704733')
'0x37706a20072'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0xf3385437d')
'Z1': '0xd', 'Z2': '0x37', 'Z3': '0xa', 'Z4': '0xe1', 'Z5': '0x1e6'}
{
>>> main('0x1088ae624a')
'Z1': '0xa', 'Z2': '0x24', 'Z3': '0x13', 'Z4': '0x2b', 'Z5': '0x211'}
{
>>> main('0x138b91ce71')
'Z1': '0x1', 'Z2': '0xe7', 'Z3': '0xe', 'Z4': '0xe4', 'Z5': '0x271'}
{
>>> main('0x46b461655')
'Z1': '0x5', 'Z2': '0x165', 'Z3': '0x10', 'Z4': '0xd1', 'Z5': '0x8d'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(2480095)
'479', '11', '4')
(
>>> main(3419510)
'374', '6', '6')
(
>>> main(2831797)
'437', '10', '5')
(
>>> main(481212)
'444', '11', '0') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main({'Y1': '0', 'Y2': '367', 'Y4': '28', 'Y5': '599', 'Y6': '2'})
'0xa57e005bc'
>>> main({'Y1': '1', 'Y2': '113', 'Y4': '7', 'Y5': '169', 'Y6': '3'})
'0xca93801c5'
>>> main({'Y1': '3', 'Y2': '127', 'Y4': '0', 'Y5': '704', 'Y6': '1'})
'0x6c00001ff'
>>> main({'Y1': '2', 'Y2': '192', 'Y4': '2', 'Y5': '488', 'Y6': '1'})
'0x5e8100302'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x4a6e18')
'0x18', '0x1', '0x26', '0x9')
(
>>> main('0x7482e7')
'0xe7', '0x0', '0x48', '0xe')
(
>>> main('0x33900a')
'0xa', '0x0', '0x39', '0x6')
(
>>> main('0x91a3c0')
'0x1c0', '0x0', '0x1a', '0x12') (
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('A1', '0x5'), ('A2', '0x36'), ('A3', '0x1'), ('A4', '0x7')])
'16229'
>>> main([('A1', '0xa'), ('A2', '0x13'), ('A3', '0x1'), ('A4', '0x0')])
'1338'
>>> main([('A1', '0xc'), ('A2', '0x19'), ('A3', '0x1'), ('A4', '0x7')])
'15772'
>>> main([('A1', '0x1'), ('A2', '0x6'), ('A3', '0x1'), ('A4', '0x4')])
'9313'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main(202812)
'0x203d2'
>>> main(89264)
'0xb17'
>>> main(142686)
'0x215e3'
>>> main(70717)
'0x43d1'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'V1': '0x9', 'V2': '0x2fb', 'V3': '0xa9', 'V4': '0x1', 'V5': '0x22'})
'2288676793'
>>> main({'V1': '0x3', 'V2': '0x158', 'V3': '0x71', 'V4': '0x6', 'V5': '0x71'})
'7610324355'
>>> main({'V1': '0x3', 'V2': '0x159', 'V3': '0xcd', 'V4': '0x5', 'V5': '0x5a'})
'6064133523'
>>> main({'V1': '0x7', 'V2': '0x335', 'V3': '0x1f', 'V4': '0x3', 'V5': '0x63'})
'6656881495'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('1090')
'W2': '0x0', 'W3': '0x2', 'W4': '0x0', 'W5': '0x4', 'W6': '0x0'}
{
>>> main('23779')
'W2': '0x0', 'W3': '0x3', 'W4': '0x1', 'W5': '0x1c', 'W6': '0x2'}
{
>>> main('15386')
'W2': '0x1', 'W3': '0x0', 'W4': '0x0', 'W5': '0x1c', 'W6': '0x1'}
{
>>> main('102')
'W2': '0x0', 'W3': '0x3', 'W4': '0x0', 'W5': '0x0', 'W6': '0x0'} {
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main(59538)
'C1': '2', 'C2': '137', 'C3': '6', 'C4': '1'}
{
>>> main(113768)
'C1': '8', 'C2': '198', 'C3': '3', 'C4': '3'}
{
>>> main(92811)
'C1': '11', 'C2': '168', 'C3': '6', 'C4': '2'}
{
>>> main(123712)
'C1': '0', 'C2': '52', 'C3': '6', 'C4': '3'} {
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('G1', '0x199'), ('G2', '0x1'), ('G3', '0x0'), ('G4', '0x1'), ('G5', '0x19b')])
'6742937'
>>> main([('G1', '0x12c'), ('G2', '0x1'), ('G3', '0x1'), ('G4', '0x1'), ('G5', '0x3c0')])
'15738668'
>>> main([('G1', '0x1bf'), ('G2', '0x1'), ('G3', '0x1'), ('G4', '0x0'), ('G5', '0x348')])
'13764543'
>>> main([('G1', '0x8'), ('G2', '0x1'), ('G3', '0x6'), ('G4', '0x1'), ('G5', '0x227')])
'9042440'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(239942723)
'J1', '0x43'), ('J2', '0x0'), ('J3', '0x14f'), ('J4', '0x9'), ('J5', '0x1c')]
[(
>>> main(153349233)
'J1', '0x71'), ('J2', '0x0'), ('J3', '0xfb'), ('J4', '0x4'), ('J5', '0x12')]
[(
>>> main(258462270)
'J1', '0x3e'), ('J2', '0x2'), ('J3', '0x1f4'), ('J4', '0xc'), ('J5', '0x1e')]
[(
>>> main(428572342)
'J1', '0xb6'), ('J2', '0x2'), ('J3', '0xdf'), ('J4', '0x1'), ('J5', '0x33')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main({'B1': '7', 'B2': '0', 'B3': '3', 'B4': '175', 'B5': '23'})
'1529783'
>>> main({'B1': '1', 'B2': '1', 'B3': '3', 'B4': '289', 'B5': '91'})
'6000825'
>>> main({'B1': '7', 'B2': '0', 'B3': '6', 'B4': '294', 'B5': '124'})
'8164199'
>>> main({'B1': '5', 'B2': '1', 'B3': '4', 'B4': '155', 'B5': '17'})
'1134029'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Целое.
Выходные данные:
Десятичная строка.
Тесты:
>>> main(30644)
'27767'
>>> main(255708)
'63462'
>>> main(113983)
'249277'
>>> main(75053)
'182565'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: целое.
Выходные данные:
Десятичная строка.Тесты:
>>> main((343, 93, 509, 1, 0))
'66960215'
>>> main((324, 35, 473, 1, 1))
'198788932'
>>> main((253, 23, 192, 1, 2))
'314584829'
>>> main((276, 9, 331, 1, 1))
'189469460'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main([('X1', '298'), ('X2', '1'), ('X3', '6'), ('X4', '17'), ('X5', '1')])
'408362'
>>> main([('X1', '226'), ('X2', '1'), ('X3', '3'), ('X4', '18'), ('X5', '2')])
'675554'
>>> main([('X1', '134'), ('X2', '1'), ('X3', '4'), ('X4', '31'), ('X5', '2')])
'782982'
>>> main([('X1', '356'), ('X2', '1'), ('X3', '0'), ('X4', '12'), ('X5', '1')])
'361316'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Словарь из битовых полей. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main('0x992')
'R1': '0x12', 'R2': '0x0', 'R3': '0x13', 'R4': '0x0'}
{
>>> main('0x3de7')
'R1': '0x27', 'R2': '0x1', 'R3': '0x3b', 'R4': '0x1'}
{
>>> main('0x24a3')
'R1': '0x23', 'R2': '0x0', 'R3': '0x9', 'R4': '0x1'}
{
>>> main('0x2a78')
'R1': '0x38', 'R2': '0x1', 'R3': '0x14', 'R4': '0x1'} {
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('1798336742')
'0x38379b30'
>>> main('1294107446')
'0x41a4d922'
>>> main('1225998216')
'0x1fa62113'
>>> main('677864305')
'0x3195c467'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Шестнадцатиричная строка.
Тесты:
>>> main('2940309753539')
'0x722af61c981'
>>> main('3409425559376')
'0x4b31fa81d19'
>>> main('4521234819509')
'0x4341cdacae9'
>>> main('1103532768012')
'0x6d905860efa'
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: шестнадцатиричная строка.
Выходные данные:
Десятичная строка.Тесты:
>>> main(('0x356', '0xe7', '0x0'))
'60556118'
>>> main(('0x39', '0xb3', '0x4'))
'583794745'
>>> main(('0x3d8', '0xd1', '0x6'))
'860095448'
>>> main(('0x100', '0xb4', '0x1'))
'181403904'
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Шестнадцатиричная строка.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: десятичная строка.
Тесты:
>>> main('0x46070e')
'W2', '14'), ('W3', '70'), ('W4', '0')]
[(
>>> main('0x29d4a14')
'W2', '148'), ('W3', '29'), ('W4', '5')]
[(
>>> main('0x3f6a937')
'W2', '338'), ('W3', '118'), ('W4', '7')]
[(
>>> main('0xf9227e')
'W2', '68'), ('W3', '121'), ('W4', '1')] [(
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Кортеж из битовых полей в порядке от младших бит к старшим. Значения битовых полей имеют тип: десятичная строка.
Выходные данные:
Шестнадцатиричная строка.Тесты:
>>> main(('190', '90', '417'))
'0x1a1b4be'
>>> main(('136', '126', '339'))
'0x153fc88'
>>> main(('130', '14', '47'))
'0x2f1c82'
>>> main(('276', '9', '433'))
'0x1b11314'
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('37402')
34441
>>> main('27507')
23797
>>> main('51830')
40357
>>> main('37669')
51529
Задача №8
Реализовать функцию для декодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Целое.Выходные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: шестнадцатиричная строка.
Тесты:
>>> main(1791)
'K1', '0x3'), ('K2', '0x1'), ('K4', '0x6f')]
[(
>>> main(1366)
'K1', '0x2'), ('K2', '0x1'), ('K4', '0x55')]
[(
>>> main(1888)
'K1', '0x0'), ('K2', '0x0'), ('K4', '0x76')]
[(
>>> main(1290)
'K1', '0x2'), ('K2', '0x0'), ('K4', '0x50')] [(
Задача №8
Реализовать функцию для транскодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции.
Входные данные:
Десятичная строка.
Выходные данные:
Целое.
Тесты:
>>> main('378622053')
218311957
>>> main('362762098')
192648692
>>> main('258295005')
514255444
>>> main('47450382')
97022272
Задача №8
Реализовать функцию для кодирования данных, содержащих битовые поля. В решении необходимо использовать побитовые операции. Неиспользуемые поля результата должны содержать нулевые биты.
Входные данные:
Список из битовых полей в виде пар имя-значение. Значения битовых полей имеют тип: целое.
Выходные данные:
Целое.Тесты:
>>> main([('R2', 13), ('R3', 3), ('R4', 0), ('R5', 205), ('R6', 57)])
15152346
>>> main([('R2', 10), ('R3', 1), ('R4', 0), ('R5', 110), ('R6', 72)])
18987092
>>> main([('R2', 11), ('R3', 7), ('R4', 1), ('R5', 232), ('R6', 31)])
8365014
>>> main([('R2', 22), ('R3', 0), ('R4', 0), ('R5', 186), ('R6', 9)])
2549804