Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Машинное представление чисел с фиксированной точкойСодержание книги
Поиск на нашем сайте
Кроме целых чисел, в процессе вычислений часто требуется работать с рациональными числами. Чаще всего это необходимо при цифровой обработке сигналов в сигнальных процессорах или в микроконтроллерах. Такие числа могут быть как целыми, так и дробными. Точка мысленно фиксируется рядом с любым разрядом. Если она располагается справа от младшего бита, то число целое (рисунок 2.2), если слева от старшего – число дробное (рисунок 2.3), если двоичная запятая находится точно посередине числа, то тогда можем записывать числа, содержащие как целую, так и дробную части (рисунок 2.4).
Рисунок 2.2 – Формат 8-разрядного целого беззнакового двоичного кода
Рисунок 2.3 – Формат 8-разрядного дробного беззнакового двоичного кода
Рисунок 2.4 – Формат 8-разрядного смешанного беззнакового двоичного кода
Далее будут рассматриваться только целые числа с фиксированной точкой, для нецелых чисел чаще применяется показательная форма, о которой пойдет речь дальше. Кодирование отрицательных чисел производится тремя наиболее употребительными способами, в каждом из которых крайний левый бит – знаковый. Отрицательному числу соответствует единичный бит, а положительному - нулевой. Каждый способ оценивается по скорости и затратам на выполнение сложенияи изменения знака числа, т. к. вычитание есть сложение с измененным знаком одного операнда. Для двоичного представления знаковых рациональных чисел могут быть использованы прямой, обратный и дополнительный коды чисел. Многообразие применяемых кодов определяется их достоинствами и недостатками, а также особенностями используемых операционных устройств. Например, прямой код удобен для хранения и передачи чисел, обратный и дополнительный коды – для выполнения арифметических операций. 1. Прямой код. Изменение знака производится просто, путем инверсии бита знака. Пусть 0. 0001001 2 = + 910, тогда 1. 0001001 2 = - 910. Если при сложении двух чисел в этом коде знаки совпадают, то трудностей нет. Если знаки различаются, то необходимо: - найти наибольшее число; - вычесть из него меньшее; - результату присвоить знак наибольшего слагаемого. 2. Обратный код, инверсный или дополнительный "до 1". Изменение знака производится просто – инверсией всех бит: 00001001 2 = 910, а 11110110 2 = - 910. Сложение также выполняется просто, т. к. знаковые биты можно складывать. При переносе единицы из левого (старшего) бита, она должна складываться с правым (младшим). Например: + 7 + (- 5) = 2.
Сложение в обратном коде происходит быстрее, т. к. не требуется принятие решения, как в предыдущем случае. Однако суммирование бита переноса требует дополнительных действий. Другим недостатком этого кода является представление нуля двумя способами, т. к. инверсия 0...00 равна 1...11 и сумма двух разных по знаку, но равных по значению чисел дает 1...11.Например: (00001001 = 9) + (11110110 = - 9) = 11111111. Кстати, из этого примера понятно, почему код называется дополнительным "до 1". Этих недостатков лишен дополнительный или дополнительный «до 2» код.
3. Дополнительный или дополнительный "до 2" код. Число с противоположным знаком находится путем инверсии исходного числа и добавлением к результату единицы. Например, найти код числа минус 9.
Проблемы двух нулей нет. + 0 = 00000000, - 0 = 11111111 + 1 = 00000000 (перенос из старшего бита не учитывается). Сложение производится по обычным для неотрицательных чисел правилам.
Из этого примера видно, что в каждом разряде двух равных по модулю чисел складываются две единицы, что и определило название способа. Этот метод применяется наиболее часто, и когда говорят о дополнительном коде, то имеется в виду дополнительный "до 2-х" код. Числа с фиксированной точкой имеют свои диапазоны: - беззнаковые числа: 0 < D < 2 n -1, где n – число разрядов:
- числа со знаком: - 2 n -1 < D < + 2 n -1 -1, где где n – число разрядов:
|
||
|
Последнее изменение этой страницы: 2021-03-09; просмотров: 120; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.33 (0.006 с.) |