Домашние задания: Информатика

Информатика система счисления

Представить число (-182) как структуру поля двоично-десятичного упакованного формата
Двоично-десятичный упакованный - это BCD, что ли?
Так там всё просто. Каждая десятичная цифра - это четвёрка битов от 0000 до 1001. Остальные 6 комбинаций бит не используются цифрами, но используются для представления знака. В байте хранятся две цифры, старшая тетрада (4 бита, полубайт) - это старшая цифра. Самый младший полубайт - это знак, который в разных архитектурах кодировался по-разному.
 Код для       +    -
Стандарт 1100 1101
Допустимы 1010 1011
1110
IBM S/360 1010 1011
Берроуз все 1101
Беззнаковый 1111
А комбинация 1111 обычно зарезервирована под беззнаковое значение.

Цифры отрицательных чисел кодируются либо прямым кодом, либо дополнительным (младшая цифра - относительно 10, последние - относительно 9).

Если опираться на стандарт и прямой код, то запись будет следующая
 10-тичная запись: -182
Полубайты BCD в десятичном представлении: 1 8 2 -
Полубайты BCD в двоичном представлении: 0001 1000 0010 1101
(от старшего к младшему)

Байтовая запись:
В двоичном представлении: 00011000 00101101
В шестнадцатеричном представлении: 18 2D
Для хранения 3-х цифр и знака, таким образом, используется 2 полностью заполненных байта.

Байт со старшими цифрами BCD хранится по наименьшему адресу памяти, независимо от архитектуры машины (Big Endian/Little Endian).
♣♥ Joker ♣♥ ♣♥ ♥♣
♣♥ Joker ♣♥ ♣♥ ♥♣
87 571
Лучший ответ
Число (-182) можно представить в структуре поля двоично-десятичного упакованного формата следующим образом:

-18210 = 11101010102

Структура поля двоично-десятичного упакованного формата используется для хранения десятичных чисел с точностью до 34 знаков после запятой в двоичной форме. Он представляет собой байтовый массив, каждый байт которого содержит две цифры десятичного числа. Первый бит каждого байта обозначает знак числа (0 - положительное, 1 - отрицательное).

В примере выше число (-182) было представлено в виде байтового массива из двух байтов: 11101010 и 10. Первый бит первого байта (1) обозначает, что число отрицательное, а остальные цифры (110 1010) представляют само число (-182) в десятичной форме. Второй байт (10) является зап
♣♥ Joker ♣♥ ♣♥ ♥♣ Первый бит каждого байта используется под знак? И как же будут кодироваться числа от 80 до 99, в таком случае? Ведь у них старший бит старшей тетрады как раз равен единице.