Четырехзначное число в расширенной записи имеет вид
Известно, что первая и последняя цифры одинаковы, отсюда d=a. Сумма цифр числа равна 16, т.е. 2a+b+c=16 (1) Если число делится на 2, то оно четное, следовательно "a" может равняться 2, 4, 6, 8. (2) Нулю оно равняться не может, поскольку тогда число станет трехзначным. Если четырехзначное число делится на 11, то модуль разности между суммами цифр, стоящих на четных и нечетных местах должна делиться на 11, т.е. |(a+c)-(a+b)|= |(c-b| делится на 11. Но разность двух однозначных чисел не может превышать 9, поэтому если она делится на 11, то она должна быть равна нулю. Но тогда с=b и число имеет вид 1000a+100b+10b+a. А уравнение (1) будет выглядеть как 2a+b+b=16; 2a+2b=16; b=8-a (3) C учетом (2) можно из (3) получить 4 решения: a=2, b=6 a=4, b=4 a=6, b=2 a=8, b=0 И это породит 4 возможных кода: 2662, 4444, 6226, 8008.
Восьмибитовая ячейка - это байт. В байте стандартно можно представить числа в диапазоне от -128 до 127; при этом положительные числа представляются в прямом коде. а отрицательные - в модифицированном. Самый старший (левый, он же - седьмой) бит используется для знака (0 - плюс, 1 - минус), а остальные семь (с нумерацией справа налево от 0 до 6) - для хранения двоичного представления числа. Модифицированный код получается из прямого путем инвертирования бит (0 заменяется на 1, 1 заменяется на 0) - при этом получаем дополнительный код, - а затем прибавлеем к результату 1 в младшем (правом) разряде. а) 56(10)=111000(2) и отображается в байте как 0 0111000 (знаковый бит отделен условно) б) -56(10)=-111000(2), 1 0111000 в прямом коде, 1 1000111 в дополнительном коде, 1 1001000 в модифицированном коде. в) 127(10)=1111111(2) , 0 1111111 в байте г) -127(10)=-111111(2), 1 1111111 в прямом коде, 1 0000000 в дополнительном коде, 1 0000001 в модифицированном коде.
Известно, что первая и последняя цифры одинаковы, отсюда d=a.
Сумма цифр числа равна 16, т.е. 2a+b+c=16 (1)
Если число делится на 2, то оно четное, следовательно "a" может равняться
2, 4, 6, 8. (2)
Нулю оно равняться не может, поскольку тогда число станет трехзначным.
Если четырехзначное число делится на 11, то модуль разности между суммами цифр, стоящих на четных и нечетных местах должна делиться на 11, т.е. |(a+c)-(a+b)|= |(c-b| делится на 11. Но разность двух однозначных чисел не может превышать 9, поэтому если она делится на 11, то она должна быть равна нулю. Но тогда с=b и число имеет вид
1000a+100b+10b+a.
А уравнение (1) будет выглядеть как
2a+b+b=16; 2a+2b=16; b=8-a (3)
C учетом (2) можно из (3) получить 4 решения:
a=2, b=6
a=4, b=4
a=6, b=2
a=8, b=0
И это породит 4 возможных кода: 2662, 4444, 6226, 8008.
Модифицированный код получается из прямого путем инвертирования бит (0 заменяется на 1, 1 заменяется на 0) - при этом получаем дополнительный код, - а затем прибавлеем к результату 1 в младшем (правом) разряде.
а) 56(10)=111000(2) и отображается в байте как 0 0111000 (знаковый бит отделен условно)
б) -56(10)=-111000(2), 1 0111000 в прямом коде, 1 1000111 в дополнительном коде, 1 1001000 в модифицированном коде.
в) 127(10)=1111111(2) , 0 1111111 в байте
г) -127(10)=-111111(2), 1 1111111 в прямом коде, 1 0000000 в дополнительном коде, 1 0000001 в модифицированном коде.