Основы программирования на языке Паскаль
Методическое пособие - Компьютеры, программирование
Другие методички по предмету Компьютеры, программирование
Арифметическое выражение строится из объектов: арифметических (числовых) констант; идентификаторов переменных, описанных как числовые; функций, которые возвращают в результате их вычисления; арифметических значений этих объектов, соединённых между собой знаками арифметических операций и круглыми скобками. В качестве констант могут применяться арифметические константы, заданные в явном виде: 5; 5.35, -7.374 Е + 01 и т.п., а также имена констант, определённые в разделе const.
В качестве переменных используются переменные, определённые в разделе Var как byte, integer, real, и их разновидности, например, longinteger, и т.д., если им уже присвоены начальные значения.
В качестве функций могут применяться стандартные функции языка Паскаль, библиотечные функции и функции, написанные самим пользователем. Библиотечные функции доступны после подключения модулей библиотек. функции пользователя должны быть описаны в разделе function.
Основные стандартные функции Паскаля:
Обозначения: I целочисленный тип; B байтовый тип; R вещественный тип; IBR целочисленный, или байтовый, или вещественный типы.
ABS (IBR) определение абсолютной величины аргумента типа i,b,r.
ARCTAN (IBR) вычисление угла (в радианах), тангенс которого равен IBR.
Cos (IBR) , Sin (IBR).
Exp (IBR) вычисление значения eIBR.
Ln (IBR) натуральный логарифм IBR.Sgr (IBR) возведение в квадрат IBR.
Sgrt (IBR) вычисление корня квадратного из IBR.
Возведение в степень выполняется по формуле ar= exp (r *ln(a)) для положительных a либо организуется последовательное умножение на а r раз.Для отрицательных а возможен только второй способ.
Арифметические операции: +, , умножить; / разделить; mod нахождение остатка от деления: 11 mod 5, результат1; div целочисленное деление (дробная часть отбрасывается) 11 div 5, результат 2. Арифметические "и" аnd и "или" or производят поразрядное булевское умножение или сложение целых значений операндов согласно таблицам:
A аnd B A or B
0 аnd 0 = 0 0 or 0 = 0
1 аnd 0 = 0 1 or 0 = 1
0 аnd 1 = 0 0 or 1 = 1
1 аnd 1 = 1 1 or 1 = 1
Пример: a: = 12 ; b: = 27.
Во внутреннем коде машины, в двоично-десятичной системе, цифры представляются в десятичной системе:
0000 = ноль
0001 = один
0010 = два
0011 = три
0100 = четыре
0101 = пять
0110 = шесть
0111 = семь
1000 = восемь
1001 = девять
Тогда 12 в десятичной системе эквивалентно 0001 0010 двоично-десятичной системы. напомним, что в двоично-десятичной системе каждая десятичная цифра представлена 4-значным двоичным кодом этой цифры. В этом случае 27 - 0010 0111.
А аnd B А or B
0001 0010 0001 0010
0010 0111 0010 0111
результат: 0000 0010 результат: 0011 0111
Результат преобразуется в десятичную форму 2 и 37 соответственно.
ХOR, исключающее "или", производит операцию согласно таблице
A xor B
1 xor 1 = 0
1 xor 0 = 0
0 xor 1 = 1
0 xor 0 = 0
Результат преобразуется в десятичную форму.
Циклический сдвиг: k shl N - сдвиг числа к влево на N позиций,
k shr N - сдвиг числа к вправо на N позиций,
k и N - целые.
Пример: 2 shl 7 = 256
0000 0000 0000 0010
0000 0001 0000 0000
0 единиц
0 двоек
0 четверок
0 восьмерок
0 шестнадцать
0 тридцать два
0 шестьдесят четыре
0 сто двадцать восемь
1 двести пятьдесят шесть
Пояснение: в любой позиционной системе счисления на первом месте справа в числе стоит количество оснований системы счисения в степени 0, на втором месте справа количество оснований в степени 1, на третьем месте справа количество оснований в степени 2 и т.д. так, для десятичной системы имеем:
3 2 4
количество единиц 100 * 4 = 4
количество десятков 101 * 2 = 20
количество сотен 102 * 3 = 300
сложим = 324
Для двоичной системы:
1 0 1 1 0 0 1
количество единиц 20 * 1 = 1
количество двоек 21 * 0 = 0
количество четверок 22 * 0 = 0
количество восьмерок 23 * 1 = 8
количество шестнадцаток 24 * 1 = 16
количество тридцать вторых 25 * 1 = 0
количество шестьдесят четверок 26 * 1 = 64
сложим = 89
т.е. десятичное 89 имеет изображение 1011001 в двоичной системе.
Для правильного написания арифметических выражений необходимо соблюдать следующие правила:
1. Запрещено последовательное появление знаков двух операций, т.е.
A + - B неверно, A + (-B) верно.
2. Порядок выполнения операций: /,,div, mod, and, or, shl, shr, , +. Порядок может быть нарушен круглыми скобками, так как часть