Опубликован: 15.11.2010 | Уровень: для всех | Доступ: платный
Дополнительный материал 1:

Глоссарий

< Лекция 12 || Дополнительный материал 1: 1234567
Ключевые слова: операции передачи данных, output operator, функция в языке программирования, персональная ЭВМ, графопостроитель, peripheral device, hardware support, программное прерывание, дескриптор файла, WIMP, speech, поколение ЭВМ, управляющий процесс, computing resource, pad character, digital data, scientific, binary form, left alignment, justification, binary output, data record, direct access, suspension, системная очередь, message queue, процедурное программирование, потоковый редактор, stream editor, императивный язык, imperative language, object orientation, Java Virtual Machine, командная оболочка, remark, literal string, метасимволы, подсветка синтаксиса, interpretive language, declarative language, декларативный язык, object code, приложение командной строки, graphics mode, графический режим, predicate, внешняя база данных, goal, lower case, upper case, пользовательский тип данных, связанная переменная, free variable, premise, standard input, стандартный поток вывода, standard output, диапазон строк, header file, Global Variable, macro substitution, именованные переменные, #ifdef, redefinition, subroutine, имя пакета, network drive, logical drive, low level, machine code, executable code, segment register, code segment, source coding, data segment, stack segment, para, executable file, интерпретатор командной строки, блок операторов, unconditional jump, binary code, редактор связей, link editor, linkage editor, linking loader, modem, demodulation, remote terminal, remote access, emulation, язык низкого уровня, consequence, постоянная память, интерфейс ввода, операции сдвига, base register, Указатель стека, current position, character attribute, string type, concatenation, carriage return, feed, EOL, file descriptor, LPT1, format string, внешняя переменная, несоответствие типа, type mismatch, VGA, MDA, CGA, EGA, windows 9x, escape sequence, текстовый режим, text mode, color mode, акселератор, относительное позиционирование, reference point, video system, SVGA, QVGA, intensive, blinking, внутренние команды, configuration file, скрытый файл, topology, scan code, KOI8-R, управляющие клавиши, alphabetize, circular buffer, buffer overflow, приглашение командной строки, random access, символ конца строки, стандартный поток ввода, диагностическое сообщение, системная область, файл устройства, файловый ввод/вывод, win16, MFC, структурированное программирование, WMF, теневые копии, модальные окна, системные шрифты, sans serif

Глоссарий к лекции 1

