Целые числа со знаком

Целые числа без знака.

Пример

Десятичное число 9703 в двоично-десятичной системе выглядит так:

Последовательность нескольких битов или байтов часто называют полемданных (Информатика: учебник / под ред. Н.В. Макаровой. — 3-е перераб. изд. — М.: Финансы и статистика, 2006.).

Биты в числе (в слове, в поле и т.п.) нумеруются справа налево, начиная с 0-го разряда.

В ПК могут обрабатываться поля постоянной и переменной длины.

Поля постоянной длины:


· слово — 2 байта

· двойное слово — 4 байта

· полуслово — 1 байт

· расширенное слово — 8 байт

· слово длиной 10 байт — 10 байт

Числа с фиксированной запятой чаще всего имеют формат слова и полуслова, числа с плавающей запятой — формат двойного и расширенного слова.

Поля переменной длины могут иметь любой размер от 0 до 256 байт, но обя­зательно равный целому числу байтов.

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

1. целые положительные числа (без знака)

2. целые со знаком

3. вещественные нормализованные числа.

Память в компьютере имеет байтовую структуру. Целые без знака обычно занимают один, или два байта (это комбинация связанных соседних ячеек, обрабатываемая совместно, называется машинным словом). В однобайтовом формате они могут принимать значения в диапазоне от 0 до 255, в двухбайтовом от 0 до 65535. Здесь попытка представить в байтовом формате число 258 будет интерпретироваться как ошибка. В машинном слове целые числа без знака представляются в своем двоичном виде.

Пример:

7210=10010002

в байтовом формате:

7 6 5 4 3 2 1 0

в двухбайтовом:

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

 

Над целыми числами определены операции сложения (по умножения).

Используются три формы записи целых чисел со знаком: прямой код, дополнительный код, обратный код и смещенный код.

Прямой код

При кодировании прямым n-разрядным двоичным кодом один разряд (как правило, самый старший) отводится для знака числа. Остальные n-1 разрядов - для значащих цифр. Значение знакового разряда равно 0 для положительных чисел, 1 - для отрицательных.

Пример: 1 = 0000 0001,-1 = 1000 0001.

Для прямого кода справедливо следующее соотношение:

n-2

А10=(-1)а (зн)∑ ai 2i,

i =0

где n-разрядность кода, а (зн) - значение знакового разряда. Например: если разрядность кода равна 4, то

1101 = (-1)1[1*20+0*21+1*22]=-5