сехун2
18.09.2022 13:15

Задание 6 сделайте очень сильно нужно ( с объяснением ) решите сегодня ( и что бы учитель не знал что я решил через интернет ФАЙЛ ПРИКРЕПЛЕН ПОЖ


Задание 6 сделайте очень сильно нужно ( с объяснением ) решите сегодня ( и что бы учитель не знал чт

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Hotaru385
22.05.2022 02:01

 Преобразование числа из прямого кода в дополнительный осуществляется так:

 

 Если число, записанное в прямом коде, положительное, то к нему дописывается старший (знаковый) разряд, равный 0, и на этом преобразование заканчивается;
Если число, записанное в прямом коде, отрицательное, то все разряды числа инвертируются, а к результату прибавляется 1. К получившемуся числу дописывается старший (знаковый) разряд, равный 1. 

 

1) Записываем наше число в прямом(обычном двоичном коде в 16-разрядном представлении)

  

 

-7  в десятичной = 0000000000000111 - нули у нас впереди так как сетка 16 -разрядная   

 

 

 

 2) Инвертируем все разряды числа: 1111111111111000

 

 

3) Прибавляем к этому числу 1:  1111111111111001

 

 

4) Старший знаковый разряд у нас уже равен 1 следовательно число -7  в 10-ой в  дополнительном коде:    1111110100111010

 

 

 

0,0(0 оценок)
Ответ:
Khamovi
15.04.2021 03:02

4)Число 1011112 перевести в восьмеричную систему счисления

 

function Pow(a,x:integer):integer;
var
 P, i :integer;
begin
  if x = 0 then
    Pow := 1
  else
  begin
    P := 1;
    for i := 1 to x do
      P := P * a;
    Pow := P;
  end;
end;

 

var
  count, c, r:integer;
begin
 count := 0;
 r := 0;
 c := 101111;
 while c > 0 do
 begin
   r := r + (c mod 10) * Pow(2, count);
   inc(count);
   c := c div 10;
 end;
 writeln('R = ', r);
end.

 

 

 

5) Выполните умножение чисел    1112   и   1112

 

 

function Pow(a,x:integer):integer;
var
 P, i :integer;
begin
  if x = 0 then
    Pow := 1
  else
  begin
    P := 1;
    for i := 1 to x do
      P := P * a;
    Pow := P;
  end;
end;

function Summ(a, b:integer):integer;
var
  r, t, count:integer;
begin
  count := 0;
  r := 0;
  t := 0;
  while (a > 0) or (b > 0) do
  begin
   r := r + (((a mod 2) + (b mod 2) + t) mod 2) * Pow (10, count);
   inc(count);
   t := (a mod 2 + b mod 2 + t) div 2;
   a := a div 10;
   b := b div 10;
  end;
  r := r + t * Pow(10, count);
  Summ := r;
end;

var
  A,B , buff, count, r:integer;
begin
  count := 0;
  r := 0;
  A := 111;
  B := 111;
  buff := B;
  while Buff > 0 do
  begin
    r := Summ(r, A * (Buff mod 10) * Pow(10, count));
    Buff := Buff div 10;
    inc(count);
  end;
  writeln('R = ', r);
end.

 

 

2) Определить количество двоичных разрядов достаточных для кодирования 510 различных состояний?

 

 

function Pow(a,x:integer):integer;
var
 P, i :integer;
begin
  if x = 0 then
    Pow := 1
  else
  begin
    P := 1;
    for i := 1 to x do
      P := P * a;
    Pow := P;
  end;
end;

var
  N, count :integer;
begin
  count := 1;
  write('N = ');
  Readln(N);
  N := abs(N);
  while (Pow(2, count) < N) do
    inc(count);
  writeln('Count = ', count);
  readln;
end.

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота