Приведены теоретические сведения об организации связей между модулями и способах передачи параметров при вызове подпрограмм на языке ассемблера из программ на том же языке или языках высокого уровня. Рассмотрены правила организации связей c примерами, демонстрирующими особенности компоновки модулей при использовании различных конвенций. Для студентов МГТУ им. Н.Э. Баумана, обучающихся по программе бакалавриата направления подготовки «Информатика и вычислительная техника» профиль «Вычислительные машины, комплексы, системы и сети».
Приведено описание основных возможностей среды RadAsm и отладчика OllyDbg. Рассмотрены форматы представления данных и способы их адресации. Представлены примеры простейших программ, демонстрирующие особенности программирования вычислений на ассемблере. Рассмотрены приемы программирования ветвлений, итерационных и счетных циклов с использованием основных команд передачи управления. Описаны способы адресации, используемые при моделировании одно-и двумерных массивов (матриц). Приведены конвенции о связи разноязыко-вых модулей. Все перечисленные приемы проиллюстрированы примерами программ, аналогичных разрабатываемым в процессе лабораторных работ. Для студентов 2-го курса МГТУ им. Н.Э. Баумана, обучающихся по программе бакалавриата направлений подготовки «Информатика и вычислительная техника» и «Прикладная информатика».
Представлен методический материал для выполнения практикума, состоящего из пяти лабораторных работ по дисциплине «Машинозависимые языки и основы компиляции». В лабораторных работах № 1–4 приведены общие сведения о программировании на языке ассемблера NASM в операционной системе Linux. В лабораторной работе № 5 приведены особенности создания программ, содержащих модули на разных языках программирования, включая ассемблер. Определены цели лабораторных работ, пояснены сложные моменты программирования, приведены задания, описан порядок их выполнения и сформулированы требования к отчету. Даны рекомендации по настройке транслятора NASM, компоновщика Ld и отладчика Edb. Рассмотрены форматы представления данных и способы их адресации. Представлены фрагменты программ, демонстрирующие особенности программирования на языке ассемблера. Для студентов МГТУ им. Н.Э. Баумана, обучающихся по программам бакалавриата направлений «Информатика и вычислительная техника» и «Прикладная информатика».
Изложены сведения из математической логики и теории формальных языков, составляющие основу для построения лексических и синтаксических анализаторов. Приведены математические определения формального языка и формальной грамматики, описана классификация формальных грамматик Хомского. Рассмотрены способы построения распознающих конечных автоматов и автоматов с магазинной памятью, а также метод рекурсивного спуска и метод грамматического разбора, основанный на свойствах грамматик с операторным предшествованием. Для студентов второго курса, проходящих обучение на кафедре «Компьютерные системы и сети» по направлениям подготовки 09.03.01 «Информатика и вычислительная техника» и 09.03.03 «Прикладная информатика», изучающих модуль 3 дисциплины «Машинно-зависимые языки и основы компиляции».
Представлены основные структуры и методы обработки данных, критерии оценки алгоритмов и структур данных. Приведены примеры этих структур, способы оценки и повышения эффективности программ, способы тестирования программ. Для студентов МГТУ им. Н. Э. Баумана, обучающихся по направлению подготовки «Информатика и вычислительная техника».
Представлены краткое описание основных структур и методов обработки данных, критерии оценки алгоритмов и структур данных, примеры структур данных, способы оценки и повышения эффективности программ, способы тестирования программ, варианты заданий, порядок выполнения и требования к защите лабораторных работ, предусмотренных учебным планом МГТУ им. Н. Э. Баумана. Для студентов МГТУ им. Н. Э. Баумана, обучающихся по направлению подготовки «Информатика и вычислительная техника».
Издание содержит описание основных приемов процедурного и объектно-ориентированного программирования, изучение которых предусмотрено программой дисциплины «Основы программирования». Указаны цели каждого семинарского занятия, представлен основной теоретический материал, перечислены задачи, рекомендуемые для решения. Дан справочный материал, содержащий необходимые определения, выполнен подробный разбор алгоритмов с указанием практических приемов, приведен перечень вопросов, на которые должны ответить студенты по завершении занятия. Для преподавателей кафедры «Компьютерные системы и сети» МГТУ им. Н. Э. Баумана, проводящих семинарские занятия по обучению основам программирования. Издание может быть полезно преподавателям информатики и основ программирования других кафедр университета, а также студентам, обучающимся основам программирования.
Подробно рассмотрены основные методы и нотации, применяемые при разработке сложного программного обеспечения. Особое внимание уделено проектированию программных систем с использованием структурного и объектного подходов. Детально разобраны основные приемы обеспечения требуемых технологических свойств. Приведена классификация и проанализированы принципы проектирования пользовательских интерфейсов программного обеспечения. Материал учебника проиллюстрирован большим количеством примеров, поясняющих рисунков и проектной документации. Соответствует ФГОС ВО последнего поколения. Для студентов вузов, которые обучаются по направлениям, предполагающим изучение технологии программирования. Полезен при оформлении документации к курсовым и дипломным работам и проектам, связанным с разработкой программного обеспечения. Может быть интересен всем изучающим программирование самостоятельно.
Изложены основные теоретические положения разработки программного обеспечения с использованием структурного и объектного подходов. Рассмотрены основные приемы решения задач различных классов, в том числе приемы создания и обработки динамических структур данных, без которых невозможно современное программирование. Отдельное внимание уделено оценке точности получаемых результатов и анализу вычислительной сложности алгоритмов и методов. Большое количество примеров и поясняющих рисунков способствует лучшему усвоению материала. Соответствует ФГОС ВО последнего поколения. Для студентов бакалавриата, обучающихся по специальностям, предполагающим изучение программирования. Может быть полезен всем изучающим программирование самостоятельно.
Изложены основные теоретические положения разработки программного обеспечения с использованием структурного и объектного подходов. Рассмотрены основные приемы решения задач различных классов, в том числе приемы создания и обработки динамических структур данных, без которых невозможно современное программирование. Отдельное внимание уделено оценке точности получаемых результатов и анализу вычислительной сложности алгоритмов и методов. Большое количество примеров и поясняющих рисунков способствует лучшему усвоению материала. Соответствует ФГОС ВО последнего поколения. Для студентов бакалавриата, обучающихся по специальностям, предполагающим изучение программирования. Может быть полезен всем изучающим программирование самостоятельно.