Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛЕКЦИЯ 1-2.pdf
Скачиваний:
27
Добавлен:
09.04.2015
Размер:
980.45 Кб
Скачать

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

Для хранения целых неотрицательных чисел может

быть отведены один или два байта

24010=111100002 в однобайтовом формате

11 1 1 0 0 0 0

24010=111100002 в двухбайтовом формате

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

Максимальное целое неотрицательное однобайтовое

число получим, когда во всех ячейках хранятся единицы:

1 1 1 1 1 1 1 12= 27+ 26 + 25 + 24 + 23 + 22 + 21 + 20 = 25510

Максимальное целое число в двухбайтовом формате :

1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 12 = 215+ 214+213 + …+ 24 + 23 + 22 + 21 + 20 = 6553510

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

Для хранения целых чисел со знаком отводится один, два или три байта, причем старший (левый) разряд

отводится под знак числа

Если число положительное, то в знаковый разряд

записывается 0, если отрицательное, то 1

Такое представление называется прямым кодом числа

Пример: Прямой код числа -5 в однобайтовом формате:

-510 = 1 0000 101

Диапазоны изменения целых чисел со знаком:

1

байт:

- 27 …+27 - 1

-128

10

…127

 

2

байта:

- 215 …+215 -1

 

 

10

 

- 32768

…+32767

10

4

байта:

- 231…+231–1

-2 147

 

10

 

483 648 …2 147 483 647

Прямой и дополнительный коды

Для того, чтобы реализовать в ЭВМ операцию

вычитания отрицательные числа преобразуют в

дополнительный код

Дополнительный код n-разрядного отрицательного числа Аq, равен qn - |A|

Пример из десятичной арифметики: X=8410, Y= -3210. Вычислить Z = X + Y = 5210

Найдем дополнение числа Y до 100:

Y1 = 102 - | Y | = 68

(дополнительный код в десятичной системе)

Вычислим Z1 = X+Y1 = 84 + 68 = 152

Отбросим единицу в старшем разряде: Z=52

Прямой/дополнительный коды

Дополнительный код отрицательного числа:

Отбросить знаковый разряд (т.е. взять модуль)

Все разряды инвертировать

К результату прибавить 1

Обратное преобразование в прямой код:

Из результата вычесть 1

Все разряды инвертировать

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]