Теоретические основы информатики

Представление положительных чисел в знаковых целых типах

Целые положительные числа можно представлять и в знаковых типах данных. В них самый левый разряд отводится на запись знака числа (0 — для положительных чисел и 1 — для отрицательных), остальные разряды заняты его двоичным представлением (младший разряд — в самом правом бите).

Представление числа в привычной форме «знак» — «величина», при котором старший разряд ячейки отводится под знак, а остальные разряды ячейки под запись числа, называется прямым кодом.

При наличии одинакового числа разрядов в знаковых и беззнаковых типах максимальное значение допустимого диапазона для знаковых типов будет практически в два раза меньше, чем для беззнаковых, так как один бит у первых отводится под знак числа. Например, максимальное значение для 8-разрядных знаковых типов равно 127 (27 — 1), для 16-разрядных — 32767 (215 — 1) и т.д. В остальном же правила представления целых положительных чисел остаются такими же, как и для беззнаковых типов.

Сформулируем алгоритм представления в компьютере целых положительных чисел:

  1. Целое положительное число, входящее в диапазон допустимых значений того или иного типа, переводится в двоичную систему счисления.
  2. Двоичное число дополняется, если это необходимо,слева нулями до соответствующего числа разрядов (8-ми, 16-ти, 32-х или более).
  3. Полученное число записывается в этом числе разрядов так, что в самом левом разряде размещается самая старшая цифра, а в правом — младшая.

Пример. Число 53 = 1101012 в 8-разрядном представлении имеет следующий вид:

0 0 1 1 0 1 0 1

Это же число в 16-разрядном представлении имеет следующий вид:

0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1

В обоих случаях неважно, в знаковом или беззнаковом типе записано число.

Для числа 200 = 110010002 представление в 8-разрядном знаковом типе невозможно (так как максимальное допустимое число в таком типе равно 127), а в беззнаковом однобайтовом представлении оно имеет следующий вид:

1 1 0 0 1 0 0 0

Следует отметить, что разрядность процессора (число бит памяти, доступной для одновременной обработки процессором) на современных персональных компьютерах, не говоря уже о рабочих станциях и суперЭВМ, больше или равна четырем байтам. Поэтому поддержка компиляторами целых типов меньшего размера является данью прошлому: когда и разрядность процессора была меньше, и в результате использования одно-или двухбайтных типов удавалось экономить оперативную память при выполнении программы. В настоящее время использование четырехбайтных типов сделает программу, написанную для 32-разрядной операционной системы, более эффективной. Поэтому в языке Object Pascal наиболее употребимый целый тип Integer уже определен как четырехбайтный знаковый тип. Во многих компиляторах с языка С тип int также реализован как четырехбайтный.

content

Share
Published by
content

Recent Posts

Магнитное поле тока. Магнитные силовые линии

Разница между энергией электрического поля и энергией магнитного поля примерно такая же, как между энергией,…

12 месяцев ago

Постоянные магниты

Когда-то легендарный пастух Магнес, нашел природный магнитный камень, притягивающий железо. В последствии этот камень назвали магнетит или магнитный…

12 месяцев ago

Соединение конденсаторов

В электрических цепях применяются различные способы соединения конденсаторов. Соединение конденсаторов может производиться: последовательно, параллельно и последовательно-параллельно (последнее иногда называют смешанное соединение конденсаторов). Существующие…

12 месяцев ago

Обозначение конденсаторов

Обозначение конденсаторов на схемах определено ЕСКД ГОСТ 2.728-74. Обозначения условные графические в схемах. Резисторы, конденсаторы. Итак,…

12 месяцев ago

Виды конденсаторов

Узнав, что же такое конденсатор, рассмотрим, какие бывают виды конденсаторов. Итак, виды конденсаторов можно классифицировать по…

1 год ago

Энергия поля конденсатора

Вся энергия заряженного конденсатора сосредотачивается в электрическом поле между его пластинами. Энергию, накоп­ленную в конденсаторе, можно определить…

1 год ago