Костя недавно изучил побитовые операции. ** прошлом уроке он писал контрольную по этой...

0 голосов
30 просмотров

Костя недавно изучил побитовые операции. На прошлом уроке он писал контрольную по этой теме, но не уверен, что не перепутал порядок выполнения операций. Решите пример, который достался Косте и скажите ему правильный ответ.
31^(11 & 7 | 11 & !7) ^ 21 | (7 & 31 | (11 & 7 | !11 & 7) ) & (25 | 25 & 31) ^ 21
В качестве ответа укажите одно целое число в десятичной системе счисления — значение Костиного выражения.
Напомним приоритет операций:
! инверсия значения
& побитовое И
| побитовое ИЛИ, ^ исключающее ИЛИ


Информатика (77 баллов) | 30 просмотров
Дан 1 ответ
0 голосов
Правильный ответ

Приоритеты операций: 
! инверсия значения
& побитовое И
^ исключающее ИЛИ
| побитовое ИЛИ

7(10) = 00111(2)
11(10) = 01011(2)
21(10) = 10101(2)
25(10) = 11001(2)
31(10) = 11111(2)

11 & 7 = 01011 & 00111 = 00011
11 & !7 = 01011 & 11000 = 01000
11 & 7 | 11 & !7 = 00011 | 01000 = 01011

11 & 7 = 01011 & 00111 = 00011
!11 & 7 = 10100 & 00111 = 00100
11 & 7 | !11 & 7 = 00011 | 00100 = 00111

7 & 31 = 00111 & 11111 = 00111
(7 & 31 | (11 & 7 | !11 & 7)) = 00111 | 00111 = 00111

25 & 31 = 11001 & 11111 = 11001
25 | 25 & 31 = 11001 | 11001 = 11001

(7 & 31 | (11 & 7 | !11 & 7)) & (25 | 25 & 31) = 00111 & 11001 = 00001

31^(11 & 7 | 11 & !7) = 11111 ^ 01011 = 10100
31^(11 & 7 | 11 & !7) ^ 21 = 10100 ^ 10101 = 00001

(7 & 31 | (11 & 7 | !11 & 7)) & (25 | 25 & 31) ^ 21 = 00001 ^ 10101 = 10100

31^(11 & 7 | 11 & !7) ^ 21 | (7 & 31 | (11 & 7 | !11 & 7)) & (25 | 25 & 31) ^ 21 =
00001 | 10100 = 10101

10101(2) = 21(10)

(194k баллов)