Cтраница 2
Самой простой инструкцией является инструкция присваивания. [16]
Если в левой части инструкции присваивания стоит идентификатор выходной или внутренней логической переменной ( входной переменной нельзя присваивать значение), то выражение в правой части в общем случае представляет собой константу или дизъюнктивную нормальную форму булевой функции от входных и внутренних переменных. Если в левой части - выходная или внутренняя числовая переменная, то выражение в правой части - арифметическое выражение, включающее знаки плюс и минус. [17]
Почти во всяком языке есть явная инструкция присваивания, но присваивание выполняется как операция и во многих других случаях. Например, операции ввода-вывода порождают присваивания структурам данных новых введенных значений или присваивание файлу вывода новых данных; сопоставление с образцом в Сноболе 4 или арифметические операции в Коболе также могут порождать присваивание. [18]
Как в трансляторе с Фортрана проще всего отличить инструкции присваивания от других типов инструкций. [19]
Такое описание справедливо при условии, что время выполнения инструкции присваивания и время проверки условия ВХОД 1 существенно меньше секундного диапазона. При реализации устройства управления на интегральных элементах это условие выполняется практически всегда, однако при микропроцессорной реализации и работе в микросекундном диапазоне для правильной временной работы необходимо делать соответствующие поправки, так как выполнение даже простейшей инструкции присваивания однокристальным микропроцессором требует нескольких микросекунд. [20]
Правила определения типа. [21] |
Сначала вычисляется значение выражения, которое находится справа от символа инструкции присваивания. [22]
В связи с этим в Сноболе-4 разрешается на месте субъекта инструкции присваивания ставить любое выражение. [23]
Следует отметить существенную разницу между знаком равенства в условии и в инструкции присваивания, где он используется совместно с двоеточием. [24]
В теле функции последней исполняемой инструкцией, как правило, бывает инструкция присваивания: имя функции выражение. В результате ее выполнения имени функции присваивается значение выражения соответствующего типа, которое и возвращает функция. [25]
Поскольку внутри Р нет декларации для X и У, ссылки в инструкции присваивания нелокальные. Допустим, в Алголе принято правило последней ассоциации; тогда при первом вызове Р в инструкции L1 обе переменные X и У являются переменными типа real, но при втором вызове в инструкции L2 обе они - переменные типа integer. Следовательно, в первом случае требуется сложение вещественных чисел, а во втором - целых. Это непостоянство приводит к тому, что во время счета приходится выполнять проверку типов с последующим переходом на соответствующую операцию сложения. Ясно однако, что проверка типов во время выполнения нежелательна из-за большого расхода времени и памяти для дополнительных команд. Отсюда вывод: если для определения нелокальных сред применяется правило последней ассоциации, то во время выполнения неизбежны значительные потери. Правило последней ассоциации используется в таких языках, как Лисп, Снобол 4 и АПЛ, поскольку там все равно необходима динамическая проверка типов. Однако для языков Алгол или ПЛ / I цена такой проверки слишком высока. Нужен другой метод, позволяющий осуществить проверку типов во время трансляции. [26]
Правила определения типа. [27] |
Затем вычисленное значение записывается в переменную, имя которой стоит слева от символа инструкции присваивания. [28]
Как и любая переменная программы, переменная типа char может получить значение в результате выполнения инструкции присваивания. Если переменная типа char получает значение в результате выполнения операции присваивания, то справа от знака: должно стоять выражение типа char, например, переменная типа char или символьная константа - символ, заключенный в кавычки. [29]
Как и любая переменная программы, переменная типа char может получить значение в результате выполнения инструкции присваивания. [30]