2)
1³1²1¹1⁰.1⁻¹1⁻²₂ * 101.101₂ = *
= 15.75 * 5.625 = 88.593
111.11₂ : 11.101₂ = :
= 7.75 : 3.625 = 2.137
Надеюсь с переводом понятно, 3 сделаю сразу.
111.11₂ * 11.111₂ = 7.75 * 3.875 = 30.031
5)
155 = Чтобы из десятичной перевести в двоичную, нужно делить на 2.
Смотри фото
0.35 = Для перевода дробной части числа последовательно умножаем дробную часть на основание 2
0.35 * 2 = 0.7
0.7 * 2 = 1.4
0.4 * 2 = 0.8
и записываем целую часть: (Сверху вниз)
010
В итоге: 155.35₁₀ = 10011011.010₂
Дальше сделаю сразу.
256.91₁₀ = 100000000.111₂
162.19₁₀ = 10100010.001₂
6)
у 16 счет немного другой: 0123456789ABCDEF (в 10)
A = 10, B = 11, C = 12, D = 13, E = 14, F = 15
100011.101₂ =
теперь 35 (целая часть) : 16 (потому что надо в шестнадцатеричную систему)
смотри фото
Получаем:
23₁₆ + 0.A₁₆ = 23.A₁₆
100011.101.₂ = 23.A₁₆
Дальше сразу.
111000.11₂ = 38.С₁₆
110011.1011₂ = 33.В₁₆
7)
Сначала переведем в десятичную:
A³C²3¹F⁰.0⁻¹9⁻²₁₆ =
Переводим 44095.03515625₁₀ в двоичную:
Большое число, я сделаю онлайн, смотри фото
44095₁₀(целая часть) = 1010110000111111₂
0.03515625₁₀(дробная часть) = 0.00001001₂
Итого:
1010110000111111₂ + 0.00001001₂ = 1010110000111111.00001001₂
AC3F.09₁₆ = 1010110000111111.00001001₂
Дальше сразу.
ACF.71₁₆ = 101011001111.01110001₂
2BF.A19₁₆ = 1010111111.10100001100₂
program xxx;
var i, j, k, n, p, s : integer;
a : array [1..20] of integer;
begin
write ('введите количество инверсий -');
readln(k);
write ('введите количество ламп -');
readln(n);
for i:=1 to n do
a[i]:=0;
for i:=1 to k do
begin
write ('введите инверсию P-');
readln(p);
j:=p;
while j<=n do
begin
if a[j]=0 then a[j]:=1 else a[j]:=0;
j:=j+p
end
end;
s:=0;
for i:=1 to n do
if a[i]=1 then s:=s+1;
write ('Ламп горит -', s);
readln
end.
ответ на задачу.
Объяснение:
32 бита на 4 млрд пикселей.