Числа 1) 2101. 2)-2101. 3)F840 1. Получить двоичную форму внутреннего представления целого числа в 2-х...

Тематика Информатика
Уровень 10 - 11 классы
двоичное представление шестнадцатеричное представление восстановление числа целые числа 2 х байтовая ячейка
0

Числа 1) 2101. 2)-2101. 3)F840 1. Получить двоичную форму внутреннего представления целого числа в 2-х байтовой ячейке. 2. Получить шестнадцатеричную форму внутреннего представления целого числа в 2-х байтовой ячейке. 3. По шестнадцатеричной форме внутреннего представления целого числа в 2-х байтовой ячейке восстановить само число

avatar
задан 13 дней назад

2 Ответа

0

  1. Для получения двоичной формы внутреннего представления целого числа в 2-х байтовой ячейке необходимо выполнить перевод числа из десятичной системы счисления в двоичную.

    • Для числа 2101: 2101 = 2^11 + 2^10 + 2^2 + 2^0 = 100000111101
    • Для числа -2101: Для получения двоичного представления отрицательного числа нужно применить дополнительный код. В данном случае, чтобы получить дополнительный код числа 2101, нужно взять дополнительный код для числа 2100 (представленного в двоичной форме как 100000111100) и добавить 1 в младший разряд. Таким образом, -2101 = 011111000011 + 1 = 011111000100
  2. Для получения шестнадцатеричной формы внутреннего представления целого числа в 2-х байтовой ячейке нужно представить двоичное число, полученное в предыдущем пункте, в шестнадцатеричной системе счисления.

    • Для числа 2101: 100000111101 = 100F
    • Для числа -2101: 011111000100 = 7C4
  3. Для восстановления самого числа по шестнадцатеричной форме внутреннего представления целого числа в 2-х байтовой ячейке, нужно выполнить обратное действие - перевести шестнадцатеричное число в двоичное, а затем из двоичного в десятичное.

    • Для числа F840: F840 = 111110000100000 Далее, переводим двоичное число в десятичное: 111110000100000 = 2^14 + 2^13 + 2^12 + 2^11 + 2^10 + 2^5 = 63488

Таким образом, мы можем получить двоичную и шестнадцатеричную формы внутреннего представления целого числа в 2-х байтовой ячейке, а также восстановить само число по его шестнадцатеричному представлению.

avatar
ответил 13 дней назад
0

Чтобы решить эту задачу, необходимо знать, как числа представлены в памяти компьютера. Для целых чисел в 2-байтовой ячейке используются разные системы кодирования, например, прямой, обратный и дополнительный код. Обычно используется дополнительный код (Two's complement), так как он позволяет легко выполнять арифметические операции.

1) Число 2101:

  • Двоичная форма: Чтобы представить положительное число 2101 в двоичном виде, нужно перевести его из десятичной в двоичную систему счисления. Делим число на 2, записывая остатки:

    2101 / 2 = 1050 остаток 1
    1050 / 2 = 525 остаток 0
    525 / 2 = 262 остаток 1
    262 / 2 = 131 остаток 0
    131 / 2 = 65 остаток 1
    65 / 2 = 32 остаток 1
    32 / 2 = 16 остаток 0
    16 / 2 = 8 остаток 0
    8 / 2 = 4 остаток 0
    4 / 2 = 2 остаток 0
    2 / 2 = 1 остаток 0
    1 / 2 = 0 остаток 1
    

    Чтение остатков снизу вверх дает: 100000110101.

    Для 2-байтовой ячейки (16 бит) дополняем нулями слева: 0000100000110101.

  • Шестнадцатеричная форма: Разбиваем двоичное число на группы по 4 бита: 0000 1000 0011 0101. Переводим каждую группу в шестнадцатеричный вид: 0835.

2) Число -2101:

  • Двоичная форма: Для представления отрицательного числа используем дополнительный код. Сначала находим двоичное представление положительного числа 2101: 0000100000110101. Затем инвертируем все биты (меняем 0 на 1 и 1 на 0) и прибавляем 1:

    Инверсия: 1111011111001010, прибавляем 1: 1111011111001011.

  • Шестнадцатеричная форма: Разбиваем двоичное число на группы по 4 бита: 1111 0111 1100 1011. Переводим каждую группу в шестнадцатеричный вид: F7CB.

3) Число F840:

  • Это шестнадцатеричная форма, чтобы восстановить число, нужно сначала перевести её в двоичную форму:

    F840 в двоичной форме: 1111 1000 0100 0000.

  • Проверяем старший бит (знак числа). Он равен 1, значит число отрицательное и представлено в дополнительном коде. Чтобы найти само число, нужно сначала инвертировать все биты и прибавить 1:

    Инверсия: 0000 0111 1011 1111, прибавляем 1: 0000 0111 1100 0000.

  • Переводим полученное двоичное число в десятичное:

    2^8 + 2^7 + 2^6 = 256 + 128 + 64 = 448
    

    Таким образом, число F840 в десятичной системе это -448.

avatar
ответил 13 дней назад

Ваш ответ

Вопросы по теме