Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
инф-госы теория и практика.doc
Скачиваний:
28
Добавлен:
29.08.2019
Размер:
3.77 Mб
Скачать

9.Операции целочисленной арифметики

К операциям целочисленной арифметики относятся:

X целочисленное деление div; >- остаток от деления mod.

При целочисленном делении операция div возвращает целую часть частно­го (дробная часть отбрасывается), а операция mod - остаток от деления. Ниже приведены примеры этих операций:

Операции битовой арифметики

Во всех операциях битовой арифметики действия происходят над двоичным представлением целых чисел.

К операциям битовой арифметики относятся следующие операции Паскаля.

Арифметическое И (and). Оба операнда переводятся в двоичную систему, за­тем над ними происходит логическое поразрядное умножение операндов по следующим правилам:

Рассмотрим пример использования арифметического И:

Этот участок программы работает следующим образом. Число А=13 и В=23 переводятся в двоичное представление 0000000000001101 и 00000000000101II1. Затем над ними поразрядно выполняется логическое умножение:

Результат переводится в десятичную систему счисления, в нашем случае получится число 5. Таким образом, 13 and 23 = 5.

Арифметическое ИЛИ(or). Здесь также оба операнда переводятся в двоичную систему, после чего над ними происходит логическое поразрядное сложение операндов по следующим правилам:

Над двоичным представлением значений А и В выполняется логическое сло­жение:

Посте перевода результата в десятичную систему имеем 13 ог 23 =31.

Арифметическое исключающее ИЛИ (хог). Здесь также оба операнда перево­дятся в двоичную систему, после чего над ними происходит логическая пораз­рядная операция хог по следующим правилам:

Арифметическое отрицание (not). Эта операция выполняется над одним опе­рандом1. Применение операции not вызывает побитную инверсию двоичного представления числа. Например, рассмотрим операцию not 13.

После перевода результата в десятичную систему получаем not 13 = -14.

Сдвиг влево (М shl L). Двоичное представление числа М сдвигается влево на L позиций. Рассмотрим пример использования операции shl: 17 shl 3. Пред­ставляем число 17 в двоичной системе: 10001. Сдвигаем его на три позиции влево: 10001000. В десятичной системе это число 136: 17 shl 3 =136. Заметим, что сдвиг на один разряд влево соответствует умножению на 2, на два разряда - умножению на 4, на три - умножению на 8. Таким образом, операция Mshl L эквивалентна М • 2L.

Сдвиг вправо (М shr L). В этом случае двоичное представление числа М сдви- • гается вправо на L позиций, что эквивалентно целочисленному делению числа Мна 2L. Например, 25 shr 1 =12, 25 shr 3= 3.

Операции отношения выполняют сравнение двух операндов и определяют, истинно выражение или ложно. Их результат - логический. Определены сле­дующие операции отношения: <, >, = . <= .>= ,<>.

Пример операций отношения:

Операции отношения определены и над символьными переменными и стро­ками:

Логические операции выполняются над логическими данными. Определены следующие логические операции (табл. 2.4).

В логических выражениях могут использоваться операции отношения, ло­гические и арифметические.

Пример логического выражения:

В сложных выражениях порядок, в котором выполняются операции, соот­ветствует приоритет}- операций. В Паскале приняты следующие приоритеты:

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