Обратный код от A это A' = 2^8 - 1 - A = Const - A Схема вычитания путем суммы обратных кодов справедлива т.к.: (A - B)' = A' + B'' = (Const - A) + (Const - (Const - B)) = Const - (A - B)
самый левый бит - это бит знака. если там 1 - то число отрицательное. Например, пусть дан обратный код: F' = 0010 1010, инвертируем биты, получаем: F = 1101 0101 - смотрим на левую цифру (старший разряд) он равен 1, значит приписываем минус: F = - (0101 0101) = -85
Маловероятно, что две единички на 3-й и 4-й позициях обе значат А (мало слов, где есть две А подряд). Значит, это либо буква Й (11), либо АЛ (1-13)
. . Й . . . или . . АЛ. . .
Две первые цифры (26) могут значить либо БЕ, либо Ш:
БЕЙ . . . или БЕАЛ . . или ШЙ . . . или ШАЛ . . .
Второй и третий варианты отбрасываем, а БЕЙ... и ШАЛ... пока оставим.
После БЕЙ идут цифры 3126. Их можно расшифровать как:
3-1-2-6 ВАБЕ
31-2-6 ЭБЕ
3-1-26 ВАШ
3-12-6 ВКЕ
31-26 ЭШ
Приставим БЕЙ спереди к каждому варианту:
БЕЙВАБЕ, БЕЙЭБЕ, БЕЙВАШ, БЕЙВКЕ, БЕЙЭШ - не имеют смысла
Рассмотрим вариант ШАЛ . . . Цифры 126 после него могут значить:
1-2-6 АБЕ
12-6 КЕ
1-26 АШ
Присавим эти варианты к ШАЛ и получим одно осмысленное слово ШАЛАШ, имя существительное, как и требуестя в условии.
ОТвет: ШАЛАШ
Схема вычитания путем суммы обратных кодов справедлива т.к.:
(A - B)' = A' + B'' = (Const - A) + (Const - (Const - B)) = Const - (A - B)
самый левый бит - это бит знака. если там 1 - то число отрицательное. Например, пусть дан обратный код:
F' = 0010 1010, инвертируем биты, получаем:
F = 1101 0101 - смотрим на левую цифру (старший разряд) он равен 1, значит приписываем минус:
F = - (0101 0101) = -85
а)
19' = (0001 0011)' = 1110 1100
14' = (0000 1110)' = 1111 0001
F' = 19 - 14 = 19' + 14'' = 19' + 14 =
1110 1100 +
0000 1110 =
1111 1010
F = F'' = (1111 1010)' = 0000 0101 = 5
б) F' = 19' + 43''=
1110 1100 +
0010 1011 =
0101 0111 (тут переполнение)
F = 110 1000 = -010 1000 = -24
в) F' = 43 - 25 = 43' + 25'' =
1101 0100 +
0001 1001 =
1110 1101
F = F'' = (1110 1101)' = 0001 0010 = 18