дано:
число в десятичном формате -200110
найти:
представление числа в 2-байтовом целочисленном формате и вывод в шестнадцатеричном виде
решение:
1. Преобразуем число 200110 в двоичный формат.
- 200110(10) делим на 2:
- 200110 / 2 = 100055, остаток 0
- 100055 / 2 = 50027, остаток 1
- 50027 / 2 = 25013, остаток 1
- 25013 / 2 = 12506, остаток 1
- 12506 / 2 = 6253, остаток 0
- 6253 / 2 = 3126, остаток 1
- 3126 / 2 = 1563, остаток 0
- 1563 / 2 = 781, остаток 1
- 781 / 2 = 390, остаток 1
- 390 / 2 = 195, остаток 0
- 195 / 2 = 97, остаток 1
- 97 / 2 = 48, остаток 1
- 48 / 2 = 24, остаток 0
- 24 / 2 = 12, остаток 0
- 12 / 2 = 6, остаток 0
- 6 / 2 = 3, остаток 0
- 3 / 2 = 1, остаток 1
- 1 / 2 = 0, остаток 1
Собираем остатки с конца:
200110(10) = 1100001101111110(2).
2. Теперь полученное значение для -200110:
- Поскольку число отрицательное, используем представление со знаком в формате двухкомплементарного представления.
- Сначала инвертируем биты:
1100001101111110 → 0011110010000001.
- Затем добавляем 1 к младшему биту:
0011110010000001
+ 0000000000000001
------------------
0011110010000010.
3. Теперь запишем результат в 2 байта (16 бит):
- 0011110010000010.
4. Переведем полученное двоичное значение в шестнадцатеричный формат:
- Разделим на группы по 4 бита:
0011 1100 1000 0010.
- Преобразуем каждую группу:
- 0011 = 3
- 1100 = C
- 1000 = 8
- 0010 = 2
Объединяем полученные значения:
3C82(16).
ответ:
3C82