Список терминов
№ п/п Термин Англ. Термин Разъяснение
01.001 ввод-вывод (данных) input-output (of data) Операция передачи данных между ЭВМ или ЭВМ и человеком вместе с преобразованиями, необходимыми для "понимания" информации другой стороной. Ввод-вывод обычно осуществляется с помощью "периферийных устройств ЭВМ".
01.002 операторы ввода-вывода input-output operators Операторы (или функции) в языке программирования, с помощью которых передаётся запрос операционной системе на ввод или вывод данных с периферийных устройств. Без этих операторов любое "общение" между ЭВМ и человеком невозможно.
01.003 ЭВМ computer Устройство (автомат) предназначенное для сбора, хранения, обработки и передачи информации, а также её вывода по запросу пользователя ЭВМ.
01.004 устройство вывода output unit Периферийное устройство, предназначенное для передачи информации с ЭВМ. К устройствам вывода с персональных ЭВМ относят: Дисплей (монитор), принтер, акустические системы, графопостроители и некоторые другие устройства.
01.005 технологии вывода output technology Технологии и способы программирования (например, библиотеки), используемые для ввода-вывода данных. К этим технологиям относят: прямое программирование устройств, программирование устройств с использованием их драйверов, буферизированный ввод-вывод, ввод-вывод с использованием библиотек и API.
01.006 способ вывода output means Способ преобразования данных перед их выводом. Различают форматированный и неформатированный ввод-вывод, а также текстовый и двоичный ввод-вывод. Кроме того, разделяют ввод-вывод с использованием последовательного или прямого доступа к записям данных (используется для дисковых устройств).
01.007 прямое программирование (устройства) direct programming (of the unit) Программирование периферийного устройства (обычно на языке ассемблера) на уровне его портов, регистров и адресов в физической памяти. Оно обеспечивает высокую скорость работы устройства, однако работа таких программ ограничена только одним компьютером. К тому же сложные интерфейсы создавать прямым программированием очень сложно.
01.008 периферийное устройство peripheral device Устройство ввода или вывода информации, расположенное обычно вне материнской платы компьютера, подключаемое к ней с помощью шин и разъёмов. Для своего использования периферийное устройство потребляет ресурсы компьютера в виде адресов физической памяти, портов ввода-вывода, прерываний и каналов прямого обращения к памяти. Программирование этих устройств осуществляется в основном при помощи специальных программ – драйверов.
01.009 непереносимость non-portability Невозможность работы программы на другой ЭВМ, при том, что на первой ЭВМ всё работало нормально. Непереносимость обычно связана с различной архитектурой ЭВМ, набора её периферийных устройств, разными операционными системами и драйверами к ним. Непереносимость программ — это одна из основных проблем современного программирования.
01.010 драйвер driver Промежуточная программа, которая позволяет обращаться операционной системе к периферийному устройству без его прямого программирования, на понятном для программ данной операционной системы "языке". Как правило, современные драйверы имеют "многоуровневую структуру", каждый из уровней которого обменивается информацией с выше и ниже лежащем уровнем по определённому протоколу обмена.
01.011 унифицированный интерфейс uniform interface Протокол для обмена информацией между разными системами с единым конечным набором системных команд (функций), параметров обмена, правилами вызовов функций и т.п. Примерами "унифицированного интерфейса" являются протоколы Интернета, интерфейсы драйверов устройств и API для программирования в Windows.
01.012 аппаратная реализация hardware support Реализация алгоритма работы системы "на уровне микросхемы", когда алгоритм выполняет не процессор по определённой программе, а происходит "пересылка электрических сигналов" среди триггеров, логических ячеек и т.п. При этом информация также представляется в виде электрических сигналов.
01.013 регистр register Совокупность "элементарных ячеек памяти" определённой длины (т.н. "разрядности"), в которых микропроцессор и периферийные устройства хранят свои промежуточные данные. Обращение к регистрам происходит обычно по их именам.
01.014 порт 1. port 1. Адресация памяти в периферийных устройствах ввода-вывода в микропроцессоре с архитектурой x86, при которых обмен данными происходит минуя адресную шину компьютера. При этом происходит обращение к регистрам периферийных устройств, не входящих в состав центрального процессора.
01.015 порт 2. port 2. Разъём в системном блоке компьютера для подключения определённого вида устройств, работающих по "схожим" интерфейсам.
01.016 адрес address Шестнадцатеричное число, по которому находится нужная ячейка памяти длиной в 1 байт при её "сплошной" адресации. Этот адрес передаётся по адресной шине, а её значение возвращается по шине данных.
01.017 аппаратное прерывание device interruption Некоторый сигнал, вызванный событием в компьютерной системе (чаще всего — при появлении данных на устройстве ввода или при готовности устройства вывода к передаче данных), который передаётся на вход микропроцессора с тем, чтобы он "прервал" выполнение основной программы и переключился на обслуживание данного периферийного устройства. Аппаратные прерывания могут запрещаться ("маскироваться") с помощью специальных команд микропроцессора.
01.018 программное прерывание program interruption Команда в системе команд процессора, при появлении которой он начинает выполнять специальные функции операционной системы, прежде всего, ввод-вывод данных. После выполнения этих функций управление опять переходит вызвавшей его программе.
01.019 объект object В объектно- ориентированном программировании является порождением класса объектов, описанного на языке программирования и расположенного в оперативной памяти, вместе с полями данных и методами, изменяющими эти данные. Вызов методов происходит после получения сообщения (события), инициированное другим объектом или операционной системой.
01.020 метод 1. method 1. Функция манипуляции данными данного объекта, которая описана в классе объекта, и которая может вызываться и исполняться только в самом объекте. Иначе говоря, вызов метода одного объекта из другого запрещена. Порядок запуска методов определяет обработчик сообщений.
01.021 средний уровень middle level Одна из ступеней в классификации операций ввода-вывода, когда эти операции производятся не путём "прямого программирования" устройств с использованием их уникальных адресов, портов и регистров, а с использованием специально написанных драйверов для операционной системы, с использованием стандартных функций и программных прерываний операционной системы. При этом к среднему уровню относят как программирование с помощью дескрипторов файлов, так и с помощью связанных с ними потоками.
01.022 высокий уровень high level Одна из ступеней в классификации операций ввода-вывода, когда эти операции производятся с помощью специальных библиотек и API "высокого уровня", без прямого обращения к операционной системе и драйверам устройств. Это обеспечивает лучшую "предсказуемость" результатов вывода, однако делает этот ввод-вывод зависимым от использованных при программировании библиотек.
01.023 буферизированный bufferized См. потоковый
01.024 потоковый streamable Способ ввода-вывода, когда в операционной системе создаётся поток вместе связанным с ним буфером в оперативной памяти для ввода-вывода. При этом программа пользователя просто записывает или читает данные из этого потока, а синхронизацией данных между этим буфером и устройством занимается операционная система. Потоковый ввод-вывод относится к вводу-выводу среднего уровня, выводит только текстовые данные и не предназначен для вывода оформления текста (отличными от текста способами).
01.025 буфер buffer Область памяти в оперативной памяти компьютера, предназначенная для временного хранения и обмена данных между операционной системой и прикладными программами.
01.026 шрифтовое оформление font appearance (design) Оформление выводимой символьной информации при помощи шрифтов (с определённой гарнитурой, начертанием, кеглем и т.п.), применяемое при выводе текста. Если операционная система и устройство вывода может отображать текст только одним, "прошитым в него" шрифтом, то говорят об "отсутствии шрифтового оформления текста".
01.027 абзацное оформление paragraph appearance (design) Оформление выводимой информацией при помощи специальных "абзацных полей", включающих в себя отступы, отбивки, интерлиньяж, внешние и внутренние поля и т.п., при создании которых не используются "лишние пробельные символы". В противном случае говорят об отсутствии абзацного оформления текста.
01.028 консоль console Устройство ("терминал") для ввода-вывода информации в персональный компьютер в операционной системе. В качестве устройства ввода используется клавиатура, а в качестве вывода — экран компьютера. При этом вводе-выводе не предполагается использование шрифтового и абзацного оформления (только текст)!
01.029 WIMP-интерфейс WIMP interface (От английских слов: Window, Image, Message, Pointer — "Окно, Изображение, Сообщение, Указатель) Графический интерфейс операционной системы, в котором команды подаются посредством указания на объект на рабочем столе, в результате чего возникает событие, сообщение от которого передаётся объекту. По другому, этот интерфейс состоит из объектов, которые обмениваются друг с другом сообщениями.
01.030 SILK-интерфейс SILK-interface (От английских слов: Speech, Intelligence, Language, Knowledge — "Речь, Интеллект, Язык, Знания"). Один из наиболее разрекламированных интерфейсов начала 80-х годов XX века, на котором должно было работать пятое поколение ЭВМ в Японии. Он предполагает полный отказ от "команд" в привычном смысле этого слова, а управление им происходит при помощи речи и заложенных в компьютер знаний. Вследствие очень большой сложности и "проигрышу" в коммерческом плане WIMP - интерфейсу он так и не стал популярным.
01.031 редактор editor Программа, предназначенная для подготовки, создания и изменения (редактирования) текстовой (и не только!) информации оператором на персональной ЭВМ. Это единственный ориентированный на пользователя тип программ, требующий для своей работы непосредственное участие человека.
01.032 перенаправление redirection Перенаправление ввода и вывода данных в операционных системах из одного потока в другой. Например, вывод программы на экран дисплея можно переназначить в файл, в другую программу (фильтр или редактор), а также непосредственно на принтер.
01.033 API API (От английских слов: Application Programming Interface, "Интерфейс Прикладного Программирования"). Набор функций, драйверов, библиотек, с помощью которых пользователь или программист может писать программы в данной операционной системе, прикладном программном пакете и т.п. Программирование на уровне API требует обычно меньшей квалификации программиста, чем при выводе при помощи "прямого программировании устройств".
01.034 реальная конфигурация actual configuration Текущая комплектация ЭВМ и периферийных устройств (процессор, память, жёсткий диск, приводы, дисплей, порты, внешние устройства ввода-вывода), которая поддерживается платформой данной ЭВМ и с которой работает пользователь или оператор ЭВМ. Часто реальная конфигурация ЭВМ — это компромисс между возможностями новых устройств и ограничениями архитектуры ЭВМ.
01.035 графика graphics Представление статичной "не текстовой информации" (например, графиков, изображений, фотографий, картин, отсканированных документов и т.п.) Эта информация может быть выведена на экран монитора и принтер (графопостроитель).
01.036 подготовительная операция preparatory operation Количество вызываемых функций и установок параметров перед каким-либо действием в алгоритме. Чем сложнее интерфейс, тем больше таких операций необходимо сделать.
01.037 привязка closure Необходимость переноса вместе с прикладной программой дополнительных библиотек и системных программ с компьютера на компьютер. Привязка является одной из причин непереносимости программ.
01.038 платформа platform Совокупность аппаратных средств (процессора, материнской платы, портов, контроллеров ввода-вывода, типа оперативной памяти и т.п.), которые однозначно определяют класс компьютера. Для этого класса компьютеров существуют определённые наборы системных и прикладных программ (операционные системы, драйвера, пользовательские библиотеки, API и т.д.).
01.039 библиотека library Файл, содержащий в себе набор наиболее часто используемых функций несколькими программами, объединённые в пакеты, или даже всеми программами операционной системы, вызываемые по требованию этих программ. Использование библиотек позволяет сделать более "компактный и управляемый" код, и не расходовать зря дисковое пространство, оперативную память и другие ресурсы компьютера.
01.040 операционная система operating system Основная программа, выполняемая на ЭВМ, управляющая процессом запуска программ на исполнение, разделением процессов, предоставление ресурсов ЭВМ прикладным программам. Виды запускаемых операционных систем зависят от платформы ЭВМ.
01.041 ресурсы ЭВМ computer resources Аппаратные (размер оперативной памяти, место на жёстком диске, время работы процессора) и программные (доступность системных библиотек) ресурсы, передаваемые операционной системой прикладным программам для их нормального функционирования. При недостатке ресурсов программа может "зависнуть".
01.042 форматированный 1. formatting 1. Способ ввода-вывода текстовых данных, когда задаётся максимальный размер строки с литерами, выравнивание текста внутри этой строки, для числовых данных задаётся также положение десятичной точки и порядка чисел, задаются заполняющие символы и т.п.
01.043 заполняющий символ pad character Символ, используемый для заполнения "лишнего" пространства в выводимой строке, не занятого основным текстом. Обычно к качестве заполняющего символа используется символ "пробел" (\x20). Иногда этот символ можно поменять (например, на символ "звёздочка" в формах квитанций).
01.044 неформатированный 1. non-formating 1. Способ ввода-вывода текстовых и двоичных данных, когда не производится никакой обработки перед операцией вывода и данные передаются "как есть". Неформатированный ввод-вывод должен использоваться только в "исключительных случаях" при выводе двоичных данных.
01.045 размер строки string size Количество символов в текстовой строке, находящейся в оперативной памяти ЭВМ. Этот размер измеряют в символах или в байтах.
01.046 числовые данные digital data Данные, представляющие целые либо вещественные числа в программе. Числовые данные могут представлены в текстовой и двоичной форме.
01.047 научный формат (числа) scientific format (of a number) Числовые данные, представленные в виде вещественных чисел с мантиссой и порядком. Над вещественными числами в такой записи удобно производить вычисления. При этом длина мантиссы и положение десятичной точки остаётся фиксированным.
01.048 опции формата format options Специальные символы или сочетания символов в специальной строке форматов, определяющих преобразование форматов (из текстовой формы в двоичную и наоборот), длину полей в строке вывода, выравнивание текста в поле, положение десятичной точки и т.п.
01.049 строка формата format line Текстовая строка, состоящая из опций формата ввода-вывода вместе с разделяющими ("структурирующими") их символами.
01.050 двоичная форма binary form Представление целых и вещественных чисел в форме, в которой они представлены и в которой обрабатываются в центральном процессоре — в виде двоичных нулей и единиц.
01.051 текстовая форма text form Представление текстов, целых и вещественных чисел в виде последовательности символов с кодами, заданными в одной из кодировок. В этом случае двоичными нулями и единицами кодируется не всё число, а только литеры и цифры. С числом в текстовой форме невозможно эффективно проводить численные вычисления.
01.052 выравнивание alignment Расположение литер текста в строке, имеющей большую длину, чем в ней занимает текст. Выравнивание бывает по левому краю, правому краю, по центру либо по ширине.
01.053 выравнивание по левому краю left alignment Если литеры текста сдвинуты влево, а пробельные символы расположены справа от текста, говорят о выравнивании слева.
01.054 выравнивание по правому краю right alignment Если литеры текста сдвинуты вправо, а пробельные символы расположены слева от текста, говорят о правостороннем выравнивании.
01.055 выравнивание по центру center line Если заполняющие символы в строке расположены поровну слева и справа от текста, говорят о центрировании текста
01.056 выравнивание по ширине justification Если пробельные (заполняющие) символы распределены равномерно внутри строки между символами, то говорят о "выключке" (выравниванию по ширине). При этом обе границы текста в строке — ровные.
01.057 неформатированный двоичный (вывод) non-format binary (output) Способ вывода числовых данных в двоичной форме, когда не происходит не только "обработка" числа перед выводом, но и вообще не производится перевод чисел в текстовую форму. Неформатированный двоичный вывод обычно используется при записи на диск и/или передаче данных между компьютерами.
01.058 двоичный binary Представленный в виде двоичных нулей и единиц.
01.059 бинарный binary Тоже, что и двоичный
01.060 запись данных data record Текстовая или двоичная строка, имеющая фиксированную, заданную программистом длину. Фиксированная длина записи позволяет организовать к ней прямой доступ.
01.061 фиксированная длина fixed length Размер строки, имеющий определённую заданную программистом длину (например, с помощью строки формата),
01.062 переменная длина variable length Размер строки вывода, не имеющий определённого наперёд заданного значения. Размер этот определяется в процессе выполнения программы. К записям переменной длины невозможно организовать прямой доступ.
01.063 прямой доступ direct access Если файл организован таким образом, что все записи данных в нём имеют фиксированную длину, то любую запись из его содержимого можно прочитать, зная только начало файла на носителе и порядковый номер (смещение) записи. Такой подход удобен при проектировании баз данных.
01.064 база данных database Определённым образом упорядоченные записи в файлах, позволяющие получить быстрый доступ к информации целиком, а не к отдельным числам и фактам. Запись и чтение информации из базы данных называется транзакцией.
01.065 транзакция transaction Процесс получения и записи информации в базу данных, обеспечивающих её целостность и непротиворечивость. Транзакция или вносит все необходимые изменения в поля базы данных (тогда транзакция принимается), или оставляет базу данных в неизменном виде (транзакция отклоняется).
01.066 смертельные объятия dead lock Зависание компьютера, когда два процесса хотят получить полный доступ к одному ресурсу, мешая друг другу завершить транзакции. Для предотвращения смертельных объятий в системах управления базами данных применяют специальные алгоритмы.
01.067 контекст 2. context 2. Окружение (параметры по-умолчанию), задаваемое для каждого устройства при операциях ввода-вывода. К контексту относят: шрифтовое, абзацное оформление текста, цветовое решение, направление координат, метрики текста, размеры кистей и т.п. Контекст используется в API Windows для вывода текста и графики на любом устройстве.
01.068 зависание suspension, wedging Состояние компьютера, в котором он "не реагирует" на запросы на ввод информации и не выводит информацию наружу. Это состояние вызывается разными причинами.
01.069 системное сообщение system message Некоторая "псевдокоманда", генерируемая операционной системой и передаваемая объекту ("программе") через системную очередь сообщений. Каждое системное сообщение имеет своего получателя — объекта, которому передаётся эта команда.
01.070 очередь сообщений messages queue Некоторый буфер в оперативной памяти компьютера, в который записываются все системные сообщения от операционной системы и её объектов. Эти сообщения затем в порядке очереди передаются объектам-получателям.
01.071 C++ (Си плюс плюс) C++ Язык программирования, основанный на языке Си, который может работать с классами и объектами. Именно поэтому этот язык является языком объектно-ориентированного программирования. Этот язык имеет широкую область применения.
01.072 Перл Perl Процедурный язык программирования, предназначенный для написания скриптовых программ для обработки символьной информации и системного администрирования, а также для Интернета.
01.073 Питон Python Универсальный интерпретируемый язык программирования. Используется в системном администрировании и в Интернете, а также для символьных вычислений и обучения программированию.
01.074 Ява Java Объектно-ориентированный язык программирования с байт-кодом, работающий на разных платформах ЭВМ. Используется, прежде всего, в Интернете.
01.075 Квик бейсик Quick Basic Интерпретируемый язык процедурного программирования, используемый в образовательных целях.
01.076 Пролог Prolog Язык логического программирования, используемый при обработке символьных данных и в искусственном интеллекте.
01.077 потоковый редактор sed stream editor sed Эта программа-фильтр служит для построчного редактирования строковых (текстовых) данных. Этот фильтр существует практически во всех операционных системах, но его "родной" операционной системой является UNIX.
01.078 императивный (язык) imperative (language) Язык программирования, в котором "код управляет данными". Основное внимание при разработке программ на этом языке уделяется описанию кода и синтаксической структуре программы. На данные, воспринимаемые программой, теоретически не накладывается ограничений.
01.079 объектно-ориентированный (язык) object oriented (language) Язык для объектно-ориентированной системы программирования. В этой системе понятия процедуры и данных заменены на понятия "объект" и "сообщение". В отличие от процедуры, которая описывает, как должна выполняться обработка, сообщение определяет, что желает выполнить отправитель, а получатель точно определяет, что должно произойти.
01.080 объект 2. object 2. Пакет информации вместе с описанием порядка манипулирования им. Объект состоит из членов класса объектов и методов класса объектов.
01.081 сообщение message Спецификация условий одной из операций обработки объекта. При работе программы объекты непрерывно обмениваются сообщениями через очередь сообщений.
01.082 байт-код byte-code Один из способов реализации универсального промежуточного "языка" между интерпретируемым языком программирования и машинным языком. Байт-код реализован в виртуальной машине Ява, что делает код языка Ява переносимым практически на любые платформы.
01.083 виртуальная машина Ява Java virtual machine "Промежуточное" программное обеспечение, позволяющее байт-коду языка Ява работать на разном оборудовании и в разных программных средах (операционных системах).
01.084 браузер Интернета Internet browser Программа для просмотра веб-страниц, а также выполнения программ, содержащихся в них. К числу программ, запускающихся в браузере, относят Ява приложения (выполняющиеся на виртуальной Ява машине) и скриптовые программы, на языках Ява скрипт и вижел бейсик скрипт, реализованные в браузерах как дополнения и ActiveX приложения.
01.085 Ява скрипт JavaScript Императивный интерпретируемый язык высокого уровня, специально предназначенный для написания скриптовых программ для администрирования и веб-браузеров. Не смотря на всю схожесть с языком Ява, он не является его "урезанной версией".
01.086 вижел бейсик скрипт visual basic script, VBScript Императивный интерпретируемый язык высокого уровня, специально предназначенный для написания скриптовых программ для администрирования и веб-браузера Internet Explorer. Является "упрощённой и урезанной" версией языка Microsoft Visual Basic.
01.087 скриптовая программа script program Программа, выполняемая в веб-браузере или командной оболочке операционных систем, предназначенная для "автоматизации" часто встречающихся задач, для которых неэффективно писать отдельные программы. К скриптовым языкам относят: JavaScript, Visual Basic Script, Perl, Python.
01.088 ActiveX (Эктив икс) ActiveX Технология корпорации Microsoft, позволяющая повторно использовать код уже написанных приложений под управлением Microsoft Windows, и обращаться к нему другим программам. Эта технология является дальнейшим развитием технологий OLE и COM, позволяющих "внедрять" в документ одной программы кода управления другой программы. В-принципе, эта технология является "удобной", но не "безопасной". Разрабатывают ActiveX приложения на объектно-ориентированных языках.
01.089 комментарии 1 comments, remarks Дополнительный текст, вставляемый в текст программы, который не распознаётся языком и не участвует в компиляции, интерпретации и выполнении программы. Комментарии обычно нужны для придания "читабельности" коду программы и пояснений программиста к тексту программы.
01.090 объявление declaration Указание вначале программы (с помощью специальных операторов) задействованных в системе переменных, функций, процедур, классов, констант, предикатов и т.п., вместе с указанием их типа, типа формальных параметров и возвращаемых значений. Во многих языках объявление обязательно перед определением и использованием. Объявление переменных позволяет избежать многих ошибок в программировании.
01.091 описание definition Синоним определения
01.092 определение definition Задание какой-либо из объявленных переменных значения, функции — тела функции с реализуемым алгоритмом, фактам — их значений, правилам — цепочки вывода и т.д. Иными словами, определение придаёт смысл объявленным элементам синтаксиса.
01.093 использование using Появление предиката, процедуры и функции где-либо в правой части операторов присваивания или вывода. Если переменная не используется, то в результате трансляции и компиляции появляется предупреждение: "Переменная описывается, но не используется" (Variable is assigned but never used)
01.094 строки литералы literal strings Последовательность символов "как есть", без преобразований в числа, метасимволы или коды. Обычно строки литералы заключают в двойные кавычки или апострофы.
01.095 файл-класс (в Яве) file class (in Java) Текстовый файл с исходным кодом или компилированный файл с байт-кодом языка Ява. В языке Ява каждый файл представляет собой описание класса языка Ява вместе с членами и методами класса.
01.096 оболочка shell, IDE Некоторая программа, содержащие в себе функции по набору, редактированию, отладке и исполнению кода на языке программирования (высокого или низкого уровня). Часто IDE содержат функции подсветки синтаксиса, объяснение ошибок и т.п.
01.097 члены класса members of the class Переменные, определённые в классе ООП, предназначенные для хранения данных внутри порождённых от этого класса объектов. Это напоминает структуру на языке Си. Доступ к членам класса осуществляется либо напрямую, либо при помощи методов класса.
01.098 методы класса methods of the class Функции, определённые в классе ООП и предназначенные для обмена данными между объектами, созданными на основе класса, и внешней, окружающей средой. Методы могут читать и изменять члены класса, проверять целостность и непротиворечивость данных внутри класса, воспринимать и реагировать на сообщения, передаваемых объекту и т.д.
01.099 слово this this word Зарезервированное слово на языках C++ и Ява, указывающее на "самого себя" — класс, методы и члены которого являются собственностью этого класса. Используются в ссылках алгоритма на "самого себя".
01.100 интерпретируемый (язык) interpreted (language) Язык, предложения которого сразу переводятся в двоичный код или байт код и немедленно исполняются на компьютере (после грамматического разбора языковой конструкции). Интерпретируемые языки проще в понимании и отладке, но скорость их выполнения на ЭВМ ниже, чем у "компилируемых" языков.
01.101 оболочка диалоговая interactive shell Оболочка (IDE) интерпретируемого языка программирования, в котором команды набираются, "распознаются" (компилируются) и выполняются построчно, после нажатия клавиши "Enter". При этом промежуточные результаты работы сохраняются в памяти, а после каждой команды выводятся результаты их работы. К диалоговым оболочкам относят командные оболочки MathLab, Python, VBScript и некоторых других языков.
01.102 приглашение prompt Символ диалоговой оболочки или консоли операционной системы, приглашающий ввести команды для неё. Для разных диалоговых оболочек эти приглашения различаются. В большинстве оболочек консоли операционных систем вид приглашения можно изменять.
01.103 модуль (в Питоне) module (in Python) Файл с расширением "*.py" на языке Питон, содержащий в себе определения различных классов и функций (методов). Для многократного вызова функций они должны быть оформлены в виде модулей, и передаваться в интерпретатор либо импортируя модуль целиком, либо импортируя только отдельные методы модуля. Имена модулей в Питоне должны быть уникальными (что является необязательным для его методов).
01.104 декларативный (язык) declarative (language) Язык, в котором "данные управляют программой". При этом на формат и представление данных накладываются ограничения, благодаря которым их обработка может осуществляться "стандартными алгоритмами". К декларативным языкам относят языки LISP и PROLOG. На практике используется сочетание императивных и декларативных алгоритмов.
01.105 логический (язык) logic (language) Язык, вычисления в котором основываются на разделах математики: "исчисление высказываний" и "исчислении предикатов" (расширения булевской алгебры). Среди логических языков на практике обычно применяется язык Пролог (ПРОграммирование ЛОГики).
01.106 оболочка языка language IDE Оболочка (IDE), специально предназначенная для данного языка программирования. Этим она отличается от "универсальных оболочек" типа MSDN, Multi-Edit и т.п.
01.107 компиляция compilation Процесс перевода программы, написанной на языке высокого уровня, в двоичный объектный код, максимально приближенный к машинным командам данного компьютера.
01.108 объектный код object code Двоичный код ЭВМ, максимально приближенный к машинным инструкциям для данной платформы ЭВМ. Он преобразуется в программу, выполняемую на компьютере, после операции компоновки. Объектный код обычно имеет расширение "*.obj" или "*.o".
01.109 приложение командной строки command line application Приложение, выполняемое на консоли (в терминале) операционной системы. Данные такая программа получает из командной строки операционной системы, и её вывод также перенаправляется на терминал. По "неписанным правилам", для своего завершения программа должна попросить нажать клавишу "Enter" (чтобы диалог с результатами её работы был виден на экране).
01.110 псевдографический режим pseudo graphics mode Режим вывода линий в MS-DOS, при котором эти линии представляются в виде символов. Псевдографический режим позволяет рисовать горизонтальные и вертикальные линии, таблицы, рамки, не переключаясь в "графический режим" дисплея.
01.111 секция (в Прологе) section (in a Prolog) Выделенный именованный раздел в исходном файле программы на языке Turbo Prolog, служащий определённым целям. Среди них наибольшее распространение получили секции: "domains" (с объявлением типов переменных), "predicates" (с объявлением функций и предикатов), "clauses" (с описанием алгоритма, реализуемых предикатами), "databases" (с определением предикатов для внешней базы данных) и "goal" (с описанием целевой функции вычислений).
01.112 объявление переменных declaration of the variables Объявление типов (доменов) для имён используемых в программе на языке Пролог переменных в секции "domains".
01.113 литера letter Знак в полиграфии, обозначающий букву, цифру, знак препинания и другие типографские символы. При этом рассматриваются "символы вообще", набранные любым шрифтом, представленным в ЭВМ любым кодом. Иными словами, литера — это "смысл" символа.
01.114 нижний регистр lower case Представление символов любого национального алфавита в виде "строчных" букв.
01.115 верхний регистр upper case Представление символов любого национального алфавита в виде "прописных" (заглавных) букв.
01.116 домен (в Прологе) domain (in a Prolog) Один из стандартных или пользовательских типов данных на языке Пролог. Доменом на языке Пролог может быть как переменная или список, так и предикат определённого типа.
01.117 имя домена domain name Имя (обозначение) типа данных на языке Пролог. Смотри домен.
01.118 объявления предикатов predicate declarations Объявление имён предикатов в программе на языке Пролог, вместе с их доменами и типом формальных параметров в секции "predicates".
01.119 предикат predicate Некоторая функция, определённая на языке Пролог, содержащая формальные параметры и предназначенная для логического вывода суждений, описанные ею. Любой предикат, в зависимости от значений его параметров, может выдавать значение "успех" или "неудача", а встроенная в язык система логического вывода позволяет находить все значения переменных (фактических параметров), при котором данный предикат возвращает "успех".
01.120 факт fact Предикат, устанавливающий неизменное отношение между одной или несколькими переменными, выдающий результат "успех" или "неудача" в зависимости от значений этих переменных. Примеры фактов: человек(павел), братья(пётр, павел). Факты могут располагаться в секциях "database" и "clauses".
01.121 правило rule Предикат, реализующий отношение (суждение), основанное на логическом выводе из определённых ранее фактов и правил. При этом предикат правила находится в левой части, а в правой части, после ключевого слова "if", располагаются факты и правила, приводимые к данному правилу.
01.122 динамическое создание (предикатов) dynamic creation (of predicates) Внесение во внешнюю базу данных фактов, осуществляемое в момент выполнения программы. Динамически можно создавать только факты, объявленные или описанные в секции "database".
01.123 динамическое удаление (предикатов) dynamic removal (of the predicates) Удаление из внешней базы данных фактов, осуществляемое в момент выполнения программы. Динамически можно удалять только факты, объявленные или описанные в секции "database".
01.124 назначение фактов facts assignment Описание фактов, используемых при выводе на языке Пролог, и назначение им значений в секциях "clauses" и "database".
01.125 определение правил rules definition Описание правил вывода информации из фактов и других привил, ранее определённых на языке Пролог. Это описание задаётся в секции "clauses" на языке Turbo Prolog.
01.126 связанная (переменная) linked (variable) Переменная в языке Prolog, используемая в правой части правил для "связи" предикатов при логическом выводе, и, следовательно, на её значения накладываются ограничения (в рамках логики правил). Связанная переменная не может появляться в левой части определения правила.
01.127 свободная (переменная) free (variable) Переменная в языке Prolog, используемая в левой части определения правил логического вывода и, в-принципе, способная принимать любое значение.
01.128 успех success Результат, возвращаемый предикатом, в случае истинности условий, действий и посылок, определяющих данный факт или правило. Факт завершается с успехом, если его описание содержится в секциях "clauses" и "database", а правило завершается с успехом, если все предикаты в правой части возвращают успешное завершение.
01.129 действие action Некоторое событие, возникающее при выполнении некоторых "встроенных" предикатов Turbo Prolog (например, для предикатов ввода-вывода), возвращающее успешное завершение в случае "правильной" своей работы. При этом "успех" операции не связан с логическим выводом или значением полученного значения.
01.130 посылка premise Совокупность действий или условий, позволяющий "доказать" истинность или ложность правила, путём проверки истинности составляющих его предикатов (расположенных в правой части правила).
01.131 условие condition Некоторое условие, возникающее в процессе логического вывода с участием предикатов Turbo Prolog, принимающее только два значения: "Истина" и "Ложь". Это условие возникает, например, при сравнении результатов работы предикатов, при назначении и проверки значений связанных переменных и т.п. При истинности условия предикат возвращает успешное завершение, а при его ложности — неудачу.
01.132 неудача failure Возвращаемое значение предикатом в случае отсутствия ошибок исполнения и/или "ложного" завершения работы предиката. Правило заканчивается неудачей, если хотя бы один из его предикатов завершился неудачно.
01.133 рекурсия recursion Использование некоторого предиката, представляющего правило на языке Пролог, одновременно и в левой, и в правой части правила. Использование рекурсии позволяет "моделировать" циклические действия в алгоритме вывода, и получать несколько решений, удовлетворяющих цели вывода, в процессе выполнения программы на Прологе.
01.134 решение solution Набор значений переменных, удовлетворяющих цели программы и набору содержащихся в ней фактов, полученных в результате выполнения программы на Прологе. Так, например, цель: "отец(саша, X)" в качестве решения выдаст все значения переменной X, то есть детей человека 'саша', имеющихся в базе данных. В случае отсутствия детей у этого человека программа не найдёт решений, и выдаст результат: 'No solutions'.
01.135 завершение рекурсии recursion termination Некоторое правило, останавливающее рекурсию, и вызывающее выполнение отката к предыдущему значению рекурсивного правила. Правило, завершающее рекурсию, должно находиться раньше правила, эту рекурсию вызывающую или продолжающую. В результате "отката значений" происходит постепенное освобождение стека правил и нахождение решений для рекурсивного правила.
01.136 построчное редактирование line edit Редактирование текстовой информации, когда объектом редактирования является не весь текст, а только одна текущая строка. При этом редактор по-очереди выбирает строки для редактирования, исходя из поданных ему команд.
01.137 стандартный ввод standard input Устройство ввода команд и данных по-умолчанию. Обычно им является клавиатура.
01.138 команда command Неделимое понятие командного интерфейса. Команда указывает ЭВМ, какое конкретное действие решил осуществить пользователь с данными, находящимися внутри ЭВМ.
01.139 стандартный поток вывода standard output stream Устройство вывода результата работы команд по-умолчанию. Обычно им является экран дисплея.
01.140 адрес строки 1. line address 1. В построчном редакторе — это номер строки с начала файла или знак, обозначающий текущую или последнюю строку файла. Смотри описание Вашего редактора.
01.141 диапазон (адресов) 1. range (of addresses) 1. Запись адресов нескольких смежных строк, разделённых двоеточием. Например, диапазон строк "со второй по пятую" будет записан как: "2:5".
01.142 глобальные (команды) 1. global (commands) 1. Команды построчного редактирования, применимые не к текущей редактируемой строке, а сразу к тексту всего файла. При этом каждая команда применяется к каждой строке индивидуально. Примером глобальных команд может служить команда "поиска по образцу" (регулярное выражение).
01.143 заголовочный файл (на языке Си) header file (in a C language) Файл на языке C/C++ с расширением "*.h", в котором находятся объявления типов, констант, функций, классов (на языке C++), а также описания глобальных переменных. В заголовочном файле есть средства, предотвращающие повторную загрузку этих файлов и переопределение переменных.
01.144 глобальная переменная global variable Переменная, используемая более чем в одном модуле (функции, файле и т.п.), Глобальные переменные на языке Си обычно объявляются и определяются в заголовочных файлах.
01.145 предотвращение повторного использования prevention of the iterative usage Специальные средства, предотвращающие повторную загрузку на исполнение ранее загруженного заголовочного файла, и связанное с этим переопределение переменных, констант, функций и типов. Обычно они заключаются в определении специальной макро переменной в заголовочном файле и проверки, была ли она использована ранее.
01.146 макроподстановка macro substitution Некоторый идентификатор функции, который определён в заголовочном файле и замещается своей правой частью определения где-либо в тексте программы, в котором встречается данный идентификатор. Макроподстановка на языке C практически соответствует макрофункции на языке Ассемблер и служит тем же целям — делать текст программы лучше читаемым, заменив повторяющиеся конструкции на более простые подстановки. Следует заметить, что использование макрофункций делает генерируемый код более "длинным" и более "быстрым" по сравнению с использованием "обычных" функций.
01.147 структура structure Представляет собой несколько типов данных, расположенных вместе, в соседних ячейках памяти. Структура как тип данных имеет собственное имя, длина её элемента вычисляется с помощью функции: sizeof.
01.148 объединение union Представляет собой несколько типов данных, расположенных в одной ячейке памяти вместо друг друга. Объединение имеет собственное имя как тип данных.
01.149 перечисление 1 enumeration Целый тип данных, способный принимать только небольшое ("перечисляемое") множество значений-констант. Эти константы определяются при описании данного типа данных на языке программирования.
01.150 перечисления 2 enumerate Представляет собой целые переменные без знака, способные принимать значения только именованных констант, причём первой константе присваивается значение 0.
01.151 правила именования переменных 1. rule of the variables named 1. Правила названия специальных переменных, применяемых для предотвращения повторной загрузки заголовочных файлов при компиляции программ на языке Си. Они выражаются в том, что директивой "#define" в заголовочном файле на языке Си определяется специальная переменная: "__"имя заголовочного файла без расширения"_H". Далее, при загрузке этого заголовочного файла, директивой "#ifndef" проверяется наличие этой переменной в "окружении" файла с текстом программы, и, если эта переменная не определена, заголовочный файл включается в текст компилируемой программы.
01.152 оператор вставки файла "include" #include pragma operator (for file inserting) Прагма оператор языка Си, означающий, что на его место вставляется содержимое файла, указанного в аргументе этого оператора. Если имя этого файла заключены в двойные кавычки (""имя файла""), то этот файл ищется в том же каталоге, что и компилируемый файл. Если же имя этого файла заключено между символами "меньше и больше" (<"имя файла>), то этот файл ищется среди путей, указанных в переменной окружения IDE или командной оболочки.
01.153 прагма оператор "ifndef" #ifndef pragma operator Прагма оператор языка Си, проверяющий, что указанная справа от него константа, переменная или макроподстановке не определена. Если это так, то выполняется компиляция текста, находящимся между двумя прагма операторами: "#ifndef … #endif". В противном случае содержимое между скобками игнорируется.
01.154 прагма оператор "endif" #endif pragma operator Прагма оператор языка Си, закрывающий блок текста, начинающегося операторами "#ifdef", "#ifndef" и некоторыми другими. Этот оператор обязателен при указания конца любого условного прагма оператора.
01.155 повторное определение redeclaration Повторное объявление функций, типов, структур, объединений и т.д., с теми же параметрами, что и объявленное ранее. Является ошибкой компиляции языка C/C++.
01.156 переопределение redefinition Повторное объявление функций, типов, структур, объединений и т.д., с другими параметрами вместо тех, что были объявлены ранее. Является ошибкой компиляции языка C/C++.
01.157 прагма оператор "define" #define pragma operator Прагма оператор, определяющий константы, макроподстановки и "переменные окружения" предпроцессора языка Си и C++.
01.158 группа подпрограмм group of subroutines Сгруппированные в один файл несколько подпрограмм, функций, выполняющие сходные и взаимосвязанные алгоритмы, которые имеет смысл поместить в отдельную библиотеку.
01.159 библиотеки (на Perl) libraries (in Perl) Файл (пакет) на языке Perl, содержащий в себе определения группы подпрограмм на языке Perl. Как и любой пакет на Perl, он имеет средства объединения своих подпрограмм вместе с вызывающей его программой. Библиотека обычно имеет расширение: "*.pl".
01.160 модули (Perl) modules (in Perl) Файл (пакет) на языке Perl, содержащий в себе определения группы подпрограмм на языке Perl вместе с собственным "пространством имён". Как и любой пакет на Perl, он имеет средства объединения своих подпрограмм вместе с вызывающей его программой. Модуль обычно имеет расширение: "*.pm".
01.161 пакет (Perl) package (in Perl) Библиотека или модуль на языке Си, имеющий в себе специальные средства объединения своих подпрограмм с системой программирования Perl. Пакет начинается с "объявления пакета".
01.162 объявление пакета (в Perl) package declaration Объявление пакета начинается с оператора : package "имя пакета", где "имя пакета" должно совпадать с именем файла пакета.
01.163 директива require require directive Директива в языке Perl, расположенная внутри файла с основной программой, указывающая, что для своей работы требуется загрузка внешних пакетов, расположенных в списке после имени этой директивы. При этом имена файлов, указанные в этой директиве, ищутся в системном и пользовательском "окружении" системы программирования на Perl.
01.164 наборы программ suite На языке Perl то же, что и группы подпрограмм.
01.165 ключ "-I" (интерпретатора Perl) I key (of the Perl interpreter) Ключ (параметр, опция), с которой запускается интерпретатор языка Perl. При этом указанные после него каталоги добавляются в систему программирования на языке Perl в качестве дополнительных путей поиска пакетов подпрограмм.
01.166 собственное пространство имён (пакета) private namespace (of the package) Способ именования глобальных переменных, функций и т.п., определённые внутри модуля языка Perl, и имена которых могут быть "экспортированы" в другие программы, модули и библиотеки на языке Perl.
01.167 нотация (указания имени в Perl) notation (of namespace in the Perl) Правила указания имён переменных, импортированных из внешних модулей. Имеет вид: "Родитель"::"Сын"::"Внук"::"имя переменной".
01.168 экспорт имён (в Perl) name export (in Perl) Предоставление возможности использования вышестоящими модулями языка Perl переменные и функции, определённые в текущем модуле Perl. Экспортируемые модули должны быть предварительно описаны в массиве @EXPORT и @EXPORT_OK.
01.169 импорт (в Perl) name import (in Perl) Включение в собственное пространство имён идентификаторов из других модулей.
01.170 метод "import" import method Оператор, используемый в вызывающей программе для импорта идентификаторов (переменных и функций) из другого модуля и библиотеки. Кроме языка Perl, аналогичный метод есть и в языке Питон. Метод "import()" должен быть определён в самом экспортируемом модуле, или должен быть унаследован у модуля Exporter.
01.171 массив @EXPORT (в Perl) @EXPORT array (in the Perl) Данный массив содержит идентификаторы, экспортируемые из модуля по-умолчанию.
01.172 массив @EXPORT_OK (в Perl) @EXPORT_OK array (in the Perl) Специальный массив, содержащий идентификаторы, экспортируемые из модуля только в случае их явного указания.
01.173 директива "use()" use directive Эта встроенная функция служит для загрузки модуля в процессе его компиляции. Директива use автоматически экспортирует имена идентификаторов в основное пространство имён текущего пакета.
01.174 список импорта import list Список идентификаторов, импортируемый из модуля, указанного в директиве "use()". Если этот список пуст, то наследуются только модули по-умолчанию (перечисленные в массиве @EXPORT).
01.175 спецификация: ":DEFAULT" :DEFAULT specification Спецификация означает включение в список импорта всех элементов специального массива @EXPORT
01.176 массив @INC (в Perl) @INC array (in Perl) Массив, содержащий имена каталогов, в которых надо искать макросы языка Perl, в том числе и библиотеки, подлежащие к выполнению в конструкциях do, require и use. Первоначально он содержит: имена каталогов, переданных интерпретатору в качестве параметров ключа -I; имена библиотечных каталогов по-умолчанию; текущий каталог. Значение этого массива в программе можно изменить.
01.177 массив %INC (в Perl) %INC array (in Perl) Специальный хэш массив, содержащий по одному элементу для каждого файла, включённого с помощью функций do и require. Ключом в нём является имя файла, а значением — полное путевое имя. Благодаря этому каждый идентификатор может входить в пространство имён только один раз при вызове функции require.
01.178 сценарий script Программа на некотором интерпретируемом языке программирования, выполняемая внутри оболочки операционной системы и служащей для автоматизации часто встречающихся вопросов администрирования и настройки компьютеров, а также для обработки символьных данных. Тождественен термину "макрос".
01.179 сетевой диск (в Windows) network drive (in Windows) Некоторый "диск" в операционных системах Microsoft, буква которого назначено некоторому блочному сетевому устройству (например, общему каталогу на другом компьютере).
01.180 логический диск (в Windows) logical drive (in Windows) Некоторый диск в операционных системах Microsoft, являющимся разделом одного физического диска или ссылкой на каталог этого диска. Подробнее смотри руководство по Вашей операционной системе.
01.181 Ассемблер Assembler Язык программирования "низкого уровня", максимально приближенный к "машинным кодам" центрального процессора. На Ассемблере пишется самый быстрый и компактный исполняемый код. Язык ассемблера "привязан" к конкретной архитектуре ЭВМ, поэтому написанные на нём программы часто являются плохо переносимыми между ЭВМ.
01.182 низкий уровень low level Характеристика языка программирования, означающая, что конструкции этого языка максимально приближены к машинным кодам ЭВМ определённой архитектуры.
01.183 код code Представление некоторой информации в виде последовательности конечного множества литер или чисел. Если последовательность содержит только коды литер из алфавита какого-то языка, то такой код называют текстом.
01.184 машинный код machine code Набор кодов операций центрального процессора, выполняемых определённой ЭВМ, или коды, специфичные для конкретной ЭВМ. При этом программы в машинных кодах напрямую выполняются на ЭВМ, в отличие от скриптовых программ, для которых необходим интерпретатор.
01.185 центральный процессор central processor unit Устройство ЭВМ, напрямую выполняющий исполняемый код программы, и управляющее работой ЭВМ.
01.186 исполняемый код executed code В данном контексте - синоним термина машинный код
01.187 инициализация initialization Приведение ЭВМ в рабочее состояние, настройка окружения операционной системы и библиотек, и выполнение других процедур и операторов, необходимых для выполнения "рабочего кода", из-за которого писалась программа.
01.188 листинг listing Смотри распечатка
01.189 распечатка listing Файл, содержащий исходный код программы вместе со служебной информацией (сообщений об ошибках, списком идентификаторов, назначением сегментов и т.п.). Распечатка обычно генерируется программой-транслятором языка программирования.
01.190 трансляция translation Процесс перевода последовательности операторов какого-либо языка программирования в машинные коды. Трансляцию программы с языка Ассемблер часто называют ассемблированием.
01.191 директива directive Часть программы на языке Ассемблера, управляющая последующей компоновкой программы, но не вызывающая появления машинной команды (кода).
01.192 колонтитул running title Текст, печатаемый постоянно на каждом листе сверху листа (верхний колонтитул) или снизу листа (нижний колонтитул).
01.193 сегмент segment В Ассемблере часть программы, находящаяся в области памяти, адрес которой кратен 16. Хотя сегмент может располагаться в любом месте памяти и иметь размер до 64 Кбайт, он требует столько памяти, сколько необходимо для работы программы.
01.194 сегментный регистр segment register В центральном процессоре архитектуры x86 специальный регистр, хранящий в себе адрес начала сегмента. В процессоре 80286 сегментными регистрами являются регистры: CS, DS, ES и SS.
01.195 сегмент кода code segment Сегмент, в котором находится исполняемый код программы. На языке Ассемблера в сегменте кода находятся операторы и другие конструкции языка, генерирующие код программы. Адрес сегмента кода всегда содержится в регистре CS.
01.196 исходный код source code Текст программы на любом из языков программирования, на основе которого генерируется исполняемый код ЭВМ.
01.197 сегмент данных data segment Сегмент, в котором объявляются и описываются константы и переменные программы. Адреса сегментов данных содержатся в регистрах DS и ES.
01.198 стек stack Область памяти с данными, доступ к которым определяется следующим образом: "последним вошёл - первым вышел" (LIFO). В ЭВМ с архитектурой x86 существует так называемый программный стек, в который заносятся все промежуточные значения вычислений, и осуществляется вызов подпрограмм.
01.199 сегмент стека stack segment Сегмент в программе, содержащий программный стек. Адрес сегмента стека обычно заносится в регистр SS.
01.200 имя сегмента segment name Имя, присвоенное сегменту на языке Ассемблера. Это имя должно быть уникально во всей программе. Имя представляет собой метку. Имя сегмента предшествует ключевому слову: "SEGMENT".
01.201 метка label Идентификатор, с помощью которого "помечается" оператор в программе для перехода на его исполнение операторами цикла, безусловного и условного переходов.
01.202 параметр (сегмента) option (of a segment) Идентификатор, который расположен после ключевого слова "SEGMENT" и определяющий назначение сегмента, его класс и выравнивание.
01.203 выравнивание (сегмента) alignment (of a segment) Размещение начала сегмента по адресу, кратному числу 16. Это выравнивание на языке Ассемблер осуществляется параметром "PARA".
01.204 апостроф running title Одиночные кавычки. В английском языке апострофы используются вместо кавычек - "ёлочек" для выделения прямой речи.
01.205 формат (исполняемого файла) format (of an executed file) В операционных системах корпорации Microsoft есть несколько форматов двоичных файлов, предназначенных для непосредственного исполнения на ЭВМ (см. машинный код). Для операционной системы MS-DOS это форматы "COM" и "EXE". Кроме того, интерпретатором командной строки могут выполняться также командные файлы (с расширением "*.BAT").
01.206 формат "EXE" EXE format Один из форматов исполняемого файла в операционных системах MS-DOS и MS Windows. В отличие от файлов в формате "COM", файлы этого формата имеют 512-ти байтные заголовки. Благодаря этому размер EXE файла может быть сколь угодно большим. В файлах этого формата явно задаётся сегмент стека (и его размер), и имеется один или несколько сегментов данных. Кроме того, этот файл инициализируется путём записи нулевого слова в стек и явной загрузки сегментного регистра DS.
01.207 формат "COM" COM format Один из форматов исполняемого файла в операционной системе MS-DOS. В отличие от файлов в формате "EXE", эти файлы могут содержать в себе только один сегмент, и, следовательно, их длина ограничена 64 Кбайт. Сегмент стека для этих программ генерируется автоматически. Файлы этого формата инициализируются путём пропуска префикса программного сегмента (директивой ORG 100H) и полей определения данных (оператором JMP).
01.208 процедура (в Ассемблере) procedure (in an Assembler) Некоторый выделенный блок операторов на языке Ассемблер, выполняющий строго определённое логическое действие алгоритма. Процедуры начинаются с метки, за которой идёт ключевое слово "PROC" и необязательный параметр способа адресации. Оканчиваться процедура должна ключевым словом "ENDP", перед которым расположена метка, такая же, как и у ключевого слова "PROC". Последним оператором процедуры должен быть оператор "RET". Вызов процедуры осуществляется оператором "CALL".
01.209 базовая процедура (Ассемблера) base procedure (of an Assembler) Процедура, выполняющаяся вначале сегмента кода, в котором выполняются операторы программы, и осуществляется вызов других процедур. Эта процедура обычно имеет метку "BEGIN" или "MAIN".
01.210 длинный указатель long pointer Адрес ячейки памяти, которая определяется по формуле: "содержимое сегментного регистра" * 16 + "смещение от начала сегмента".
01.211 короткий указатель short pointer Адрес ячейки памяти, отсчитываемый как смещение от начала текущего сегмента.
01.212 смещение offset Отступ от начала сегмента некоторого количества байт. Смещение выражается шестнадцатеричным числом от 0000h до FFFFh (для 16-ти разрядной MS-DOS).
01.213 переменная variable Обозначение области памяти, выделяемой для некоторой хранимой величины, которая может изменяться во время выполнения программы.
01.214 константа 1 constant 1 Величина, значение которой не меняется в процессе выполнения программы.
01.215 адрес address Шестнадцатеричное число, поставленное в соответствие с номером ячейки памяти (размером 1 байт), отсчитываемое от начала области адресов.
01.216 безусловный переход unconditional jump Оператор (языка Ассемблера), изменяющий прямой порядок следования операторов, и передающий управление оператору, отмеченного меткой.
01.217 оператор operator На языке Ассемблер так называют инструкцию, генерирующую после трансляции машинный (исполняемый) код. Этим оператор отличается от директивы, не генерирующей никакого кода.
01.218 двоичный код binary code Код, состоящий из упорядоченной последовательности двоичных чисел, генерируемой программой. Двоичный код может быть исполняемым кодом, а может быть просто одним из файлов с данными.
01.219 объектный код object code Программа на выходе компилятора или Ассемблера. Объектный код затем требует дальнейшей компоновки (линкования) для преобразования в исполняемый код.
01.220 компилятор compilator Транслятор языка высокого уровня, выдающий на выходе не исполняемую инструкцию (как в интерпретаторе), а объектный код.
01.221 компоновка linkage Процесс создания готовой программы из объектного кода разных модулей в единую программу. При компоновке происходит установление связей между модулями, подключение библиотечных файлов, стандартных процедур и функций, а также модулей сторонних разработчиков.
01.222 редактор связей link editor = linkage editor Обслуживающая программа для компоновки объектного кода. В средствах разработки корпорации Microsoft используется редактор связей link.exe, а в средствах корпорации Borland - tlink.exe.
01.223 загрузчик связей link loader Обслуживающая программа, которая объединяет все отдельно скомпилированные модули основной программы, и представляет его в форме, удобной для исполнения. Смотри также редактор связей, компоновка.
< Лекция 12 || Дополнительный материал 1: 1234567