В13

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

В-13


Значение переменной D, вычисляемое в программе, написанной на языке BASIC.

D=0;

M=1;

FOR A=-1 TO 0

FOR B=-1 TO 0

FOR C=-1 TO 0

D=D-( NOT(A AND B) EQV (B IMP (A OR C)))*M

NEXT C

NEXT B

NEXT A

PRINT “D=”, D

Равно, _______

Решение:

Программа представляет собой три вложенных друг в друга цикла. Параметры циклов А, В, С изменяются от – 1 до 0 с шагов 1. так как при каждом повторении значение переменной М удваивается, то в М вычисляются степени двойки, начиная с нулевой степени (М=1). При вычислении Д необходимо вычислить коэффициент при М. Логические операции над числовыми операндами производятся побитно. При этом результат интерпретируются как число со знаком. Значения переменных А, В, С это -1 или 0. В памяти -1 будет представляться в дополнительном коде следующим образом: 11111112, число 0 в памяти будет представлено как 000000002 . Таким образом, у каждой из переменных А, В, C все разряды либо содержат 0 либо 1.

Найдем значение логического выражения:

F=NOT(A AND B) EQV (B IMP (A OR C));

Test12 2006 B13.bmp

Значение переменной D является результатом перевода двоичного числа 110111002 в десятичную систему счисления.

110111002 =128+64+16+8+4=22010

Ответ: D=220.