Лекция: Арифметические операции со знаковыми числами в ЭВМ (орг. ЭВМ)

Знак числа обычно кодируется двоичной цифрой: знак "+" кодируется 0, знак "-" кодируется 1. Чтобы арифметические операции над знаковыми числами в ЭВМ можно было бы производить точно также, как и с беззнаковыми переменными, отрицательные числа представляются в дополнительном коде.

Чтобы получить дополнительный код отрицательного числа:

1) надо взять его положительную форму (взять прямой код положительного числа);

2) обратить каждый бит (иначе говоря, заменить в представлении числа 0 на 1 и 1 на 0);

3) добавить к полученному числу 1 младшего разряда.

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

Выполнение арифметических операций в компьютере

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

Таблицы для двоичной арифметики будут следующими:

Сложение

0+0=0, 0+1=1, 1+0=1, 1+1=0+единица переноса, 1+1+единица переноса=1+единица переноса;

Вычитание

0-0=0, 1-0=1, 0-1=1+единица заема;

Умножение

0*0=0, 1*0=0, 0*1=0, 1*1=1.

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

При этом программист должен руководствоваться следующими правилами:

определяется наличие переносов из двух старших разрядов числа

если переносов нет, то результат операции правильный;

— если есть переносы из обеих разрядов, то результат операции тоже правильный;

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

При использовании дополнительного кода единица переноса из знакового разряда игнорируется.

Умножение многоразрядных двоичных чисел производится путем образования частичных произведений и последующего их суммирования. Частичные произведения получаются после сдвигов умножителя. Единственной особенностью является то, что если сомножитель является отрицательным (знаковые разряды равны 11), то перед началом умножения следует приписать к нему слева столько единиц, сколько значащих разрядов у другого сомножителя справа от запятой. Результат произведения всегда получается в дополнительном коде.

Операция деления представляется последовательностью операций вычитания и сдвига делителя.

Указать, какой из вариантов более соответствует понятию ODBC Driver (БД)

Б) Программа, обеспечивающая взаимодействие приложения с базой данных определенного типа в рамках технологии ODBC (т.е. для каждого типа базы данных, например, Oracle, Access, SQL Server нужен свой драйвер).

еще рефераты
Еще работы по информатике