КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Представление чисел в ЭВМ. Машинные кодыСуществуют два способа представления чисел в памяти ЭВМ. Они называются так: форма с фиксированной точкой и форма с плавающей точкой. Форма с фиксированной точкой применяется к целым числам, форма с плавающей точкой — к вещественным числам (целым и дробным). Под точкой здесь подразумевается знак-разделитель целой и дробной части числа. Для выполнения операций над двоичными числами в ЭВМ предусмотрены специальные машинные коды. В первую очередь, их применение обусловлено необходимостью выполнения арифметических операций над числами, имеющими разные знаки. Кроме того, реализовать, например, операцию вычитания двоичных чисел значительно проще, если заменить ее операцией сложения с отрицательным числом, а операнды (слагаемые) преобразовать в соответствующий код. Различают несколько вариантов машинных кодов, самые популярные из них – это прямой код, обратный код и дополнительный код. Однако наряду с ними применяются также модифицированные обратный и дополнительный коды. Прямой код двоичного числа образуется, если перед старшим разрядом абсолютного значения этого числа добавить знаковый разряд, единица в котором означает, что это отрицательное число, нуль, что положительное. Для получения обратного кода чисел существует два правила. Обратный код положительного числа совпадает с его прямым кодом и содержит нуль в знаковом разряде. Обратный код отрицательного числа содержит единицу в знаковом разряде, а у значащих цифр нули заменяются единицами, а единицы нулями, именно поэтому этот код и получил свое название. Обратный код имеет несколько важных свойств: -сложение положительного числа с его отрицательным значением в обратном коде дает машинную единицу обратного кода МЕобр = 1|111…111; -нуль в обратном коде может быть как положительным - 0|000…000, так и отрицательным - 1|111…111 числом. Неоднозначность в определении нуля в обратном коде является основной причиной того, что он не используется в современных ЭВМ. Дополнительный код числа получают по следующим правилам. Дополнительный код положительного числа совпадает с его прямым кодом. Дополнительный код отрицательного числа получается прибавлением к младшему разряду обратного кода числа единицы9. Дополнительный код имеет несколько важных свойств: сложение дополнительных кодов положительного и отрицательного чисел дает машинную единицу дополнительного кода МЕдоп = МЕобр + 20 = 10|000…000; нуль в дополнительном коде имеет единственное представление. 9.
|