В
Все
Б
Биология
Б
Беларуская мова
У
Українська мова
А
Алгебра
Р
Русский язык
О
ОБЖ
И
История
Ф
Физика
Қ
Қазақ тiлi
О
Окружающий мир
Э
Экономика
Н
Немецкий язык
Х
Химия
П
Право
П
Психология
Д
Другие предметы
Л
Литература
Г
География
Ф
Французский язык
М
Математика
М
Музыка
А
Английский язык
М
МХК
У
Українська література
И
Информатика
О
Обществознание
Г
Геометрия
naoimiiwsvb2
naoimiiwsvb2
28.02.2022 21:32 •  Информатика

Информатика Задание

1. Определить и записать тип вычислительного процесса.

2. Блок-схема.

3. Код программы.

4. Результаты вычислений.

Ввести с клавиатуры два целых числа. Наименьшее их них обнулить, а в случае их равенства – обнулить оба числа

Показать ответ
Ответ:
Anrehah
Anrehah
16.02.2021 07:17
1)  Один байт = 8 бит, максимальное число 2^8 - 1 = 255, если числа без знака.  Для знаковых чисел старший бит отводится под знак числа, следовательно, минимальное число = - 2^7 - 1
 = - 127,  максимальное число = + 127
2)  Число 1607, ячейка двухбайтовая, один бит под знак, следовательно, под число отводится 15 бит,  в двоичном представлении 1607(10) = 11001000111(2), дополняем до 16 бит, старший бит - знаковый - нулевой, так как число положительное
= 0000011001000111(2) - это двоичное представление в двухбайтовой ячейке, чтобы получить шестнадцатиричное представление, разбиваем число справа - налево по 4 бита
0000  0110  0100  0111  и записываем в шестнадцатиричном виде 
0111(2) = 7(16)   0100(2) = 4(16)   0110(2) =6(16)   0000(2) = 0(16)
1607(16) = 0647(16) или без старшего не значащего нуля  = 647(16)
3) для получения дополнительного кода числа, находят обратное число, или инверсию числа,
для этого каждый бит числа изменяют на противоположный, 1 на 0, 0 на 1
105(10) = 1101001(2) - это и есть дополнительный код числа - 105, т.е. дополнительным кодом
числа (- а)   будет число а.
Найдем дополнительный код в однобайтовой ячейке числа 105(10) = 01101001(2),
а) находим обратное  01101001(2)  ->(обратное) ->10010110(2)
б) дополнительный код-> обратный код + 1 ->(дополнительный)->10010111(2), а это число - 105
потому, что отрицательные числа представляются в дополнительном коде.
Если для числа - 105 найти дополнительный код, то получим число 105
10010111(2)->(дополнительный)->01101000+1->01101001 = 69(16) = 16*6+9 = 96+9 = 105
0,0(0 оценок)
Ответ:
oblasovsema
oblasovsema
03.01.2020 14:43

/* memsegments.c */

#include <stdio.h>

#include <stdlib.h>

#include <string.h>

typedef struct mem

{

   char text[100];

   int *p;

} mem;

int cmp_by_address(const void *, const void *);

void print_struct_array(mem *, size_t);

int init_global_var = 10;        /* Initialized global variable */

int global_var;                  /* Uninitialized global variable */

static int init_static_var = 20; /* Initialized static variable in global scope */

static int static_var;           /* Uninitialized static variable in global scope */

int main(int argc, char **argv, char **envp)

{

   static int init_static_local_var = 30;   /* Initialized static local variable */

   static int static_local_var;             /* Uninitialized static local variable */

   int init_local_var = 40;                 /* Initialized local variable */

   int local_var;                           /* Uninitialized local variable */

   int *dynamic_var = (int*)malloc(sizeof(int));  /* Dynamic variable */

   mem structs[] =

   {

       {"Global variable (initialized)", &init_global_var},

       {"Global variable (uninitialized)", &global_var},

       {"Static variable (in global scope, initialized)", &init_static_var},

       {"Static variable (in global scope, uninitialized)", &static_var},

       {"Static variable (in local scope, initialized)", &init_static_local_var},

       {"Static variable (in local scope, uninitialized)", &static_local_var },

       {"Function (code)", (int*)&main },

       {"Environment variable", (int*)&envp[0] },

       {"Local variable (initialized)", &init_local_var },

       {"Local variable (uninitialized)", &local_var },

       {"Dynamic variable", dynamic_var },

   };

   size_t len = sizeof(structs) / sizeof(mem);

   qsort(structs, len, sizeof(mem), cmp_by_address);

   print_struct_array(structs, len);

   free(dynamic_var);

   return 0;

}

int cmp_by_address(const void *a, const void *b)

{

   mem *ma = (mem *)a;

   mem *mb = (mem *)b;

   if ((unsigned)ma->p > (unsigned)mb->p)

       return -1;

   else if ((unsigned)ma->p < (unsigned)mb->p)

       return 1;

   else

       return 0;

}

/* Example struct array printing function */

void print_struct_array(mem *array, size_t len)

{

   size_t i;

   for(i=0; i<len; i++)

       printf("%-50s:\t%p\n", array[i].text, array[i].p);

}

В результате получим:

Environment variable                              :     0xbff52ee0

Local variable (uninitialized)                    :     0xbff529ac

Local variable (initialized)                      :     0xbff529a8

Dynamic variable                                  :     0x871c008

Global variable (uninitialized)                   :     0x804a044

Static variable (in local scope, uninitialized)   :     0x804a040

Static variable (in global scope, uninitialized)  :     0x804a03c

Static variable (in local scope, initialized)     :     0x804a034

Static variable (in global scope, initialized)    :     0x804a030

Global variable (initialized)                     :     0x804a02c

Function (code)                                   :     0x80484ad

Утилита size показывает размер разделов и общий размер для объектных файлов или архивов. Так, для memsegments.o получим:

$ size memsegments.o

  text    data     bss     dec     hex filename

   745      12       8     765     2fd memsegments.o

Объяснение:

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