Как представляются в компьютере целые числа? icon

Как представляются в компьютере целые числа?



НазваниеКак представляются в компьютере целые числа?
Дата конвертации15.07.2012
Размер58.3 Kb.
ТипДокументы

Как представляются в компьютере целые числа?


Целые числа могут представляться в компьютере со знаком или без знака.

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

Обычно  занимают  в  памяти  компьютера  один  или  два  байта.     В  однобайтовом  формате  принимают  значения  от  000000002   до   111111112.     В двубайтовом формате - от  00000000 000000002   до   11111111 111111112.
 

Диапазоны значений целых чисел без знака


Формат числа в байтах 

Диапазон 

Запись с порядком

Обычная запись

1

0 ... 28-1

0 ... 255

2

0 ... 216-1

0 ... 65535

Примеры:

а) число 7210 = 10010002 в однобайтовом формате:



б) это же число в двубайтовом формате:



в) число 65535 в двубайтовом формате:


 
 

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

Обычно занимают в памяти компьютера один, два или четыре байта, при этом самый левый (старший) разряд содержит информацию о знаке числа.
 

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


Формат числа в байтах

Диапазон

Запись с порядком

Обычная запись

1

-27 ... 27-1 

-128 ... 127 

2

-215 ... 215-1 

-32768 ...
32767

4

-231 ... 231-1 

-2147483648 ... 2147483647

Рассмотрим особенности записи целых чисел со знаком на примере однобайтового формата, при котором для знака отводится один разряд, а для цифр абсолютной величины - семь разрядов.

В компьютерной технике применяются три формы записи (кодирования) целых чисел со знаком: 
прямой код,   обратный код,   дополнительный код.

Последние две формы применяются особенно широко, так как позволяют упростить конструкцию арифметико-логического устройства компьютера путем замены разнообразных арифметических операций операцией cложения.

^ Положительные числа в прямом, обратном и дополнительном кодах изображаются одинаково  -  двоичными кодами с цифрой 0 в знаковом разряде. Например:
 



^ Отрицательные числа в прямом, обратном и дополнительном кодах имеют разное изображение.

1. Прямой код. В знаковый разряд помещается цифра 1, а в разряды цифровой части числа — двоичный код его абсолютной величины. Например:
 



2. Обратный код. Получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака: нули заменяются единицами, а единицы — нулями. Например:
 



3. ^ Дополнительный код. Получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. Например:
 



Обычно отрицательные десятичные числа при вводе в машину автоматически преобразуются в обратный или дополнительный двоичный код и в таком виде хранятся, перемещаются и участвуют в операциях. При выводе таких чисел из машины происходит обратное преобразование в отрицательные десятичные числа.


 
^

4.12. Как компьютер выполняет арифметические действия над целыми числами?


Сложение и вычитание

В большинстве компьютеров операция вычитания не используется. Вместо нее производится сложение обратных или дополнительных кодов уменьшаемого и вычитаемого. Это позволяет существенно упростить конструкцию АЛУ.

Сложение обратных кодов. Здесь при сложении чисел А и В имеют место четыре основных и два особых случая:

^ 1. А и В положительные. При суммировании складываются все разряды, включая разряд знака. Так как знаковые разряды положительных слагаемых равны нулю, разряд знака суммы тоже равен нулю. Например:
 

Получен правильный результат.

^ 2. А положительное, B отрицательное и по абсолютной величине больше, чем А. Например:
 

Получен правильный результат в обратном коде. При переводе в прямой код биты цифровой части результата инвертируются: 1 0000111 = -710.

^ 3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. Например:


 
Компьютер исправляет полученный первоначально неправильный результат (6 вместо 7) переносом единицы из знакового разряда в младший разряд суммы.

^ 4. А и В отрицательные. Например:
 


Полученный первоначально неправильный результат (обратный код числа -1110 вместо обратного кода числа -1010) компьютер исправляет переносом единицы из знакового разряда в младший разряд суммы. При переводе результата в прямой код биты цифровой части числа инвертируются: 1 0001010 = -1010.

При сложении может возникнуть ситуация, когда старшие разряды результата операции не помещаются в отведенной для него области памяти. Такая ситуация называется переполнением разрядной сетки формата числа. Для обнаружения переполнения и оповещения о возникшей ошибке в компьютере используются специальные средства. Ниже приведены два возможных случая переполнения.

^ 5. А и В положительные, сумма А+В больше, либо равна 2n-1, где n — количество разрядов формата чисел (для однобайтового формата n=8, 2n-1 = 27 = 128). Например:
 


Семи разрядов цифровой части числового формата недостаточно для размещения восьмиразрядной суммы (16210 = 101000102), поэтому старший разряд суммы оказывается в знаковом разряде. Это вызывает несовпадение знака суммы и знаков слагаемых, что является свидетельством переполнения разрядной сетки.

^ 6. А и В отрицательные, сумма абсолютных величин А и В больше, либо равна 2n-1. Например:



