Вопрос. Представление целых чисел в памяти ЭВМ

Представление целых чисел в памяти ЭВМ. Беззнаковые и знаковые числа. Прямой, обратный и дополнительный код.

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

Целые числа без знака обычно занимают в памяти один или два байта и принимают в однобайтовом формате значения от 000000002 до 111111112 , а в двухбайтовом формате — от 00000000 000000002 до 11111111 111111112.

Примеры:

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

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

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

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

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

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

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


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

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


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


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


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


6899254554938543.html
6899286306967832.html
    PR.RU™