31.07.2010, 18:06
общий
это ответ
Здравствуйте, angel.nero.
В6. Переменные X, XI, Х2, ХЗ имеют размер - байт, тип - знаковый. В шестнадцатеричной системе счисления X1=1516, Х2=ВС16, X3=A116. Значение выражения Х=(Х1-Х2)*ХЗ в десятичной системе счисления равно___.
Байт равен 8 бит. Первый бит отводится на знак числа, все остальные 7 бит на значение .
01111111
Если на первой позиции стоит 0, то число положительное, если 1, то отрицательное. Максимальное положительное число будет при заполнении семи позиций 1. Это двоичное число 1111111, в десятичной системе счисления равно 127. Поэтому ответ должен быть в пределах от –128 до 127.
Переведем каждое число Х1, Х2, Х3 из шестнадцатеричной системы счисления в десятичную.
Х1 = 1516 = 1 * 161 + 5 * 160 = 21
Х2 = BC16 = 11 * 161 + 12 * 160 = 188
Х3 = A116 = 10 * 161 + 1 * 160 = 161
Х= (Х1-Х2)*Х3 = (21-188)*161 = -26887
Число -26887 не находится в пределах –128..127. Делим данное число на 256, результат округляем до целого значения в соответствии с правилами округления, т.е. число -105,02734375 округляем до –105. Записываем уравнение, откуда находим х.
-26887=-105*256+х
-26887=-26880+х
х=-7
Ответ: х=-7.
B8. Оператор алгоритмического языка BASIC
PRINT (15 EQV 51) OR (NOT (15 IMP 85) XOR 51) выведет число, равное___.
Двоичные значения переменных представляют собой полный набор логических входных переменных следующей логической функции:
R = (15 EQV 51) OR (NOT (15 IMP 85) XOR 51).
Запишем 15, 51 и 85 в двоичном виде, это, соответственно, будут двоичные числа 00001111, 00110011 и 01010101.
Для таблицы обозначим их буквами a, b, с (будут в шапке таблицы)
Обозначим порядок действий (номера будут в шапке таблицы истинности):
1.EQV 2.IMP 3.NOT 4.XOR 5.OR
Построим таблицу истинности для данной функции:
abc12345
00011001
00111001
01001011
01101011
10000111
10101000
11010101
11111011
Итак, что мы получили:
1. 15 EQV 51 = -61 = 11000011 (двоичный дополнительный код, т.е. 61 = 001111012, инвертируем 11000010, плюс 1)
2. 15 IMP 85 = -11 = 11110101 ( двоичный дополнительный код, т.е. 11 = 000010112, инвертируем 11110100, плюс 1)
3. NOT (15 IMP 85) = 10 = 10102 (положительное, прямой код)
4. NOT (15 IMP 85) XOR 51 = 57 = 1110012 (положительное, прямой код)
5. (15 EQV 51) OR (NOT (15 IMP 85) XOR 51) = -5 = 11111011 (двоичный дополнительный код - 000001012 инвертировано 11111010, плюс 1)
Ответ: -5