📘 О чем эта работа
Сборник лабораторных заданий по базовому программированию на языке Ассемблера для DOS-среды. Включены примеры создания и сборки простейших программ (файлы hello_1.asm и hello_2.asm), генерации объектных и исполняемых файлов с помощью TASM и TLINK, а также практическая отладка в TurboDebugger на примере файлов Prog_3.asm и prog_4.asm. Объектом являются исходные тексты и их машинные листинги; предмет — синтаксис ассемблера, команды передачи данных и арифметические операции с последующей отладкой.
📚 Что внутри
Документация и наглядные материалы, полученные в ходе выполнения работ:
- Листинги исходных файлов: hello_1.asm, hello_2.asm, Prog_3.asm, prog_4.asm — с комментариями и фрагментами кода.
- Сформированные файлы сборки: hello_1.obj, hello_1.lst, hello_1.exe и сопутствующие .map-файлы — показано содержимое и структура.
- Таблицы с разбором машинного кода и адресов (примеры: строки с командами mov, pop, imul, idiv) — приведены машинные коды, длина в байтах, логические и физические адреса и состояние регистров.
- Вычисления и пошаговая отладка арифметического выражения (вариант с A=-5, B=31, D=4): возведение в квадрат, сложение, деление и итоговые операции — зафиксировано, что деление прошло без остатка и результат соответствует ожиданию.
- Автоматизация сборки: примеры .bat-файлов (hello.bat, run.bat) с командами компиляции и линковки для упрощённого воспроизведения сборки.
- Образ размещения в памяти и сопоставление с .map: вычислены начала и концы сегментов данных, стека и кода (включая длины) и проверено соответствие с файлом .map.
- Примечание по среде: лабораторные выполнены в эмуляторе DOSBox — указано ограничение по доступу к ПЗУ и id.
📊 Для кого подходит
Материал ориентирован на студентов технических направлений (информатика, телекоммуникации) для курсов по языкам низкого уровня, дисциплин 'Программирование' или 'Архитектура ЭВМ'. Подходит для выполнения практических заданий, подготовки отчёта и отработки навыков отладки в TurboDebugger.
✨ Особенности
Конкретика из работы: представлены реальные файлы сборки и листинги, показана генерация .obj/.lst/.exe и .map, показан разбор машинных кодов (напр., C6 09 03 00 10, A0 00 00, 58, 59, 5B, F6 E6, F7 FB, 03 D8) и состояния регистров на контрольных точках. Приведены адресные диапазоны сегментов данных, стека и кода (начало/конец/длина), что облегчает проверку соответствия с .map и понимание размещения программы в памяти. Включены .bat-скрипты для автоматизации сборки и запуска — удобно для повторяемых практических упражнений.
❓ Частые вопросы
Подойдет ли для моего ВУЗа?
Структура лабораторий соответствует стандартным требованиям: постановка цели, ход работы с листингами, результатами компиляции и отладки, формирование .map и выводы по корректности выполнения.
Можно адаптировать?
Да. Исходные asm-файлы и .bat-скрипты легко редактировать под другие варианты, значения переменных и специфические требования преподавателя.