Представление чисел в памяти компьютера
Целые числа в памяти компьютера
Числа без знака Число = в однобайтовом формате : Число = в двубайтовом формате: Число = в двубайтовом формате:
Числа со знаком «+»0 «-» 1
Формы записи целых чисел со знаком Прямой кодОбратный кодДополнительный код
Формы записи чисел целых чисел со знаком Число = прямой, обратный и дополнительный код «+» Число = прямой, обратный и дополнительный код «+» Положительное число прямой код обратный код дополнительный код имеют одинаковое представление
Формы записи чисел целых чисел со знаком Прямой код числа -19: «-» Прямой код числа -127: «-» Отрицательное число прямой код обратный код дополнительный код имеют разное представление
Формы записи чисел целых чисел со знаком Обратный код получается инвертированием всех цифр двоичного кода абсолютной величины числа, включая разряд знака : нули заменяются единицами, а единицы – нулями. Число -19: Код модуля числа : Обратный код числа : «-» Число -127: Код модуля числа : Обратный код числа : «-» Дополнительный код получается образованием обратного кода с последующим прибавлением единицы к его младшему разряду. Дополн. код числа -19: «-» Дополн. код числа -127: «-»
Арифметические действия В большинстве компьютеров операция вычитания не выполняется. Вместо неё производится сложение уменьшаемого с обратным или дополнительным кодом вычитаемого. При сложении дополнительных кодов чисел А и В имеют место четыре случая.
Арифметические действия 1) А и В положительные : Десятичная запись : Двоичные коды : 12 С пк В пк А пк
Арифметические действия 2) А – положительное, В – отрицательное, |B|>|A| Десятичная запись : Двоичные коды : -7 С дк В дк А пк При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: = =
Арифметические действия 3) А – положительное, В – отрицательное, |B|
Арифметические действия 4) А и В отрицательные Десятичная запись : Двоичные коды : -12 С дк В дк А дк При переводе в прямой код биты цифровой части результата инвертируются и к младшему разряду прибавляется единица: = = Перенос отбрасывается +