ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика



Скачать 30.21 Kb.
Дата30.12.2012
Размер30.21 Kb.
ТипДокументы
ТА. 2. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика

Арифметические операции в двоичной системе счисления



Умножение в двоичной системе счисления = поразрядные сдвиги + суммирование

Основные форматы хранения целых чисел со знаком. Прямой код

Знак = (-1)∙s



Диапазон представления в зависимости от формата:

Однобайтовый (абс. величина)

000 0000 - 111 11112

0 - 12710

Двухбайтовый (абс. величина)

0000000 00000000 – 1111111 111111112

0 – 32 76710

Четырехбайтовый (абс. величина)

0000000 00000000 00000000 00000000 –

1111111 11111111 11111111 111111112

0 – 2 147 483 64710

Прямой, обратный и дополнительный код.

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

Обратный код для положительного числа в двоичной системе счисления совпадает с прямым кодом.

Для отрицательного числа все цифры числа заменяются на противоположные (1 на 0, 0 на 1), а в знаковый разряд заносится единица.

Дополнительный код положительного числа в двоичной системе счисления совпадает с прямым кодом.

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

Пример: -1310, прямой код: 1000 11012, обратный код: 1111 00102, дополнительный код: 1111 00112.
Арифметические операции в прямом, обратном и дополнительном коде:

Разберем четыре случая, возникающих при вычислении суммы x+y. Двоичные значения в обратном коде выделены полужирным шрифтом. Единица в круглых скобках обозначает перенос разряда.

1. x≥0, y≥0. Суммируются все двоичные разряды прямого кода слагаемых, в том числе разряды знака. Например:

510+910 = 000001012+000010012=000011102=1410.

При выполнении переноса двоичных разрядов результирующее значение может оказаться длиннее разряда, отведенного на модуль числа (n — длина представления).
В этом случае старший разряд суммы переносится в разряд знака и результат окажется неправильным (сумма двух положительных чисел получится отрицательной). Такая ситуация называется переполнением разрядной сетки. При программировании ее следует избегать.

2. x≥0, y≤0. |y|>|x|. Например:

510 + (-910 ) = 000001012 + 111101102 = 111110112 = 100001002 = -4 10.

3. x≥0, y≤0. |y|<|x|. Например:

910+(-510 )=000010012+ 111110102 = (1)000000112=+310.

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

0000 01002 = 4 10.

4. x≤0, y≤0. Например:

(-910) + (-5 10) = 111101102 + 111110102 = (1)111100002 = -11210.

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

111100012 = 0000 11102 = -1410.

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

1. x≥0, y≥0. Суммируются все двоичные разряды прямого кода слагаемых, в том числе старшие (разряды знака). Поскольку в данном случае используется прямой код, единственная возможная проблема — переполнение разрядной сетки.

2. x≥0, y≤0. |y|>|x|. Например:

510 + (-910 ) = 000001012 + 111101112 = 111111002 = 100001002 = -410.

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

3. x≥0, y≤0. |y|<|x|. Например:

910 + (-510 ) = 000010012 + 111110112 = (1)000001002 = 410.

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

4. x≤0, y≤0. Например:

(-910) + (-510) = 111101112 + 111110112 = (1)111100102 = 100011102 = -1410.

Результат также правильный.

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

1. умножить D10 на p;

2. целую часть произведения представить соответствующей цифрой p-ичного

представления;

3. умножать D10 на p до тех пор, пока будет достигнута требуемая точность (получится p-ичное число с k дробными разрядами) или дробная часть обратится в ноль.

Похожие:

ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconТА. Машинная арифметика с плавающей точкой
Машинные числа. Машинными называются числа, допускающие точное представление во внутреннем формате хранения числовых значений
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconЭлективный курс для предпрофильной подготовки девятиклассников «Машинная арифметика»
Образовательная область: информатика и информационно-коммуникационные технологии
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconТеория погрешностей и машинная арифметика. Оценка погрешностей
Так как, значение как правило неизвестно, чаще получают оценки погрешностей вида
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconКонспект урока «Двоичная арифметика»
Оснащение: мультимедийный проектор, презентация «Двоичная арифметика», разработанная учителем с использованием презентации Багровой...
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconI. Арифметика
Хотя решали задачи на взвешивание, на составление уравнений, в которых требуется определить количество человек или неделимых предметов....
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconДвоичная арифметика
Числа которыми мы привыкли пользоваться называются десятичными и арифметика которой мы пользуемся также называется десятичной. Это...
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconДелимость и остатки Введение Принято считать, что арифметика предшествует алгебре, что это «более элементарная»
«высшая арифметика» или, чаще, «теория чисел», чтобы своеобразно противопоставить его школьной, начальной арифметике. Но эти названия...
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconОсновные понятия
Термин "машинная графика" (computer graphics) в словаре по обработке данных Международной организации по стандартизации (iso) определен...
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconДо наших дней дошли два произведения, оба не полностью. Это «Арифметика» (шесть книг из 13) и отрывки из трактаты
«Арифметика» это сборник задач (всего их 189), где тщательный подбор и продуманное расположение задач направлены на то, чтобы показать...
ТА. Машинная арифметика с фиксированной точкой. Форматы хранения данных. Машинная арифметика iconФормат с фиксированной точкой и формат с плавающей точкой
Множество целых чисел, представимых в памяти компьюте­ра, ограничено. Диапазон значений зависит от размера ячеек памяти, используемых...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org