Здесь знак суммы тоже не совпадает со знаками слагаемых, что свидетельствует о переполнении разрядной сетки.

Сложение дополнительных кодов. Здесь также имеют место рассмотренные выше шесть случаев:

^ 1. А и В положительные. Здесь нет отличий от случая 1, рассмотренного для обратного кода.

2. А положительное, B отрицательное и по абсолютной величине больше, чем А. Например:
 

 
Получен правильный результат в дополнительном коде. При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: 1 0000110 + 1 = 1 0000111 = -710.

^ 3. А положительное, B отрицательное и по абсолютной величине меньше, чем А. Например:
 

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

^ 4. А и В отрицательные. Например:
 

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

^ Случаи переполнения для дополнительных кодов рассматриваются по аналогии со случаями 5 и 6 для обратных кодов.

Сравнение рассмотренных форм кодирования целых чисел со знаком показывает:

  • на преобразование отрицательного числа в обратный код компьютер затрачивает меньше времени, чем на преобразование в дополнительный код, так как последнее состоит из двух шагов — образования обратного кода и прибавления единицы к его младшему разряду;

  • время выполнения сложения для дополнительных кодов чисел меньше, чем для их обратных кодов, потому что в таком сложении нет переноса единицы из знакового разряда в младший разряд результата.

^ Умножение и деление

Во многих компьютерах умножение производится как последовательность сложений и сдвигов. Для этого в АЛУ имеется регистр, называемый накапливающим сумматором, который до начала выполнения операции содержит число ноль. В процессе выполнения операции в нем поочередно размещаются множимое и результаты промежуточных сложений, а по завершении операции — окончательный результат.

Другой регистр АЛУ, участвующий в выполнении этой операции, вначале содержит множитель. Затем по мере выполнения сложений содержащееся в нем число уменьшается, пока не достигнет нулевого значения.

Для иллюстрации умножим 1100112 на 1011012.



Деление для компьютера является трудной операцией. Обычно оно реализуется путем многократного прибавления к делимому дополнительного кода делителя.


 




Похожие:

Как представляются в компьютере целые числа? iconКак представляются в компьютере вещественные числа?
Однако в компьютерах числа хранятся в регистрах и ячейках памяти с ограниченным количеством разрядов. В следствие этого система вещественных...
Как представляются в компьютере целые числа? iconКонтрольная работа по теме «Повтор материала курса алгебры 7 класса»
Из данных чисел -8; 2,1; 7; 0,2020020002…;; 3,(6);; 0; 201;; -1 выпишите: а) натуральные числа; б) целые отрицательные числа; в)...
Как представляются в компьютере целые числа? iconСамостоятельная работа по теме «Положительные и отрицательные числа» Вариант Пусть положительное число. Сравните с нулем значение выражения: а, б, в
Из данных чисел -8; 2,1; 7; 0,2020020002…;; 3,(6);; 0; 201;; -1 выпишите: а) натуральные числа; б) целые отрицательные числа; в)...
Как представляются в компьютере целые числа? iconУрок математики 6 класс Никитина Татьяна Ивановна, учитель математики Тема урока: «Основное свойство дроби» Цель урока: ввести понятие основного свойства дроби
На какие группы можно разбить числа? (дробные и целые числа; сумма цифр 9 и 11; правильные и неправильные дроби)
Как представляются в компьютере целые числа? iconДомашнее задание по теме «Представление целых чисел в компьютере»
Запишите в прямом коде в восьмиразрядной сетке со старшим знаковым разрядом следующие двоичные числа
Как представляются в компьютере целые числа? iconЧеловек Ренессанса по отношению к трагедиям xx-ого века
Действительно вещи представляются нам как текст пишет почти в виде свидетельства и как, если он брызгал пера жертвы или свидетеля...
Как представляются в компьютере целые числа? iconТема: Представление числовой информации в компьютере Алгоритм перевода числа из 10-тичной сс в другую позиционную сс
Если частное не =0 то, продолжать деление, иначе переписать все остатки снизу вверх
Как представляются в компьютере целые числа? iconВиртуальная школа компьютерных технологий
...
Как представляются в компьютере целые числа? icon1. Записать прямой код числа, интерпретируя его как восьмибитовое целое без знака: а) 153(10); б) 162(10); в) 209(10)
Записать дополнительный код числа, интерпретируя его как восьмибитовое целое со знаком
Как представляются в компьютере целые числа? icon1. Записать прямой код числа, интерпретируя его как шестнадцатибитовое целое без знака: а) 20282(10); б) 18094(10)
Записать дополнительный код числа, интерпретируя его как шестнадцатибитовое целое со знаком
Разместите кнопку на своём сайте:
Документы


База данных защищена авторским правом ©podelise.ru 2000-2014
При копировании материала обязательно указание активной ссылки открытой для индексации.
обратиться к администрации
Документы

Разработка сайта — Веб студия Адаманов