В6

Материал из Saratov FIO Wiki
Перейти к: навигация, поиск

B6. Переменные X, X1, X2, X3 имеют размер – байт, тип - знаковый. В 16-тиричной системе счисления X1 = A316,X2 = 7E16, X3=B116' Значение выражения X = (X1-X2)*X3 в 10 - ричной системе счисления равно __-107__

Решение: Переведем X1, X2, X3 в двоичную систему счисления

X1 = A316=10100011 X2 = 7E16=1111110 X3 = B116=10110001

По условию все переменные - восьмибитовые знаковые,т.е. представляют число в дополнительном коде.

Запишем числа в дополнительном коде: X1 = A316=01011101 X2 = 7E 16=00000001 X3 = B116=01001111

Число Х2 записываем в дополнительном коде - инвертируем все двоичные разряды, затем к младшему разряду прибавляем 1 – получаем 00000001+ 1 = 00000010 Выполняем действия: (X1-X2)

В дополнительном коде это будет поразрядное сложение двоичных чисел: 10100011 + 00000010= 1010 0101

X3 = 01001111

01001111* 1010 0101= 11001011101011– оставляем только последние 8 разрядов и получаем Х = 11101011

Так как мы работаем в дополнительных кодах, то старший разряд имеет вес -27 (т.к. первый разряд знаковый, он равен 1, что соответствует знаку /-/) и 11101011= -27+1*26+0*25+...+1*2+1= -107

Ответ: -107