- •Б) Системное программное обеспечение и пользовательский интерфейс.
- •Назначение операционной системы
- •Ос семейства Windows
- •Unix-подобные ос
- •Б) Средства защиты информации.
- •Б) База данных.
- •Основные функции субд
- •5. Журнализация
- •6. Поддержка языков бд
- •Б) Основы защиты информации.
- •Информационная безопасность и её составляющие.
- •Основные угрозы безопасности данных
- •Свойства алгоритма
- •Назначение операционной системы
- •Ос семейства Windows
- •Unix-подобные ос
- •Модемная компьютерная телекоммуникация.
- •Организация связи.
- •Программное обеспечение модемной телекоммуникации.
- •Факс-модемная телекоммуникация
- •Достоинства и недостатки Принстонской архитектуры.
- •Достоинства и недостатки Гарвардской архитектуры.
- •Б) Прикладное программное обеспечение.
- •Б) Обзор языков программирования высокого уровня.
- •Б) Технология программирования.
- •Основные функции субд
- •5. Журнализация
- •6. Поддержка языков бд
- •Б) Телекоммуникации.
- •Модемная компьютерная телекоммуникация.
- •Организация связи.
- •Программное обеспечение модемной телекоммуникации.
- •Факс-модемная телекоммуникация
- •Б) Компьютерная графика и системы геометрического моделирования.
- •Геометрическое моделирование и его задачи
- •Краткая характеристика, особенности cad-систем некоторых сапр
- •Общие вопросы геометрического моделирования. Графические объекты
- •Плоское геометрическое моделирование. Примитивы и их атрибуты
- •Объёмное геометрическое моделирование.
- •Основные положения использования операционной программы Windows для управления графическими компьютерными программами
- •Использование справочной системы. Применение интерактивных графических систем для решения задач геометрического моделировани
- •Общие вопросы создания и редактирования графических документов (на примере компас-3d)
- •Б) Компьютерная графика и системы геометрического моделирования.
- •Геометрическое моделирование и его задачи
- •Краткая характеристика, особенности cad-систем некоторых сапр
- •Общие вопросы геометрического моделирования. Графические объекты
- •Плоское геометрическое моделирование. Примитивы и их атрибуты
- •Объёмное геометрическое моделирование.
- •Основные положения использования операционной программы Windows для управления графическими компьютерными программами
- •Использование справочной системы. Применение интерактивных графических систем для решения задач геометрического моделировани
- •Общие вопросы создания и редактирования графических документов (на примере компас-3d)
- •Назначение и основные функции Excel
- •Б) Структура информатики как науки. Связь информатики и кибернетики. Информационные технологии. Информационные продукты и услуги.
- •Б) Структура информатики как науки. Связь информатики и кибернетики. Информационные технологии. Информационные продукты и услуги.
- •Способы моделирования:
- •Б) Информационное общество. Информационная картина мира.
- •Б) Эволюция методологии программирования: процедурное программирование — модульное программирование — объектно-ориентированное программирование.
- •Определение ооп и его основные концепции.
- •Концепции.
- •Контроль доступа
- •Свойства объекта
- •Подходы к проектированию программ в целом.
- •Прототипное программирование
- •Критика ооп
- •Критика рекламы ооп.
- •Объектно-ориентированные языки
- •Мультипрограммирование. Формы многопрограммной работы
- •А) Понятие информационной культуры. Понятие информации. Свойства информации. Информационные революции. Информатизация общества.
- •Системы для работы с электронными документами
- •Б) Информационные технологии. Связь информационных технологий и информационных систем. Основные виды информационных технологий.
- •Назначение и основные функции Excel
- •Б) Настольные издательские системы
- •Б) Информационные технологии : сапр, асу
- •Интегрированная информационная среда
- •Эволюция кис
- •Вариант 24.
- •Предпосылки быстрого развития информационных технологий
- •Этапы развития информационных технологий
- •Системы для работы с электронными документами
- •Трехмерная компьютерная графика
- •Компьютерное моделирование и имитация
- •Сетевая виртуальная реальность
- •Аппаратные средства виртуальной реальности
- •Применение технологии виртуальной реальности
- •Виртуальная реальность в промышленности
- •Виртуальные решения
- •Области применения мультимедиа.
- •Программные средства мультимедиа.
- •Технологии мультимедиа.
- •Б) Информационные технологии. Связь информационных технологий и информационных систем. Основные виды информационных технологий.
- •Понятие «информация», ее виды
- •Понятие «информационный ресурс», виды
- •Информатизация, ее основные задачи
- •Информационный рынок, его сектора
- •Понятия «информационная система» и «автоматизированная информационная система»
- •Предметная область автоматизированной информационной системы
- •Категории пользователей аис
- •Понятие «информационные технологии»
- •Поколения развития компьютеров и информационных технологий
- •Классификация информационных технологий
- •Основные тенденции развития информационных технологий
- •Компьютерные технологии работы с базами данных
- •Новые информационные технологии в образовании
- •Технология поиска информации
- •Основы информационной безопасности компьютера
Б) Средства защиты информации.
Средства защиты информации - это вся линейка инженерно-технических, электрических, электронных, оптических и других устройств и приспособлений, приборов и технических систем, а также иных изделий, применяемых для решения различных задач по защите информации, в том числе предупреждения утечки и обеспечения безопасности защищаемой информации.
В целом средства защиты информации в части предотвращения преднамеренных действий в зависимости от способа реализации можно разделить на группы:
• Технические (аппаратные) средства защиты информации. Это различные по типу устройства (механические, электромеханические, электронные и др.), которые на уровне оборудования решают задачи информационной защиты, например, такую задачу, как защита помещения от прослушивания. Они или предотвращают физическое проникновение, или, если проникновение все же случилось, препятствуют доступу к данным, в том числе с помощью маскировки данных. Первую часть задачи обеспечивают замки, решетки на окнах, защитная сигнализация и др. Вторую - генераторы шума, сетевые фильтры, сканирующие радиоприемники и множество других устройств, «перекрывающих» потенциальные каналы утечки информации (защита помещения от прослушивания) или позволяющих их обнаружить.
• Программные и технические средства защиты информации включают программы для идентификации пользователей, контроля доступа, шифрования информации, удаления остаточной (рабочей) информации типа временных файлов, тестового контроля системы защиты и др.
• Смешанные аппаратно-программные средства защиты информации реализуют те же функции, что аппаратные и программные средства в отдельности, и имеют промежуточные свойства, такие как защита помещения от прослушивания.
• Организационные средства защиты информации складываются из организационно-технических (подготовка помещений с компьютерами, прокладка кабельной системы с учетом требований ограничения доступа к ней и др.) и организационно-правовых (национальные законодательства и правила работы, устанавливаемые руководством конкретного предприятия).
Техническая защита информации как часть комплексной системы безопасности во многом определяет успешность ведения бизнеса. Основная задача технической защиты информации -- выявить и блокировать каналы утечки информации (радиоканал, ПЭМИН, акустические каналы, оптические каналы и др.). Решение задач технической защиты информации предполагает наличие специалистов в области защиты информации и оснащение подразделений специальной техникой обнаружения и блокирования каналов утечки. Выбор спецтехники для решения задач технической защиты информации определяется на основе анализа вероятных угроз и степени защищенности объекта.
Блокираторы сотовой связи (подавители сотовых телефонов), в просторечье называемые глушителями сотовых - эффективное средство борьбы с утечкой информации по каналу сотовой связи. Глушители сотовых работают по принципу подавления радиоканала между трубкой и базой. Технический блокиратор утечки информации работает в диапазоне подавляемого канала. Глушители сотовых телефонов классифицируют по стандарту подавляемой связи (AMPS/N-AMPS, NMT, TACS, GSM900/1800, CDMA, IDEN, TDMA, UMTS, DECT, 3G, универсальные), мощности излучения, габаритам. Как правило, при определении излучаемой мощности глушителей сотовых телефонов учитывается безопасность находящихся в защищаемом помещении людей, поэтому радиус эффективного подавления составляет от нескольких метров до нескольких десятков метров. Применение блокираторов сотовой связи должно быть строго регламентировано, так как может создать неудобства для третьих лиц.
Вариант 3.
а) Системы счисления. Двоичная система счисления. Понятие о машинном коде и языке Ассемблера. Коды ASII.
Системы счисления. Для начала проведем границу между числом и цифрой. Число это некоторая абстрактная сущность для описания количества. Цифры это знаки используемые для записи чисел. Цифры бывают разные, самыми распространенными являются арабские цифры, они представляются известными знаками от нуля (0) до девяти (9), еще распространены римские цифры, мы их можем иногда встретить на циферблате часов или в обозначении века (IXX век).
Итак запомним: число, это абстрактная мера количества, цифра это знак для записи числа.
Существует множество способов записи чисел с помощью цифр. Эти способы грубо можно разделить на две части:
позиционные системы счислений;
непозиционные системы счислений.
Позиционные системы счислений мы рассмотрим более подробно ниже. Расскажем вкратце о непозиционных системах счислениях.
Непозиционные системы счислений. В непозиционной системе счисления величина числа не зависит от положения цифры в представлении числа. Если бы мы перемешали цифры в числе 603121200000, то мы бы не смогли понять сколько стоит пылесос, в непозиционной системе такого не случиться. Ярким примером непозиционной системы счисления является римская система
Позиционные системы счислений. Чем хороши позиционные системы счисления? Тем, что они позволяют легко производить арифметические расчеты. Попробуйте считать используя, например римские цифры. Сколько будет ? То-то, а вот достаточно представить эти числа арабскими цифрами и мы легко сможем посчитать в столбик .
Представление чисел с помощью арабских цифр самая распространенная позиционная система счисления, она называется «десятичной системой счисления». Десятичной системой она называется потому, что использует десять цифр. Вот эти цифры: 0, 1, 2, 3, 4, 5, 6, 7, 8 и 9. Внимательно их пересчитайте — их ровно десять. Замете: максимальная цифра (9) на единичку меньше количества цифр (10).
Компьютер, в отличии от человека, хорошо разбирается в двоичной системе, он использует цифры: 0 и 1. Обратите внимание, что и здесь: система двоичная, а максимальная цифра 1.
Программисты пользуются, для упрощения себе жизни, еще восьмеричной и шестнадцатеричной системами счисления.
Количество цифр используемых в системе счисления называется «основанием». В десятичной системе основание равно десяти, в двоичной системе основание равно двум, ну а в восьмеричной и шестнадцатеричной соответственно восьми и шестнадцати.
В общем случае в позиционной системе счисления числа представляются следующим образом: (anan − 1...a0)f, где a0,a1,...,an - цифры, а f - основание системы счисления. Если используется десятичная система, то f — можно опустить
Двоичная система счисления. Двоичная система счисления, т.е. система с основанием h=2, является «минимальной» системой, в которой полностью реализуется принцип позиционности в цифровой форме записи чисел. В двоичной системе счисления значение каждой цифры «по месту» при переходе от младшего разряда к старшему увеличивается вдвое.
История развития двоичной системы счисления – одна из ярких страниц в истории арифметики. Официальное «рождение» двоичной арифметики связывают с именем Г. В. Лейбница, опубликовавшего статью, в которой были рассмотрены правила выполнения всех арифметических операций над двоичными числами. До начала тридцатых годов XX века двоичная система счисления оставалась вне поля зрения прикладной математики. Потребность в создании надежных и простых по конструкции счетных механических устройств и простота выполнения действий над двоичными числами привели к более глубокому и активному изучению особенностей двоичной системы как системы, пригодной для аппаратной реализации. Первые двоичные механические вычислительные машины были построены во Франции и Германии. Утверждение двоичной арифметики в качестве общепринятой основы при конструировании ЭВМ с программным управлением состоялось под несомненным влиянием работы А. Бекса, Х. Гольдстайна и Дж. Фон Неймана о проекте первой ЭВМ с хранимой в памяти программой, написанной в 1946 году. В этой работе наиболее аргументированно обоснованы причины отказа от десятичной арифметики и перехода к двоичной системе счисления как основе машинной арифметики.
В двоичной системе счисления используются только два символа, что хорошо согласуется с техническими характеристиками цифровых схем. Действительно очень удобно представлять отдельные составляющие информации с помощью двух состояний:
Отверстие есть или отсутствует (перфолента или перфокарта);
Материал намагничен или размагничен (магнитные ленты, диски);
Уровень сигнала большой или маленький.
Существуют специальные термины, широко используемые в вычислительной технике: бит, байт и слово.
Битом называют один двоичный разряд. Крайний слева бит числа называют старшим разрядом (он имеет наибольший вес), крайний справа – младшим разрядом (он имеет наименьший вес).
Восьмибитовая единица носит название байта.
Совершенно очевидно, что двоичное число представляется последовательностью нулей и единиц – разрядов. Как и в любой позиционной системе, каждому разряду присвоен определенный вес – показатель степени основания системы.
В двоичной системе счисления даже сравнительно небольшие числа занимают много позиций.
Как и в десятичной системе, в двоичной системе счисления для отделения дробной части используется точка (двоичная точка). Каждая позиция слева от этой точки также имеет свой вес – вес разряда дробной части числа. Значение веса в этом случае равно основанию системы счисления (т.е. двойке), возведенному в отрицательную степень.
Получить десятичное число из двоичного чрезвычайно просто. Согласно формуле для двоичной системы счисления получаем:
Метод деления.Разделим нацело десятичное число на двойку. Если есть остаток, запишем в младший разряд единицу, а если нет – нуль и снова разделим результат от первого деления. Повторим процедуру так до тех пор, пока окончательный результат не обнулиться.
Метод вычитания. Из десятичного числа вычитаются наибольшая возможная степень двойки, в соответствующий разряд двоичного числа записывается единица, если разность меньше следующей степени двойки, то далее записывается нуль, а если больше записывается единица и опять производится вычитание, и так до тех пор, пока исходное число не уменьшится до нуля.
И, наконец, метод умножения. Метод применяется для преобразования десятичных дробей (чисел меньших единицы).
Число умножается на 2, если результат 1, то в старший разряд записывается единица, если нет, то нуль. Умножаем на 2 дробную часть результата и повторяем процедуру. И так далее до получения нужной степени точности или до обнуления результата.
Понятие о машинном коде и языке Ассемблера. Машинный язык - система команд, непосредственно понимаемых аппаратурой данной электронно-вычислительной системы. Как следствие этого, машинный язык однозначно определяется системой команд процессора и архитектурой компьютера.
Набор команд процессора содержит:
арифметико-логические команды - команды арифметических действий над двоичными числами и логических действий над двоичными векторами;
команды управления - команды перехода, ветвлений, повторений, и некоторые другие команды;
команды пересылки данных - команды, с помощью которых обмениваются данными ОЗУ и ЦП;
команды ввода-вывода данных - команды, с помощью которых обмениваются данными ЦП и внешние устройства.
Каждая команда содержит код операции, ею выполняемой и информацию об адресах данных, над которыми эта операция выполняется. Кроме этого, команда (непосредственно - команды управления и косвенно - другие команды) содержит информацию об адресе команды, которая будет выполняться следующей. Таким образом, любая последовательность команд, размещенная в ОЗУ, фактически представляет из себя алгоритм, записанный в системе команд процессора - машинную программу.
Наиболее распространенной сейчас является архитектура ЭВМ с общей шиной. Общая шина - это центральная информационная магистраль, связывающая внешние устройства с центральным процессором. Она состоит из шины данных, шины адреса и шины управления. Шина данных предназначена для обмена данными между ОЗУ и внешними устройствами. По шине адреса передаются адреса данных. Эта шина однонаправлена. Шина управления служит каналом обмена управляющими сигналами между внешними устройствами и центральным процессором.
Таким образом, машинный язык (язык процессора) - это набор команд, каждая из которых описывает некоторое элементарное действие по преобразованию информации, представленной в двоичном коде. Универсальное использование двоичного кода представления информации самых разнообразных форм приводит к тому, что программа решения даже достаточно простой задачи содержит сотни машинных команд. Написать такую программу, используя машинные команды, весьма непросто даже квалифицированному программисту. Реальные программы состоят из десятков и сотен тысяч машинных команд. Поэтому любая технология проектирования программы должна опираться на приемы, характерные для человеческого мышления, оперировать привычными для человека понятиями из той предметной области, которой принадлежит задача.
Иными словами, программист (проектировщик алгоритмов) должен иметь возможность сформулировать свой алгоритм на языке привычных понятий; затем специальная программа должна выразить эти понятия с помощью машинных средств, осуществляя перевод (трансляцию) текста алгоритма на язык машины.
Эта необходимость и привела к появлению языков программирования высокого уровня как языков записи алгоритмов, предназначенных для исполнения на ЭВМ.
Машинно-ориентированные языки. Предшественниками языков высокого уровня стали так называемые машинно-ориентированные языки или языки автокодов. Одним из самых ярких представителей машинно-ориентированных языков является Ассемблер. Ассемблер очень близок к машинному языку, большинство его инструкций является точным символическим представлением машинных команд. Преимущество состоит в том, что уже нет необходимости помнить числовые коды команд процессора, достаточно знать их символическое представление. Кроме этого, впервые в машинно-ориентированных языках появляется понятие переменной, как именованной области памяти для хранения данных, а вместе с ним и понятие типа данных. В программах на машинно-ориентированном языке появляется возможность использовать как числовую так и текстовую информацию в привычной для человека форме.
Несмотря на явные преимущества машинно-ориентированных языков перед сугубо машинным языком, написание программ на этих языках по прежнему сопряжено со значительными трудностями. Программы получаются очень громоздки и трудно читаемы.
Языки программирования высокого уровня. Языки программирования высокого уровня играют роль средства связи между программистом и машиной, а также между программистами. Это обстоятельство накладывает на язык многие обязательства:
Язык должен быть близок к тем фрагментам естественных языков, которые обеспечивают конкретную предметную область деятельности человека; (Язык, ориентированный на деловые сферы применений, должен содержать понятия, используемые в этом виде деятельности: документ, счет, база данных и т.п.).
Все средства языка должны быть формализованы в такой степени, чтобы их можно было реализовать как машинные программы; (например, предложение “Найти документ X в базе Y“ должно породить программу в машинном языке, осуществляющую требуемый поиск).
Язык программирования не только поддерживает предметно-ориентированную деятельность, но и стимулирует ее развитие. (понятие базы данных, вычислительной сети привело к революции в деловой деятельности).
Язык программирования - нечто большее, чем средство описания алгоритмов: он несет в себе систему понятий, на основе которых человек может обдумывать свои задачи, и нотацию, с помощью которой он может выразить свои соображения по поводу решения задачи.
Изучая новый язык программирования, лучше всего к нему относиться, как к любому другому иностранному языку: средства языка принимать как данные от Бога, даже если они нам кажутся непонятными, плохими или ненужными
Язык ассемблера — тип языка программирования низкого уровня, это специальная программа, которая преобразует (компилирует) исходные тексты вашей программы, написанной на языке ассемблера, в исполняемый файл (файл с расширением EXE или COM). Если быть точным, то для создания исполняемого файла требуются дополнительные программы, а не только ассемблер. Но об этом позже… Команды языка ассемблера один в один соответствуют командам процессора и, фактически, представляют собой удобную символьную форму записи (мнемокод) команд и аргументов. Также, язык ассемблера обеспечивает связывание частей программы и данныx через метки, выполняемое при ассемблировании (для каждой метки высчитывается адрес, после чего каждое вхождение метки заменяется на этот адрес). Каждая модель процессора, в принципе, имеет свой набор команд и соответствующий ему язык (или диалект) ассемблера. Обычно программы или участки кода пишутся на языке ассемблера в случаях, когда разработчику критически важно оптимизировать такие параметры, как быстродействие (например, при создании драйверов) и размер кода (загрузочные сектора, программное обеспечение для микроконтроллеров и процессоров с ограниченными ресурсами, вирусы, навесные защиты). Связывание ассемблерного кода с другими языками. Большинство современных компиляторов позволяют комбинировать в одной программе код, написанный на разных языках программирования. Это позволяет быстро писать сложные программы используя высокоуровневый язык, не теряя быстродействия в критических ко времени задачах, используя для них части написанные на языке ассемблера. Комбинирование достигается несколькими приемами: Вставка фрагментов на языке ассемблера в текст программы (специальными директивами языка) или написание процедур на языке ассемблера. Способ хороший для несложных преобразований данных, но полноценного ассемблерного кода — с данными и подпрограммами, включая подпрограммы с множеством входов и выходов, не поддерживаемых высокоуровневыми языками, с помощью него сделать нельзя. Модульная компиляция. Большинство современных компиляторов работают в два этапа. На первом этапе каждый файл программы компилируется в объектный модуль. А на втором объектные модули линкуются (связываются) в готовую программу. Прелесть модульной компиляции состоит в том что каждый объектный модуль будущей программы может быть полноценно написан на своем языке программирования и скомпилирован своим компилятором (ассемблером). Синтаксис. Единого стандарта для синтаксиса языков ассемблера не существует, конкретный разработчик волен установить свои собственные синтаксические правила. Однако существуют традиционные подходы, которых придерживаются языки ассемблера для наиболее распространённых процессорных архитектур, своего рода стандарт de facto. Так основными стандартами являются стандарты — Intel и AT&T. Каждая инструкция записывается в отдельной строке. Полный формат каждой строки инструкций следующий: label: code ; comment где label — название метки; code — собственно, инструкция языка ассемблера; comment — комментарий. При этом один или два компонента строки могут отсутствовать, то есть строка может состоять, к примеру, только из комментария, или содержать только метку или инструкцию. Объекты, над которыми производятся действия, это регистры процессора и участки оперативной памяти. Обозначения для них также являются частью синтаксиса. Ассемблерная инструкция, состоит из мнемоники команды и списка аргументов через запятую (один, два или три в зависимости от инструкции). Мнемоникой команды служит трёх- или четырёхбуквенными сокращениями их аналогов, обычно на английском языке, например: jmp — продолжать выполнение с нового адреса памяти (от англ. jump - прыжок) mov — переместить данные (от англ. move - передвинуть) sub — получить разность двух значений (от англ. subtract - вычесть) xchg — обменять значения в регистрах/ячейках памяти (от англ. exchange - обмен) От ассемблера к ассемблеру меняется синтаксис аргументов, но мнемоники, обычно, остаются одинаковыми (такими какие используются в оригинальной спецификации процессора), за исключением двух случаев: Если ассемблер использует кроссплатформенный AT&T-синтаксис, то оригинальные мнемоники приводятся к синтаксису AT&T. Если изначально существовало два стандарта записи мнемоник (система команд была наследована от процессора другого производителя). Например процессор Zilog Z80 наследовал систему команд Intel i8080, расширил ее и поменял мнемоники (и обозначения регистров) на свой лад. Например сменил интеловские «mov» на «ld» (команда перемещения данных). Процессоры Motorola Fireball наследовали систему команд Z80, несколько её урезав. Вместе с тем, Motorola официально вернулась к мнемоникам Intel. И в данный момент половина ассемблеров для Fireball работает с интеловскими мнемониками, а половина с мнемониками Zilog. Текст программ может быть дополнен директивами ассемблера (параметры, влияющие на процесс ассемблирования и свойства выходного файла). Каждый ассемблер имеет собственные директивы. Для упрощения и ускорения написания программ на языке ассемблера служат макросы. Достоинства языка ассемблера. Максимально оптимальное использование средств процессора, использование меньшего количества команд и обращений в память, и как следствие — большая скорость и меньший размер программы Использование расширенных наборов инструкций процессора (MMX, SSE, SSE2, SSE3) Доступ к портам ввода-вывода и особым регистрам процессора (в большинстве ОС эта возможность доступна только на уровне модулей ядра и драйверов) Возможность использования самомодифицирующегося (в том числе перемещаемого) кода (под многими платформами эта возможность недоступна, так как запись в страницы кода запрещена, в том числе и аппаратно, однако в большинстве общедоступных систем из-за их врожденных недостатков имеется возможность исполнения кода содержащегося в сегменте (секции) данных, куда запись разрешена) Максимальная «подгонка» для нужной платформы NB: Последние технологии безопасности, внедряемые в операционные системы и компиляторы, не позволяют делать самомодифицирующего кода, так как исключают одновременную возможность исполнения программы и запись в одном и том же участке памяти (технология W^X). Технология W^X используется в OpenBSD (где и появилась), в других BSD-системах, в Linux; в Microsoft Windows (начиная с Windows XP SP2) используется схожая технология DEP. Недостатки. Большие объемы кода, большое число дополнительных мелких задач, меньшее количество доступных для использования библиотек, по сравнению с языками высокого уровня Трудоёмкость чтения и поиска ошибок (хотя здесь многое зависит от комментариев и стиля программирования) Зачастую компилятор языка высокого уровня, благодаря современным алгоритмам оптимизации, даёт более эффективную программу (по соотношению качество/время разработки). Непереносимость на другие платформы (кроме совместимых). Ассемблер более сложен для совместных проектов. Пример программы на языке ассемблера. Пример программы для операционной системы DOS на процессоре семейства Intel x86, выдающей на экран приветствие (написан на TASM): mov bx,1 ; указание направления вывода (на экран) mov cx,13 ; указание количества символов строки mov dx,offset msg ; поместить в регистр DX смещение строки mov ah,40h ; выбор функции вывода строки int 21h ; вызов прерывания DOS "Набор процедур" для вывода строки int 20h ; вызов прерывания DOS (завершение программы) msg DB 'Hello, World!$' msg — метка (идентификатор), упрощающая доступ к данным. Происхождение и критика термина «язык ассемблера» Данный тип языков получил свое название от названия транслятора (компилятора) с этих языков — ассемблера (англ. assembler — сборщик). Название последнего обусловлено тем, что на древних компьютерах не существовало языков более высокого уровня, и единственной альтернативой созданию программ с помощью ассемблера было программирование непосредственно в кодах. Язык ассемблера в русском языке часто называют «ассемблером» (а что-то связанное с ним — «ассемблерный»), что, согласно английскому переводу слова, неправильно, но вписывается в правила русского языка. Однако, сам ассемблер (программу) тоже называют просто «ассемблером», а не «компилятором языка ассемблера» и т.п. Использование термина «язык ассемблера» также может вызвать ошибочное мнение о существовании единого языка низкого уровня, или хотя бы стандарта на такие языки. При именовании языка, на котором написана конкретная программа, желательно уточнять, для какой архитектуры она предназначена и на каком диалекте языка написана.
