Flat Assembler (Fasm)
В настоящее время существует множество компиляторов для программирования на языке ассемблера. Многие уже устарели и не являются актуальными, некоторые, считаются относительно молодыми, но большинство из них ориентированы для программирования под операционную систему DOS, но как быть, если у большинства пользователей стоит Windows? И для программирования на операционной системы Windows, также существует довольно много компилятров, но мы будем использовать Fasm, так, как он имеет ряд преимуществ.
так, как он простой в использовании, в нём поддерживается использование микроинструкций, и он имеет подсветку кодa
Flat Assembler (Fasm) – Проект был начат в 1999 году Томашом Грыштаром, несмотря на свою «молодость» он считается довольно перспективным компилятором. В первую очередь это многопроходной, свободно распространяемый, ассемблер для архитектуры x86 процессора, с открытым исходным кодом, обладающий небольшими размерами, высокой скоростью компиляции, довольно низкими требованиями к набору инструкций процессора. Логика этого компилятора не зависит от операционной системы. FASM реализован в нескольких вариациях, отличающихся только графическим и консольным интерфейсом взаимодействия с пользователем, а также окружением операционной системы. Помимо этого, у Flat Assembler имеется еще несколько преимуществ - простота в использовании, понятный, англоязычный интерфейс и доступность – данный компилятор полностью бесплатный.
Fasm позволяет вести разработку приложения для следующих ОС:
· DOS;
· Windows: NT, XP, Vista, 7, 10;
· Системы, основанные на Linux;
· FreeBSD;
· Системы, основанные на Unix;
·MenuetOS, KolibriOS
И
Версия компилятора
нтерфейс Fasm содержит:
Командное меню
Область редактирования кода
Вкладки
Строка состояния
Номер строки
Номер символа в строке
Состоянии модификации
Рассмотрим каждый из элементов более подробно:
К омандное меню, данного компилятораявляется панелью, не перемещаемой, статической и не закрываемой, которая представляет собой упорядоченное отображение допустимых функций в Flat Assembler.
File – содержит в себе следующие функции:
Создать новый файл. Данную операцию можно запустить как на самой панели, так и клавишами Ctrl+N, после ее нажатия создастся новая вкладка.
Открыть. Аналогично с 1 операцией имеет два способа запуска – в меню и на клавиатуре Ctrl+О. После нажатия пользователю предлагается выбрать путь, по которому необходимо открыть файл.
Сохранить. Сохраняет изменения уже в существующем проекте, имеет горячие клавиши - Ctrl+S
Сохранить как. Используется для сохранения или нового проекта, или в случае, если необходимо сохранить в другое место уже существующий проект. После нажатия всплывает окно, в котором предлагается выбрать место сохранения файла.
Выход. Используется для закрытия проекта, имеет целых 3 способа запуска – на поле командного меню, клавишами Alt+x и красный крест в правом верхнем углу.
E dit - редактировать
Отменить. Отменяет последнее сделанное действие в поле для кода, доступна до того момента, пока поле не станет полностью пустым.
Вернуть. Возвращает обратно отмененное действие. Имеет горячие клавиши Ctrl+Shift+z
Вырезать. Удаляет с поля кода и копирует в буфер обмена выделенный фрагмент.
Копировать – копирует в буфер обмена выделенный объект.
Вставить – вставляет местонахождения курсора объект, находящийся в буфере обмена.
Удалить. Удаляет выделенный фрагмент с поля кода.
Выбрать все. Выделяет все, что находится на поле кода.
Вертикальное выделение. Позволяет выделять объекты вертикально.
S earh - поиск
Поиск по позиции. Позволяет найти объект по ее позиции на поле кода.
П
Поле ввода текста для поиска
оиск по тексту. После запуска данной функции всплывает окно поиска
Ранее вводимый текст
Подтвердить поиск
Чувствительный к регистру
Закрыть
Все слова
Весь текст целиком
В обратном направлении
Данная функция ищет введенное слово, расположенное ниже курсора, именно поэтому имеются дополнительные параметры, например поиск по всему тексту или в обратном направлении.
Найти следующее. Позволяет искать следующее такое же слово, что искалось ранее. Горячая клавиша F3.
Заменить. Данная операция позволяет заменить одно слово на другое, которое пользователь введет в окне замены. Сначала вводится слово для поиска, которое будет заменено, затем то, на что нужно заменить. Также имеются дополнительные параметры.
Поле ввода текста для поиска
Закрыть
Чувствительный к регистру
В обратном направлении
Все слова
Весь текст целиком
Подсказка для замены
R un - запуск
Запустить. Производит запуск программы.
Выполнить. Производит компиляцию программы.
Построение символов.
O ptions - настройки
Вид. Позволяет самому выбрать цветовую палитру для разных объектов.
Настройки компилятора. Показывают путь местоположения файла, изменить память и приоритетный поток.
Далее перечислены дополнительные функции, который пользователь может активировать и выключать.
Безопасный выбор.
Автоматические скобки.
Автоматические отступы.
Умная табуляция.
Оптимальное заполнение при сохранении.
Оживить «мертвые» ключи.
Время прокрутки.
Только один экземпляр.
H elp – помощь.
Содержание.
Поиск по ключевым словам.
Выберитесправку.
Калькулятор. Позволяет выполнять операции вычисления. Показывает результат в десятеричной, двоичной, восьмеричной и шестнадцатеричной системах счисления.
O. Содержит информацию о данном компиляторе.
Все функции довольно просты, но в то же время и полезны, ничего лишнего, практически всё имеет горячие клавиши, довольно удобно.
О бласть редактирования кода — это, по сути, обычный текстовый редактор, который предназначен для набора кода проекта с последующим его компилированием. Имеется различное цветовое выделение, для лучшего просмотра кода.
Панель вкладок содержит в себе все открытые файлы asm, которые используются как в текущем проекте, так и не используемые в нём.
Строка состояния служит для того, чтобы отображать более подробную информацию, как информацию о том, делались ли изменения, после последнего сохранения проекта, так и о положении курсора в области редактирования кода. В зависимоти от его положения меняется число Весь код программы может быть полностью расположен в одном файле. Но если объём кода оказывается слишком большим - такой подход становится недопустимым, потому как затрудняет поиск нужного участка текста. Очевидно, что пролистать 1/10 файлов намного проще, чем один файл, содержащий в себе объем десяти.
Порядок создания проекта
Создание нового проекта в Fasm осуществляется путём нажатия «File -> New», либо с помощью сочетания клавиш Ctrl+N.
При создании нового проекта, текущий файл не закроется – его можно будет найти на «панели вкладок» с соответствующим названием вашего проекта.
После создания нового проекта, необходимо его сразу же сохранить (и делать это постоянно на протяжении всего написания программы). Сочетание клавиш Ctrl+S позволят быстро сохранить все текущие изменения, сделанные в данном проекте.
Н о, в любом случае, даже если вы не сохранили проект и решите его запустить, fasm сам предложит вам его сохранить, иначе запуск не произойдет. Сохранять файл необходимо в ту же папку, где находится сам fasm. Приписывать в конце названия файла «.asm» необязательно, компилятор автоматически указывает тип файла «Assembly files».
Примерный план использования компилятора
Примерный план использования компилятора выглядит так:
1. Пишем код программы, или открываем ранее написанный, сохранённый в файле, или вставляем код программы из буфера обмена.
2 . Для того, чтобы скомпилировать и запустить программу, нажимаем F9. А чтобы только скомпилировать - Ctrl+F9. Если текст, программы ещё не сохранён – компилятор попросит его сохранить перед компиляцией. На панели функций также имеется запуск и компиляция:
3. После запуска программы, тестируем её на правильность, если она не запустилась – ищем ошибки, на некоторые из них укажет компилятор.
Е сли же программа написана правильно, ну, или хотя бы запускается, в папке, где хранится сохранение проекта, с которым вы работаете должен появится файл типа “.exe”, через него также можно будет теперь запускать программу. Если в вашей программе подразумевается вывод информации, она будет отображена после запуска в всплывающем окне
Также, стоит добавить, что компилятор fasm довольно чувствителен к регистру, поэтому «Date» и «date» будут восприниматься как 2 разные инструкции. А комментарии пишутся с помощью символа «;», например:
mov ebx,136 ; регистр ebx=136
Библиографический список
Изучение интерфейса среды программирования Flat Assembler (Fasm). Порядок создания проекта: https://cyberpedia.su/17x460b.html
MASM, TASM, FASM, NASM под Windows и Linux https://habr.com/ru/post/326078/
Рыбанов А. А. Метрики оценки качества пользовательского интерфейса [Электронный ресурс]: учеб. пособие / А. А. Рыбанов; ВПИ (филиал) ВолгГТУ. - Волжский: ВПИ (филиал) ВолгГТУ, 2016. - 72 с.
Кожевникова И. Е. Интегрированная среда программирования Turbo Pascal 7.0. [Электронный ресурс]: учеб. пособие:Ч. 2 / И. Е. Кожевникова ; ВолгГТУ, ВПИ (филиал) ВолгГТУ . - Волгоград: ВолгГТУ, 2005. - 80 с.
Другие авторы: Савченко В. Ф.
Капля В. И. Цифровые системы автоматизации и управления [Электронный ресурс]: учеб. пособие / В. И. Капля, А. Г. Бурцев, А. А. Силаев; ВПИ (филиал) ВолгГТУ. - Волжский: ВПИ (филиал) ВолгГТУ, 2016. 82 с.Другие авторы: Бурцев А. Г., Силаев А. А.
Поляков В. С. Вычислительные системы, сети и телекоммуникации. Руководство к лабораторным и практическим занятиям [Электронный ресурс]: учеб. пособие / В. С. Поляков; ВолгГТУ. - Волгоград: ВолгГТУ, 2014. - 52 с.: 1 электрон. опт. диск (CD. R)