Бинарные арифметические операции
ЦЕЛОЧИСЛЕННЫЕ ТИПЫ
Классификация: стандартные, простые, порядковые типы.
В Турбо Паскале определяют пять стандартных целочисленных типов:
- короткое целое, имя SHORTINT;
- целое, имя INTEGER;
- длинное целое, имя LONGINT;
- целое длиной в байт, имя BYTE;
- целое длиной в слово, имя WORD.
Эти типы отличаются друг от друга размером памяти, отводимым под данные, что определяет множество возможных значений.
Если А и В два целых числа и знак любой операции @, то любая арифметическая операция выполняется при условиях abs(A) <= 2 147 483 647 abs(B) <= 2 147 483 647 abs(A @ B) <= 2 147 483 647 В случае бинарной операции, оба операнда преобразуются к общему типу перед тем, как над ними совершаются действия. Общим типом является встроенный целочисленный тип с наименьшим диапазоном, включающим все возможные значения обоих типов. Типом результата является общий тип. Таблица 3.2. Бинарные арифметические операции
Операции сложения и вычитания относятся к аддитивным операциям (операциям типа сложения). Операции умножения, деления нацело, остаток от деления нацело, деления относятся к мультипликативным операциям (операциям типа умножения). Операции отношения (сравнения) Это шесть бинарных со знаками < | > | = | <> | <= | >= (меньше, больше, равно, не равно, меньше или равно, больше или равно). Операндами выступают данные любых целочисленных типов. Результат всегда логического типа – истина (TRUE), если соотношение между операндами выполняется, или ложь (FALSE) при невыполнении соотношения между операндами. Таблица 3.3. Операции сравнения (отношения)
Таблица 3.4. Правила выполнения операций сравнения
Логические побитовые операции Включают в себя унарную операцию отрицания (не) и бинарные операции конъюнкции (и), дизъюнкции (или), суммы по модулю два (исключающее или). Операнды и результат целочисленного типа. Операции выполняются побитно, согласно таблице выполнения операций. Таблица 3.5. Правила выполнения поразрядных логических операций
Таблица 3.6. Поразрядные логические операции
* Примечание: во всех примерах операнды и результат типа BYTE.
Рис. 3.1. - Пример выполнения поразрядной логической операции конъюнкции над целыми числами типа BYTE Операции сдвига Операции сдвига относятся к бинарным мультипликативным операциям. Первый операнд - сдвигаемое число, второй операнд - число поразрядных сдвигов. Операнды и результат целочисленного типа. Результат - число, сдвинутое на указанное число бит. При сдвиге разряды, выходящие за разрядную сетку пропадают, а недостающие разряды заполняются нулями. Таблица 3.7. Операции сдвига
Рис. 3.2. - Пример выполнения операции сдвига 8-разрядного данного
|