1) Один байт = 8 бит, максимальное число 2^8 - 1 = 255, если числа без знака. Для знаковых чисел старший бит отводится под знак числа, следовательно, минимальное число = - 2^7 - 1
= - 127, максимальное число = + 127
2) Число 1607, ячейка двухбайтовая, один бит под знак, следовательно, под число отводится 15 бит, в двоичном представлении 1607(10) = 11001000111(2), дополняем до 16 бит, старший бит - знаковый - нулевой, так как число положительное
= 0000011001000111(2) - это двоичное представление в двухбайтовой ячейке, чтобы получить шестнадцатиричное представление, разбиваем число справа - налево по 4 бита
0000 0110 0100 0111 и записываем в шестнадцатиричном виде
0111(2) = 7(16) 0100(2) = 4(16) 0110(2) =6(16) 0000(2) = 0(16)
1607(16) = 0647(16) или без старшего не значащего нуля = 647(16)
3) для получения дополнительного кода числа, находят обратное число, или инверсию числа,
для этого каждый бит числа изменяют на противоположный, 1 на 0, 0 на 1
105(10) = 1101001(2) - это и есть дополнительный код числа - 105, т.е. дополнительным кодом
числа (- а) будет число а.
Найдем дополнительный код в однобайтовой ячейке числа 105(10) = 01101001(2),
а) находим обратное 01101001(2) ->(обратное) ->10010110(2)
б) дополнительный код-> обратный код + 1 ->(дополнительный)->10010111(2), а это число - 105
потому, что отрицательные числа представляются в дополнительном коде.
Если для числа - 105 найти дополнительный код, то получим число 105
10010111(2)->(дополнительный)->01101000+1->01101001 = 69(16) = 16*6+9 = 96+9 = 105
Оно на всех неправильное ось симетрии должа делить предмет ровно на пополам
B = int(input("b = "))
for a in range(b+1, 501, 2):
x = a*a-b*b
y = 2*a*b
z = a*a+b*b
print('(%d; %d; %d); (a=%d; b=%d); (%.4f; %.4f)' % (x,y,z,a,b,x/z,y/z))
Пример:
<span>b = 10
(21; 220; 221); (a=11; b=10); (0.0950; 0.9955)
(69; 260; 269); (a=13; b=10); (0.2565; 0.9665)
(125; 300; 325); (a=15; b=10); (0.3846; 0.9231)
...
</span><span>(246909; 9940; 247109); (a=497; b=10); (0.9992; 0.0402)
(248901; 9980; 249101); (a=499; b=10); (0.9992; 0.0401)</span>
Самый простой способ решить данную задачу - просто построить таблицу истинности каждого из заданных вариантов и проверить на соответствие.
Сначала приведу таблицы истинности конъюнкции, дизъюнкции и инверсии. Сразу стоит отметить, что приоритет инверсии выше конъюнкции и дизъюнкции, а приоритет конъюнкции выше дизъюнкции. То есть, например, отрицание будет выполнено раньше логического ИЛИ.
Логическое И, конъюнкция (&)
X Y F
0 0 0
0 1 0
1 0 0
1 1 1
Логическое ИЛИ, дизъюнкция (|)
X Y F
0 0 0
0 1 1
1 0 1
1 1 1
Инверсия(¬)
X F
0 1
1 0
Перейдём непосредственно к перебору вариантов:
а) X & Y & ¬ Z
1 1 1 0 - не подходит, 1 И 1=1, 1 И 0=0, а должно быть 1
б) X & Y & Z
1 1 1 1
1 1 0 0 - не подходит, 1 И 1=1, 1 И 0=0, а должно быть 1
в) X | ¬ Y | Z
1 1 1 1
1 1 0 1
1 0 1 1
в) подходит
г) ¬X | Y | ¬Z
1 1 1 1
1 1 0 1
1 0 1 0 - не подходит, так 0 ИЛИ 0=0, 0 ИЛИ 0=0, а нужно 1
Ответ: в)
1)v=1/512 Мбайт=1/512*1024*1024*8 бит=16384 бит
i=16384/4096 бит=4 бит
N=2^4=16 символов
Ответ:16 символов