Создание проекта на языке ассемблера в Microsoft Visual Studio Express 2010

Язык ассемблера / Создание проекта на языке ассемблера в Microsoft Visual Studio Express 2010

Создание проекта консольного или оконного Windows-приложения не отличается от рассмотренного для языков программирования Си и C++.

После того, как в Visual Studio появилось окно проекта (в левой части появившегося окна отображается Обозреватель решений), для добавления нового файла программы в проект выбираем по правой кнопке мыши на папке Файлы исходного кода меню Добавить->Создать элемент.
Microsoft Bisual StudioВ появившемся окне выбираем Файл C++ (.cpp), задаем имя файла и вручную добавляем к нему расширение asm. Нажимаем кнопку Добавить.
Проект на языке ассемблера в Visual Studio

В появившемся окне набираем текст программы. В качестве примера можно использовать следующий текст:

.686P
.MODEL FLAT, STDCALL
.STACK 4096
.DATA
MB_OK    EQU 0
STR1     DB "Моя первая программа",0
STR2     DB "Привет всем!",0
HW       DD ?
EXTERN MessageBoxA@16:NEAR
.CODE
START:
PUSH     MB_OK
PUSH     OFFSET STR1
PUSH     OFFSET STR2
PUSH     HW
CALL     MessageBoxA@16
RET
END START

Добавление

Далее необходимо сообщить среде разработки, что данный файл является программой на языке ассемблера, и для корректного включения его в проект требуется использовать Microsoft Macro Assembler. Для этого выбираем для проекта (по правой клавише мыши) опцию Настройки построения.

Настройки построения

В появившемся окне ставим галочку для masm (Microsoft Macro Assembler) и нажимаем OK.
Microsoft Macro AssemblerТеперь нужно проверить, что для файла на языке ассемблера установился соответствующий инструмент сборки. По правой кнопке мыши для файла с расширением .asm выбираем опцию Свойства.

Свойства проектаВ появившемся окне для выбранного файла отмечаем инструмент сборки Microsoft Macro Assembler.

Инструмент сборкиДля построения проекта выбираем меню Отладка->Построить решение.

Построить решениеВ случае успешного построения в нижней части окна отображается Построение: успешно 1.

Построить решение

Для запуска приложения выбираем меню Отладка->Начать отладку.

Запуск приложения на выполнение

Результат выполнения программы:
Результат выполнения

Изменить тип приложения с консольного на оконное

Чтобы убрать консоль (поменять тип приложения с консольного на оконное, или наоборот) необходимо обратиться к меню Свойства проекта, вызванного по правой кнопке мыши.
Изменение платформы приложенияВ появившемся окне выбрать раздел Компоновщик->Система, и в разделе Подсистема поменять тип с Консоль на Windows (или наоборот).

Выбор консольного или оконного приложения

Повторная сборка и запуск программы на выполнения выдадут следующий результат (консоли нет):
Запуск оконного приложения

Подсветка синтаксиса языка ассемблера

Для того, чтобы включить подсветку синтаксиса языка ассемблера в Microsoft Visual Studio Express 2010 необходимо загрузить файл usertype и распаковать его в папку

C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE

Для подключения подсветки синтаксиса выбираем меню Сервис->Параметры

Подсветка синтаксиса ассемблераВ появившемся окне выбрать Текстовый редактор->Расширение файла и вручную добавляем расширение asm. Нажимаем кнопку Добавить, затем - OK.

Добавление расширения файла asmРасширение файла asmПосле перезапуска Microsoft  Visual Studio Express 2010 подсветка синтаксиса языка ассемблера будет активна.

Назад


Назад: Язык ассемблера

Комментариев к записи: 15

  • Елена!

    А как в вижуале вывести на экран десятичное число?

    В турбо асме это делалось через прерывания дос, а как в масме через вижуал?

    Или проще передавать в модуль на яву (например с++), откуда выводить стандартными функциями?

    Может есть способ как-то попроще, типа того как Вы выводите здесь строки?

    Спасибо.


    • Елена Вставская

      Когда требовалось — переводила в строковое представление, а затем выводила стандартными функциями.


  • Боже, как здорово! Я долго искал именно как в Вижуал Студии на асме прогать. Спасибо огроооомное, друг!


  • Статья супер!) а у Вас нету самоучителя хорошего по синтаксису ассемблера? или расшифровка что делает каждая строка кода?


    • Спасибо за отзыв, Сергей!

      Есть целый конспект по программированию на ассемблере.

      Скачивайте!

      Сейчас, к сожалению, указанный курс снят, а конспекты остались.

       




    • Да, в Visual Studio 2013 тоже работает. Только там меню Настройки построения… называется Зависимости сборки -> Настройки сборки.




Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *