Less2014
?>

Выполните вычитания. обычным и в дополнительном коде, переведя 1. предварительно десятичные числа в двоичные: а) 456 - 112 б) 234 -12 в) 345 -232 г) 456 - 78 д) 567 - 109 е) 67 - 45 2. выполните действия: a. 110010+11, 01 b. 1111001-1101 c. 10101, 1*11 d. 10101110: 101

Информатика

Ответы

yana2211
Там целая история... проще на калькуляторе, а если так то приравнивая к десятичной системе счисления, выбором остатков.. .
Вычитание двоичных чисел. Вычитать числа, будем также столбиком и общее правило тоже, что и для десятичных чисел, вычитание выполняется поразрядно и если в разряде не хватает единицы, то она занимается в старшем. Решим следующий пример:
1101
-
110
=
111

Первый разряд. 1 - 0 =1. Записываем 1.

Второй разряд 0 -1. Не хватает единицы. Занимаем её в старшем разряде. Единица из старшего разряда переходит в младший, как две единицы (потому что старший разряд представляется двойкой большей степени ) 2-1 =1. Записываем 1.

Третий разряд. Единицу этого разряда мы занимали, поэтому сейчас в разряде 0 и есть необходимость занять единицу старшего разряда. 2-1 =1. Записываем 1.

Проверим результат в десятичной системе

1101 - 110 = 13 - 6 = 7 (111) Верное равенство.

Еще один интересный выполнения вычитания связан с понятием дополнительного кода, который позволяет свести вычитание к сложению. Получается число в дополнительном коде исключительно просто, берём число, заменяем нули на единицы, единицы наоборот заменяем на нули и к младшему разряду добавляем единицу. Например, 10010, в дополнительном коде будет 011011.

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

Пример: 34 - 22 = 12

Запишем этот пример в двоичном виде. 100010 - 10110 = 1100

Дополнительный код числа 10110 будет такой

01001 + 00001 = 01010. Тогда исходный пример можно заменить сложением так 100010 + 01010 = 101100 Далее необходимо отбросить одну единицу в старшем разряде. Если это сделать то, получим 001100. Отбросим незначащие нули и получим 1100, то есть пример решён правильно
dinadumno2114
Для решения примера вспоминаем, что при переходе от шестнадцатиричной системы счисления к двоичной достаточно заменить каждую шестнадцатиричную цифру четырьмя двоичными (тетрадой).
Предлагаемое в условии число представляет собой десятичную дробь, т.е. имеет целую и дробную части. Для целой части незначащими будут левые нули и мы будем искать их в первой тетраде. Для дробной части незначащие нули - последние и мы будем их искать в последней тетраде.
Первая тетрада - представление 1(16)=0001(2). Левые три нуля незначащие и их удаляем, остается 1. Последняя тетрада - представление Е(16)=1110(2). Тут один незначащий ноль - правый, остается 111.. Остальные тетрады переписываем без изменения.
12АС,6Е(16)=1 0010 1010 1100 , 0110 111 (2) 
Считаем количество нулей в записи: 9. Это и есть ответ.
Комментарии  Отметить нарушение
sokolowskayaa
Заданная уравнением прямая всегда будет гипотенузой прямоугольного треугольника, а его прямой угол всегда будет лежать в точке пересечения осей координат. Таким образом, размещение гипотенузы всегда будет определять четверть, в которой находится треугольник.
Гипотенуза пересекает ось Х в точке с координатами (х1; 0), а ось Y - в точке с координатами (0;y2). Найдем эти координаты, считая коэффициенты a и b в уравнении прямой заданными.
y=ax+b \\ y_1=ax_1+b; \ y_1=0 \to x_1=- \frac{b}{a} \\ y_2=ax_2+b; \ x_2=0 \to y_2=b
Теперь можно определить номера четвертей n, в которых располагается гипотенуза.
n=\begin {cases} 1, \ a<0, \, b0 \\ 2, \ a0, \, b0 \\ 3, \ a<0, \, b<0 \\ 4, \ a0, \, b<0 \end {cases}

var
  a, b: integer;
  f: Text;

begin
  Assign(f, 'input.txt');
  Reset(f);
  Readln(f, a, b);
  Close(f);
  Assign(f, 'output.txt');
  Rewrite(f);
  if a < 0 then
    if b < 0 then Writeln(f, '3') else Writeln(f, '1')
  else
  if b < 0 then Writeln(f, '4') else Writeln(f, '2');
  Close(f)
end.

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

Выполните вычитания. обычным и в дополнительном коде, переведя 1. предварительно десятичные числа в двоичные: а) 456 - 112 б) 234 -12 в) 345 -232 г) 456 - 78 д) 567 - 109 е) 67 - 45 2. выполните действия: a. 110010+11, 01 b. 1111001-1101 c. 10101, 1*11 d. 10101110: 101
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

Galkin683
ERodina1
Tatyana-Sergeevna108
uvarovig
TSKaraulova
krisrespect
Veselova
ПетросовичЗаславский
Arsen-araqelyan20164
Bi-1704
gallush9
Kaccak8778
moonligh3560
appbiznessm
svo1961