Вопрос задан 12.05.2019 в 15:05. Предмет Информатика. Спрашивает Ластовецька Маша.

Рассказать и показать на примере Паскаль:1) Что такое absolute и для чего нужна?2) Что такое asm и

для чего нужна? 3) Что такое constructor и destructor и для чего нужна? 4) Что такое implementation и для чего нужна?5) Назовите модули Паскаль ( в строке Uses, например crt) и какие возможности этот модуль дает?6) Что за тип переменной: указательный (Pointer) 7) И на последок: что означает символ @ , #, $ , ^
0 0
Перейти к ответам

Ответы на вопрос

Внимание! Ответы на вопросы дают живые люди. Они могут содержать ошибочную информацию, заблуждения, а также ответы могут быть сгенерированы нейросетями. Будьте внимательны. Если вы уверены, что ответ неверный, нажмите кнопку "Пожаловаться" под ответом.
Отвечает Зинина Диана.

1) absolute - директива для задания адреса переменной.
Например:
var
a : integer absolute $0040:$0002; //Сеегмент:смещение

2) asm - директива для ассемблерных вставок.
используется в критичных участках кода.
пример:

begin
asm
xor ax, ax
end
end.

3)
Конструктор и деструктор нужны для создания и уничтожения экземпляра класса.
Существуют конструкторы/деструкторы по умолчанию, но если мы хотим заменить его своим, то используются constructor/destructor.
Пишется просто - вместо function/procedure пишется constructor/destructor, ну и в классе прописывается.
type
ooo = class
public
a, b : integer;
constructor create (x, y : integer);
end;

constructor ooo.create (x, y : integer);
begin
a := x;
b := y;
end;

4)
implementation - в модуле обозначает начало исполняемой части, то есть там сами функции, процедуры и инициализация модуля.
Нужна, разумеется, чтобы отделить части модуля друг от друга.

Пример модуля:

Unit embler;

Interface

Procedure AddS (x,y: integer, var z: integer);

Implementation
Procedure AddD (x,y: integer, var z: integer);
begin
z := 2 * x + y;
end;
end.

5) Например, Graph - позволяет работать с графикой,
Math - математические функции, Windows - системные функции.

6) Pointer хранит адрес. По этому адресу можно пойти и взять значение переменной, при этом неважно какого она типа. Там, например может быть массив.

7) @ - берет адрес переменной
^ - обозначение, что это указатель ИЛИ что это разыменование

пример:
var
a : ^integer; // указатель на Integer;
b : integer;
begin
a := @b;
b := a^ + 2; //То же самое, что b := b + 2;
end.

0 0
Отвечает нейросеть ChatGpt. Будьте внимательны, ответы нейросети могут содержать ошибочные или выдуманные данные.

1) Absolute - это ключевое слово в языке Паскаль, которое используется для объявления переменных, адрес которых непосредственно задается в программе. Такие переменные не находятся в памяти во время выполнения программы, а их значения задаются непосредственно в коде программы. Absolute переменные часто используются для работы с аппаратными регистрами или для работы с памятью напрямую.

2) ASM - это ключевое слово в языке Паскаль, которое используется для вставки инструкций ассемблера непосредственно в код программы. ASM позволяет программисту писать оптимизированный код на ассемблере, который может быть более эффективным, чем код, генерируемый компилятором. ASM позволяет использовать специфичные для аппаратуры инструкции и управлять регистрами процессора непосредственно из программы на Паскале.

3) Constructor и Destructor - это специальные методы в классах Паскаль, которые выполняются при создании и уничтожении объектов соответственно. Constructor используется для инициализации состояния объекта, а Destructor - для освобождения ресурсов, занятых объектом. Эти методы автоматически вызываются при создании и уничтожении объекта и позволяют программисту управлять жизненным циклом объекта.

4) Implementation - это ключевое слово в языке Паскаль, которое используется для определения реализации методов класса. Implementation секция содержит код, который определяет, какие операции выполняются при вызове методов класса. Implementation секция также может содержать вспомогательные функции и процедуры, которые используются внутри класса.

5) Некоторые модули Паскаль, которые могут быть указаны в секции Uses: - CRT: модуль, предоставляющий функции для работы с экраном и клавиатурой. - Math: модуль, предоставляющий математические функции и константы. - SysUtils: модуль, предоставляющий различные служебные функции, такие как работа с файлами, строками и т.д. - DateUtils: модуль, предоставляющий функции для работы с датами и временем. Каждый модуль предоставляет свои возможности, связанные с определенной областью программирования.

6) Указательный тип данных (Pointer) - это тип данных в Паскаль, который используется для хранения адреса в памяти. Указатели позволяют программисту работать с данными напрямую в памяти, обращаясь к ним по адресу. Указатели могут использоваться для передачи данных между различными частями программы, для динамического выделения памяти и для работы с массивами.

7) Символ @ используется в Паскаль для получения адреса переменной или функции в памяти. Например, @x возвращает адрес переменной x. Символ # используется для обозначения символа по его ASCII коду. Например, #65 представляет символ 'A'. Символ $ используется для обозначения числа в шестнадцатеричной системе счисления. Например, $FF представляет число 255. Символ ^ используется для обозначения указателя на переменную. Например, ^x обозначает указатель на переменную x.

0 0

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос