- Notifications
You must be signed in to change notification settings - Fork2
🎓 Ассемблер, BMSTU, 4 семестр, IU7(2018)
License
zakolm/ASM
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
https://www.youtube.com/channel/UCrCco84KnzhtLEDE2LjMq7g/playlists
Number | Issued | Status | On GitHub | Exercise |
---|---|---|---|---|
1️⃣ | ✅ | ✅ | ✅ | |
2️⃣ | ✅ | ✅ | ✅ | |
3️⃣ | ✅ | ✅ | ✅ | - Подготовить приведенную ниже программу к отладке в CV и выполнить работы, описанные в тексте программы.- Проследить за выполнением команд от M1 до M6 и изменением переменных и регистров. Сформулировать условие задачи, решаемой программой. Назначение некоторых команд:- Составить файл ЛР02-2.INP с командами CV так, чтобы его выполнение привело к созданию файла ЛР02-2.OUT, содержащего весь вывод в окно диалога. Этот вывод должен содержать на метках M1 ... M6 следующую информацию: |
4️⃣ | ✅ | ✅ | ✅ | |
5️⃣ | ✅ | ✅ | ✅ | |
6️⃣ | ✅ | ✅ | ✅ | |
7️⃣ | ✅ | ✅ | ✅ | |
8️⃣ | ✅ | ✅ | ✅ | |
9️⃣ | ✅ | ✅ | ✅ | |
1️⃣0️⃣ | ✅ | ✅ | ✅ | |
1️⃣1️⃣ | ✅ | ✅ | ✅ | |
1️⃣2️⃣ | ✅ | ✅ | ✅ |
Архитектура МП 8088 и 80386
Характеристики регистров.
Флаги.
Сегментные регистры по умолчанию.
Образование физического адреса.
Сегментный префикс.
Структура программы одномодульной MS DOS. Повторные описания сегментов.
Возможные структуры кодового сегмента.
Возможные способы начала выполнения и завершения программы MS DOS типа .exe.
Структура программы из нескольких исходных модулей MS DOS.
Переменные, метки, символические имена и их атрибуты.
Виды предложений языка Ассемблер.
Директивы (псевдооператоры): назначение и формы записи.
Стандартные директивы описания сегментов: формат записи заголовков директив и назначение параметров.
Возможные комбинации сегментов и умолчания.
Директива ASSUME.
Структура процедур.
Директива END.
Внешние имена.
Типы данных и задание начальных значений.
Способы описания меток, типы меток.
Команды условных переходов при работе с ЦБЗ и ЦСЗ.
Команды организации циклов.
Директива ORG.
Способы адресаци.
Организация рекурсивных подпрограмм.
Арифметические команды (для ЦБЗ и ЦСЗ)
Связывание подпрограмм.
Команда CALL. Использование прямой и косвенной адресации.
Способы передачи параметров подпрограмм.
Способы сохранения и восстановления состояния вызывающей программы (кто выполняет и в чьей памяти)
Соглашения о связях в Turbo Рascal, Turbo C, Delphi, VS C++
Команды сдвига.
Команды логических операций.
Команды обработки строк и префиксы повторения.
Команды пересылки строк.
Команды сравнения строк.
Команды сканирования строк.
Команды загрузки строк.
Команды сохранения строк.
Листинг программы.
Макросредства.
Описания макроопределений (макрофункций и макропроцедур) и макрокоманд.
Директива INCLUDE.
Рекурсия в макроопределениях.
Параметры в макросах.
Директива LOCAL.
Директивы условного ассемблирования IF, IFE, IF2, IFIDN/IFIDNI, IFDIF/IFDIFI, IFDEF, IFNDEF и связанные с ними конструкции.
Директивы IFB и IFNB в макроопределениях.
Директивы IFIDN и IFDIF в макроопределениях.
Операции ;; % & < > ! в макроопределениях.
Блок повторения REРT.
Блок повторения IRР/FOR.
Блок повторения IRРC/FORC.
Блок повторения WHILE.
Директива EQU в MASM.
Директива TEXTEQU в MASM32.
Директива = в MASM.
Типы макроданных text и number (см листинг)
Именованные макроконстанты MASM32
Макроимена, числовые и текстовые макроконстанты - значения.
Директивы echo и %echo
Способы вывода значений макропеременных и макроконстант с пояснениями
Операций в выражениях MASM:
- Арифметические операции.
- Логические операции.
- Операции отношений.
- Операции, возвращающие значения.
- Операции присваивания атрибута.
Подготовка ассемблерных объектных модулей средствами командной строки для использования в Delphi и VS C++.
Добавление ассемблерных модулей в проект консольного приложения VS C++
Добавление ассемблерных модулей в проект консольного приложения Delphi
Использование ассемблерных вставок в модулях .cpp.
Вызов из ассемблерной подпрограммы C в VS C++.
Передача глобальных данных, определённых в консольной прогрпмме VS C++, в ассемблерный модыль.
Передача глобальных данных, определённых в ассемблерном модуле в консольнй модуль .cpp VS C++.
Средства отладки в CodeView. Примеры.
Средства отладки в VS C++. Примеры.
Получение дизассемблированного кода в VS C++