Как установить masm на windows 10

In this guide you will learn how to install MASM32 on a Windows 10 machine, and also how to modify the Path environment variable to use the MASM tools directly from the command prompt. By the end o…

In this guide you will learn how to install MASM32 on a Windows 10 machine, and also how to modify the Path environment variable to use the MASM tools directly from the command prompt. By the end of the guide you will have an environment to start writing software in assembly.

Let’s begin.

Download MASM for Windows 10

The first thing you need to do is head over to the MASM32 SDK download page. Select a mirror and your download should begin.

Next open up the archive and extract the installer to your desktop.

Installing MASM on Windows 10

Double click on the installer. It will ask for administrator privileges. This application is deemed to be safe so you can safely press yes. After you have granted permissions you will see a dialog similar to the one below:

Click on the install icon on the top left and select the drive you want to use to install MASM. I will select my D: partition. MASM will install all the necessary files to the root directory of whatever partition you select.

Tip: I like to create a separate partition for my assembly projects and install MASM to the root directory of the partition. This makes it much easier to include libraries and includes such as windows.inc and friends.

MASM will proceed to run a bunch of tests to see if you’re computer is compatible and able to run MASM32. You will see a number of dialog boxes appear that require you to press the ok button.

Once the tests are complete press the extract button.

After the extraction has completed you will see another dialog box that informs you a command prompt will appear to complete the installation. Press ok and let the installation finish. It should only take a few moments.

After the installation has finished you will once again see a couple of dialog boxes that require you to press ok. You will also see a different type of dialog box similar to the one below. This runs a VB script to add an icon to your desktop for the MASM editor. If you want an icon on your desktop press yes.

Finally if everything went well you will see the final dialog box telling you the installation is complete.

Don’t run off just yet

I don’t use the default MASM editor. Instead I use Vim, or Sublime. This means I need to call the MASM compiler and linker directly from the command line to build my code. To do this you need to add the location of the MASM32 installation directory to your Path environment variable.

Adding a directory to environment variable Path on Windows 10

Open up the system properties dialog by entering the following command on the command prompt:

sysdm.cpl SystemProperties

Click the advanced tab, and click the Environment Variables button.

Next select the Path item from the list and click Edit.

On the next dialog press New and enter the path to the MASM bin directory. This contains the tools needed to compile and link assembly. For me the path is D:masm32bin. In most cases just change the drive letter if you installed to a different partition. The rest of the path is the same.

Press the ok button, and then then the apply button to save and close the system properties dialog.

Open a new command prompt and enter the following command to run the MASM assembler:

ml 

If everything installed correctly and your Path is setup correctly you will see some output similar to the image below:

💡 Assembly Language Weekly Newsletter

Every week I publish a newsletter that contains tutorials, tips, tricks and resources related to assembly language. If you would like to receive this newsletter subscribe here: http://eepurl.com/ghximb

All Done!

And that’s all there is to it folks. If you want to hit the ground running check out my guide on how to compile and link MASM assembly to produce an executable on Windows 10.

If you’re having any issues following this guide please leave a comment and I will help you the best I can. You can also check out the official documentation includes detailed installation instructions and FAQ’s to solve common problems.

MASM is an assembler developed and maintained by Microsoft. MASM (8086) won’t run on Windows 7 or newer versions easily whereas it runs well on Windows XP. That is why in this post I am going to show you how to install MASM in Windows.

This tutorial is valid for Windows 10, 8.1, 8, 7.

So, Let’s begin.

Here are 5 steps to Install MASM in Windows.

1. Setup DOSBox on your OS

First, you have to download DOS Box for your PC

Visite this link (click here)
Click on Download
Wait 5-second download will start automatically

Download DOSBox from Sourceforge
Download DOSBox from Sourceforge

After that install DOSBox if you have any doubts about how to install DOSBox, Here is a Guide on how to install DOSBox on Windows.

2. Download 8086.rar

Visit this link (click here)
Click on Download

3. Setup 8086.rar

Open the zip file that you downloaded in step 2.
Copy the 8086 folders in drive C:

4. Create Assembly file (.asm)

Open your favorite code editor,
Enter the following code

; Hello World program by 360 Tech Explorer’s

DATAS  SEGMENT
     STRING  DB  'Hello World!',13,10,'$'

DATAS  ENDS

CODES  SEGMENT
     ASSUME    CS:CODES,DS:DATAS

START:
     MOV  AX,DATAS
     MOV  DS,AX

     LEA  DX,STRING

     MOV  AH,9
     INT  21H 

     MOV  AH,4CH
     INT  21H
CODES  ENDS
END   START

Save this file with the “.asm” file extension.

5. Run Assembly file (.asm) in Windows

Open DOSBox by clicking on it.
Enter the following command in DOSBox

Z:> mount c c:8086

This command will mount 8086 directory as C drive for DOSBox

Then, execute the following command to navigate into drive C

Z:> c:

If you want to write a new assembly file, execute the following command

C:> edit file_name.asm

If you already have the Assembly file, follow the following steps

Copy your Assembly file to the “C:/8086” folder (remember the name)
Then execute the following to run that file

C:> masm your_file_here.asm
C:> link your_file_here.obj
C:> your_file_here.exe

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

MASM

Используется для создания драйверов под Windows.

По ссылке переходим на сайт и скачиваем пакет (masm32v11r.zip). После инсталляции программы на диске создается папка с нашим пакетом C:masm32. Создадим программу prog11.asm, которая ничего не делает.

.586P
.model flat, stdcall 
_data segment 
_data ends
_text segment
start:
ret   
_text ends
end start

Произведём ассемблирование (трансляцию) файла prog11.asm, используя ассемблер с сайта masm32.

image
Ключ /coff используется здесь для трансляции 32-битных программ.
Линковка производится командой link /subsystem:windows prog11.obj (link /subsystem:console prog11.obj)

Как сказано в Википедии

MASM — один из немногих инструментов разработки Microsoft, для которых не было отдельных 16- и 32-битных версий.

Также ассемблер версии 6. можно взять на сайте Кипа Ирвина kipirvine.com/asm, автора книги «Язык ассемблера для процессоров Intel».

Кстати, вот ссылка на личный сайт Владислава Пирогова, автора книги “Ассемблер для Windows”.

MASM с сайта Microsoft

Далее скачаем MASM (версия 8.0) с сайта Microsoft по ссылке. Загруженный файл носит название «MASMsetup.exe». При запуске этого файла получаем сообщение -«Microsoft Visual C++ Express Edition 2005 required».

Открываем этот файл архиватором (например 7zip). Внутри видим файл setup.exe, извлекаем его, открываем архиватором. Внутри видим два файла vc_masm.msi,vc_masm1.cab. Извлекаем файл vc_masm1.cab, открываем архиватором. Внутри видим файл FL_ml_exe_____X86.3643236F_FC70_11D3_A536_0090278A1BB8. Переименовываем его в файл fl_ml.exe, далее, произведём ассемблирование файла prog11.asm, используя ассемблер fl_ml.exe.

image

MASM в Visual Studio

Также MASM можно найти в папке с Visual Studio (у меня VS 10) вот здесь: C:Program FilesMicrosoft Visual Studio 10.0VCbinml.exe.

image

Для того, чтобы запустить на 32- или 64-разрядной системе и создавать программы, работающие как под 32-, так и под 64-разрядной Windows, подходит MASM32 (ml.exe, fl_ml.exe). Для того, чтобы работать на 32- и 64-разрядных системах и создавать программы, работающие под 64-разрядной Windows, но неработающие под 32-разрядной нужен ассемблер ml64.exe. Лежит в папке C:Program FilesMicrosoft Visual Studio 10.0VCbinamd64 и вот здесь — C:Program FilesMicrosoft Visual Studio 10.0VCbinx86_amd64.

TASM

Программный пакет компании Borland, предназначенный для разработки программ на языке ассемблера для архитектуры x86. В настоящее время Borland прекратила распространение своего ассемблера.

Скачать можно, например, здесь. Инсталлятора нет, просто извлекаем программу. Вот исходник из книги Питера Абеля (рис. 3.2) «Язык Ассемблера для IBM PC и программирования».

stacksg segment para stack 'stack'
    db 12 dup ('stackseg')
stacksg ends
codesg segment para 'code'
begin proc far
 assume ss:stacksg,cs:codesg,ds:nothing
 push ds
 sub ax,ax
 push ax
 mov ax, 0123h
 add ax, 0025h
 mov bx,ax
 add bx,ax
 mov cx,bx
 sub cx,ax
 sub ax,ax
 nop
 ret
begin endp
codesg ends
 end begin

Выполним ассемблирование (трансляцию) файла abel32.asm.

image

Корректность работы программы можно проверить, произведя линковку (tlink.exe) объектного файла и запустив полученный файл в отладчике.

Как было сказано выше, MASM можно использовать для работы с 16-битными программами. Выполним ассемблирование (трансляцию) программы abel32.asm с помощью ассемблера MASM:

image

Ключ /coff здесь не используется.
Линковка производится файлом link16.exe

Вот здесь приводится порядок действий, которые необходимо выполнить для запуска TASM в DOSbox. Для линковки понадобится файл DPMI16BI.OVL

FASM

В статье Криса Касперски «Сравнение ассемблерных трансляторов» написано, что «FASM — неординарный и весьма самобытный, но увы, игрушечный ассемблер. Пригоден для мелких задач типа „hello, world“, вирусов, демок и прочих произведений хакерского творчества.»

Скачаем FASM с официального сайта. Инсталлятора нет, просто извлекаем программу. Откроем fasm editor — C:fasmfasmw.exe. В папке C:fasmEXAMPLESHELLO есть файл HELLO.asm.

include 'win32ax.inc' 
.code
  start:
 invoke    MessageBox,HWND_DESKTOP,"Hi! I'm the example program!",invoke GetCommandLine,MB_OK
    invoke    ExitProcess,0
.end start

Откроем файл HELLO.asm из fasmw.exe. Изменим строку include ‘win32ax.inc’ на строку include ‘c:fasmINCLUDEWIN32AX.INC’. Запускаем из меню Run → Run.

image

Вот ссылки на ресурсы, посвященные FASM:

→ FASM на Cyberforum’е
→ FASM на asmworld .com программы под Dos
→ Цикл статей «Ассемблер под Windows для чайников»
→ Сайт на narod’е

FASM в Linux

Для того, использовать FASM в Linux (у меня Ubuntu), скачаем соответствующий дистрибутив (fasm-1.71.60.tgz), распакуем его, в папке у нас будет бинарный файл fasm, копируем этот файл в /usr/local/bin для того, чтобы можно было запускать его из консоли, как любую другую команду.Выполним ассемблирование программы hello.asm из папки fasm/examples/elfexe/hello.asm.

image

Корректность работы программы можно проверить в отладчике.

Nasm

Nasm успешно конкурирует со стандартным в Linux- и многих других UNIX-системах ассемблером Gas.

Nasm в Linux можно установить с помощью менеджера пакетов или из командной строки: в дистрибутиве Debian (Ubuntu) командой apt-get install nasm, в дистрибутивах Fedora, CentOS, RedHat командой yum install nasm.

Создадим программу, которая 5 раз выводит сообщение “Hello”. Пример взят из книги Андрея Викторовича Столярова “Программирование на языке ассемблера NASM для ОС UNIX”. Учебник, а также библиотека “stud_io.inc” есть на личном сайте автора.

%include "stud_io.inc"
global _start
section .text
_start: mov eax, 0
again:  PRINT "Hello"
PUTCHAR 10
inc eax
cmp eax, 5
jl again
FINISH

Выполним ассемблирование и линковку и запустим файл hello.asm.

$ nasm -f elf hello.asm
$ ld hello.o -o hello
$ ./hello

Для 64bit необходимо использовать команду nasm -f elf64 hello.asm

NASM для Windows

NASM для Windows можно установить, скачав соответствующий дистрибутив с соответствующего сайта.

Ассемблирование:
nasm -f bin имя_файла.asm -o имя_файла.com

Ссылки на ресурсы, посвященные Nasm:

→ Сайт А.В. Столярова
→ Сайт, на котором лежит электронный учебник (в архиве)
→ То же самое

AS

Стандартный ассемблер практически во всех разновидностях UNIX, в том числе Linux и BSD. Свободная версия этого ассемблера называется GAS (GNU assembler). Позволяет транслировать программы с помощью компилятора GCC.

Из учебников удалось найти только книгу на английском «Programming from the ground up». На русском удалось найти только одну главу из книги С. Зубкова «Assembler для DOS, Windows и UNIX».

Возьмем пример программы, которая ничего не делает, с сайта. Создадим программу gas.s

.section .text
   .globl _start
   _start:
      movl  $1, %eax
      movl  $2, %ebx
      int   $0x80

Выполним ассемблирование (трансляцию), линковку и запуск программы:

$ as -o gas.o gas.s
$ ld -o gas gas.o
$ ./gas

Если в данной программе изменить _start на main, то можно выполнить ассемблирование (трансляцию) и линковку компилятором gcc.

.section .text
   .globl main
   main:
      movl  $1, %eax
      movl  $2, %ebx
      int   $0x80

Выполним ассемблирование (трансляцию), линковку и запуск программы:

$ gcc gas.s -o gas
$ ./gas

Выводы: если вы изучаете программирование под Windows, то вы можете остановить свой выбор на Masm; Tasm больше не поддерживается, но для обучения по старым классическим учебникам подойдёт.
Под Linux Gas подойдет тем, кто использует GCC, а тем, кому не нравится синтаксис Gas, подойдёт Nasm.

P.S. Про обработку строк в ассемблере на примере создания транслятора простого «эзотерического» языка можно прочитать здесь.
P.P.S. Упрощенный ограниченный набор ассемблерных инструкций используется в учебной модели компьютера Little Man Computer, которому у меня также посвящено несколько статей ссылка.

Содержание

  1. Пошаговая установка MASM32
  2. 1) Скачать MASM32 архивом с файлами.
  3. 2) Запустить файл MYASM.EXE
  4. 3) Поместить файл amake.bat из архива в папку BIN, которая появилась после разархивации.
  5. 4) Настроить переменные среды Windows.
  6. MASM, TASM, FASM, NASM под Windows и Linux
  7. MASM под Windows: быстрый старт
  8. Установка MASM
  9. Простейшая программа
  10. Трансляция и запуск программы
  11. Как это устроено
  12. Командный файл для упрощения запуска
  13. MASM для x64 (ml64.exe)
  14. добавление файла ассемблерного языка в проект Visual Studio C++
  15. добавление файла ассемблерного языка в существующий проект Visual Studio C++
  16. Директивы, относящиеся к ml64

Пошаговая установка MASM32

Здравствуйте. дорогие друзья, сегодня мы будем устанавливать Assembler(MASM32), предварительно нам нужно будет скачать MASM32 на компьютер: ну а саму установку мы упростили до простых шагов, поэтому она не займет много времени.

1) Скачать MASM32 архивом с файлами.

Прежде всего вам следует скачать архив masm32, который мы любезно выложили. В нем всего 2 файла.

2) Запустить файл MYASM.EXE

При запуске вам нужно будет указать путь куда вы хотите разархивировать MASM. Лучше выберите вашу директорию на диске C:

3) Поместить файл amake.bat из архива в папку BIN, которая появилась после разархивации.

Также вы можете заметить, что в папке BIN уже есть приложение OLLYDBG, это наш отладчик, и, как вы уже поняли, он установлен. Как им пользоваться, мы расскажем в следующей статье, где будем разбирать тему сложение на Assembler.

4) Настроить переменные среды Windows.

Звучит как то необычно, но ничего сложного здесь нет, это нужно, чтобы мы могли запускать из командной строки наши программы.
Есть несколько способов настройки:

4.1) Открываем Пуск, в поисковой строке вводим(без кавычек) «Переменные среды», откроется окно, в котором нужно создать переменную.
Нажимаем Создать; В поле «Имя переменной» можете ввести, что хотите (я ввел Assembler), а в поле «Значение» нужно ввести путь к папке BIN ( у меня это C:usersникитаBIN ). Жмем Ок.

4.2) Другой способ открыть переменные среды(встречается редко): Мой Компьютер — Свойства — Дополнительно — Переменные среды, далее делаем то же самое, что и в 4.1

На этом все, если у вас возникли проблемы, то пишите об этом в комментариях.

Источник

MASM, TASM, FASM, NASM под Windows и Linux

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

Используется для создания драйверов под Windows.

По ссылке переходим на сайт и скачиваем пакет (masm32v11r.zip). После инсталляции программы на диске создается папка с нашим пакетом C:masm32. Создадим программу prog11.asm, которая ничего не делает.

Произведём ассемблирование (трансляцию) файла prog11.asm, используя ассемблер с сайта masm32.

image loader
Ключ /coff используется здесь для трансляции 32-битных программ.
Линковка производится командой link /subsystem:windows prog11.obj (link /subsystem:console prog11.obj)

MASM — один из немногих инструментов разработки Microsoft, для которых не было отдельных 16- и 32-битных версий.

Также ассемблер версии 6. можно взять на сайте Кипа Ирвина kipirvine.com/asm, автора книги «Язык ассемблера для процессоров Intel».

Кстати, вот ссылка на личный сайт Владислава Пирогова, автора книги “Ассемблер для Windows”.

MASM с сайта Microsoft

Открываем этот файл архиватором (например 7zip). Внутри видим файл setup.exe, извлекаем его, открываем архиватором. Внутри видим два файла vc_masm.msi,vc_masm1.cab. Извлекаем файл vc_masm1.cab, открываем архиватором. Внутри видим файл FL_ml_exe_____X86.3643236F_FC70_11D3_A536_0090278A1BB8. Переименовываем его в файл fl_ml.exe, далее, произведём ассемблирование файла prog11.asm, используя ассемблер fl_ml.exe.

image loader

MASM в Visual Studio

Также MASM можно найти в папке с Visual Studio (у меня VS 10) вот здесь: C:Program FilesMicrosoft Visual Studio 10.0VCbinml.exe.

image loader

Для того, чтобы запустить на 32- или 64-разрядной системе и создавать программы, работающие как под 32-, так и под 64-разрядной Windows, подходит MASM32 (ml.exe, fl_ml.exe). Для того, чтобы работать на 32- и 64-разрядных системах и создавать программы, работающие под 64-разрядной Windows, но неработающие под 32-разрядной нужен ассемблер ml64.exe. Лежит в папке C:Program FilesMicrosoft Visual Studio 10.0VCbinamd64 и вот здесь — C:Program FilesMicrosoft Visual Studio 10.0VCbinx86_amd64.

Программный пакет компании Borland, предназначенный для разработки программ на языке ассемблера для архитектуры x86. В настоящее время Borland прекратила распространение своего ассемблера.

Скачать можно, например, здесь. Инсталлятора нет, просто извлекаем программу. Вот исходник из книги Питера Абеля (рис. 3.2) «Язык Ассемблера для IBM PC и программирования».

Выполним ассемблирование (трансляцию) файла abel32.asm.

image loader

Корректность работы программы можно проверить, произведя линковку (tlink.exe) объектного файла и запустив полученный файл в отладчике.

Как было сказано выше, MASM можно использовать для работы с 16-битными программами. Выполним ассемблирование (трансляцию) программы abel32.asm с помощью ассемблера MASM:

image loader

Ключ /coff здесь не используется.
Линковка производится файлом link16.exe

В статье Криса Касперски «Сравнение ассемблерных трансляторов» написано, что «FASM — неординарный и весьма самобытный, но увы, игрушечный ассемблер. Пригоден для мелких задач типа „hello, world“, вирусов, демок и прочих произведений хакерского творчества.»

Скачаем FASM с официального сайта. Инсталлятора нет, просто извлекаем программу. Откроем fasm editor — C:fasmfasmw.exe. В папке C:fasmEXAMPLESHELLO есть файл HELLO.asm.

Откроем файл HELLO.asm из fasmw.exe. Изменим строку include ‘win32ax.inc’ на строку include ‘c:fasmINCLUDEWIN32AX.INC’. Запускаем из меню Run → Run.

image loader

Вот ссылки на ресурсы, посвященные FASM:

Для того, использовать FASM в Linux (у меня Ubuntu), скачаем соответствующий дистрибутив (fasm-1.71.60.tgz), распакуем его, в папке у нас будет бинарный файл fasm, копируем этот файл в /usr/local/bin для того, чтобы можно было запускать его из консоли, как любую другую команду.Выполним ассемблирование программы hello.asm из папки fasm/examples/elfexe/hello.asm.

image loader

Корректность работы программы можно проверить в отладчике.

Nasm успешно конкурирует со стандартным в Linux- и многих других UNIX-системах ассемблером Gas.

Nasm в Linux можно установить его с помощью менеджера пакетов или из командной строки: в дистрибутиве Debian (Ubuntu) командой apt-get install nasm, в дистрибутивах Fedora, CentOS, RedHat командой yum install nasm.

Создадим программу, которая 5 раз выводит сообщение “Hello”. Пример взят из книги Андрея Викторовича Столярова “Программирование на языке ассемблера NASM для ОС UNIX”. Учебник, а также библиотека “stud_io.inc” есть на личном сайте автора.

Выполним ассемблирование и линковку и запустим файл hello.asm.

NASM для Windows можно установить, скачав соответствующий дистрибутив с соответствующего сайта.

Ссылки на ресурсы, посвященные Nasm:

Стандартный ассемблер практически во всех разновидностях UNIX, в том числе Linux и BSD. Свободная версия этого ассемблера называется GAS (GNU assembler). Позволяет транслировать программы с помощью компилятора GCC.

Из учебников удалось найти только книгу на английском «Programming from the ground up». На русском удалось найти только одну главу из книги С. Зубкова «Assembler для DOS, Windows и UNIX».

Возьмем пример программы, которая ничего не делает, с сайта. Создадим программу gas.s

Выполним ассемблирование (трансляцию), линковку и запуск программы:

Если в данной программе изменить _start на main, то можно выполнить ассемблирование (трансляцию) и линковку компилятором gcc.

Выполним ассемблирование (трансляцию), линковку и запуск программы:

Выводы: если вы изучаете программирование под Windows, то вы можете остановить свой выбор на Masm; Tasm больше не поддерживается, но для обучения по старым классическим учебникам подойдёт.
Под Linux Gas подойдет тем, кто использует GCC, а тем, кому не нравится синтаксис Gas, подойдёт Nasm.

Источник

MASM под Windows: быстрый старт

Олег Французов
2017

В этом документе кратко описан процесс установки учебной среды на основе ассемблера MASM под ОС Windows, а также порядок работы с ней.

Установка MASM

Скачайте архив c MASM с сайта arch32.cs.msu.su.

Скачайте файл prompt.bat и положите его в ваш рабочий каталог.

Простейшая программа

Для следующего шага вам потребуется текстовый редактор, пригодный для работы с программным кодом. Заметим, что Microsoft Word или встроенный в Windows редактор WordPad являются текстовыми процессорами и для работы с программным кодом непригодны. Редактор Notepad (Блокнот) подходит для работы с текстовыми файлами (plain text), но неудобен в качестве программистского редактора — в нем отсутствует подсветка синтаксиса и другие стандартные для таких редакторов функции.

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

Примечание: Если вы решили скачать Notepad2, при первом запуске установите ширину табуляции (Tabulator width) в значение 8 при помощи меню Settings > Tab Settings.

Создайте в вашем рабочем каталоге файл hello.asm следующего содержания:

Трансляция и запуск программы

Для запуска программы требуется ее оттранслировать. Первый шаг — запуск ассемблера MASM, который построит по исходному тексту програмы объектный файл:

Аргумент /c инструктирует ассемблер выполнить только трансляцию в объектный файл, без компоновки (которую мы выполним чуть позже). Аргумент /coff указывает формат объектного файла — COFF (Common Object File Format).

Аргумент /subsystem:console говорит компоновщику, что нужно построить консольное Windows-приложение.

Как это устроено

Командный файл prompt.bat запускает окно командной строки и задает переменные окружения так, чтобы программы ml и link были доступны без указания пути к ним, а пути к include- и lib-файлам MASM также были известны.

Пути заданы жестко, поэтому и требовалось распаковать архив в строго определенный каталог.

Командный файл для упрощения запуска

Когда вам надоест каждый раз набирать три команды для трансляции и запуска программ, создайте такой командный файл (назвать его можно, например, mkr.bat — то есть make/run):

Использовать его можно будет следующим образом:

Несколько комментариев по устройству этого командного файла:

Команда @echo off отключает дублирование каждой исполняемой команды в окне командной строки.

Аргумент /nologo при вызове ассемблера и компоновщика убирает строчку “Copyright (C) Microsoft”, захламляющую экран.

%1 меняется на аргумент, который передан командному файлу, то есть имя программы на ассемблере (выше — hello.asm ).

n1 меняется на тот же аргумент, но без расширения (выше — hello ).

Связка && выполняет очередную команду, только если предыдущая завершилась успешно. В случае ошибок трансляции ваша программа запущена не будет.

То, что получилось в итоге — это простейшая система программирования, состоящая из транслятора (ассемблера MASM), текстового редактора (Notepad2 или иного, если вы его предпочли) и примитивной системы сборки на единственном командном файле.

Несмотря на простоту этой системы, она основывается на тех же общих принципах, что и более сложные системы программирования. Подробнее с этим вы сможете познакомиться на втором курсе.

Источник

MASM для x64 (ml64.exe)

Visual Studio включает 32-разрядную и 64-разрядную версию Microsoft Assembler (MASM) для целевого кода x64. Именованный ml64.exe — это ассемблер, который принимает язык ассемблера x64. программы командной строки MASM устанавливаются при выборе рабочей нагрузки C++ во время установки Visual Studio. Средства MASM недоступны для загрузки отдельно. инструкции по загрузке и установке копии Visual Studio см. в разделе install Visual Studio. если вы не хотите устанавливать полнофункциональную интегрированную среду разработки Visual Studio, но вам нужны только программы командной строки, скачайте средства сборки для Visual Studio.

Чтобы использовать MASM для построения кода для платформ x64 в командной строке, необходимо использовать командную строку разработчика для целевых платформ x64, которые задают требуемый путь и другие переменные среды. Сведения о запуске командной строки разработчика см. в разделе Сборка кода C/C++ в командной строке.

сведения о ml64.exe параметров командной строки см. в разделе справочник по ML и ML64 Command-Line.

Встроенный ассемблер или использование ключевого слова ASM не поддерживается для целевых объектов x64 и ARM. Чтобы перенести код x86, использующий встроенный ассемблер для x64 или ARM, можно преобразовать код в C++, использовать встроенные функции компилятора или создать файлы исходного кода на языке ассемблера. Компилятор Microsoft C++ поддерживает встроенные функции, позволяющие использовать специальные инструкции, например привилегированные, битовые сканирования и тестирования, взаимоблокировки и т. д., в качестве максимально близкого к кросс-платформенному способу. Сведения о доступных встроенных функциях см. в разделе встроенные функции компилятора.

добавление файла ассемблерного языка в проект Visual Studio C++

система проектов Visual Studio поддерживает файлы на языке ассемблера, созданные с помощью MASM в проектах C++. Вы можете создавать файлы исходного кода на языке ассемблера x64 и создавать их в объектных файлах с помощью MASM, который поддерживает 64-разрядную версию. Затем эти файлы объектов можно связать с кодом C++, созданным для целевых платформ x64. Это один из способов преодоления отсутствия встроенного ассемблера x64.

добавление файла ассемблерного языка в существующий проект Visual Studio C++

Выберите проект в обозревателе решений. в строке меню выберите Project, настройки сборки.

в строке меню выберите Project, добавить новый элемент.

Создайте код на языке ассемблера в добавленном ASM-файле. При сборке решения вызывается ассемблер MASM Assembler для сборки ASM-файла в объектный файл, который затем связывается с проектом. Чтобы упростить доступ к символам, объявите функции ассемблера как extern «C» в исходном коде C++ вместо использования соглашений об оформлении имен c++ в исходных файлах на языке ассемблера.

Директивы, относящиеся к ml64

В исходном коде на языке ассемблера, предназначенном для x64, можно использовать следующие директивы ml64:

Источник

Установка MASM32

Здравствуйте. дорогие друзья, сегодня мы будем устанавливать Assembler(MASM32), предварительно нам нужно будет скачать MASM32 на компьютер: ну а саму установку мы упростили до простых шагов, поэтому она не займет много времени.

1) Скачать MASM32 архивом с файлами.

Прежде всего вам следует скачать архив masm32, который мы любезно выложили. В нем всего 2 файла.

2) Запустить файл MYASM.EXE

При запуске вам нужно будет указать путь куда вы хотите разархивировать MASM. Лучше выберите вашу директорию на диске C:

3) Поместить файл amake.bat из архива в папку BIN, которая появилась после разархивации.

Также вы можете заметить, что в папке BIN уже есть приложение OLLYDBG, это наш отладчик, и, как вы уже поняли, он установлен. Как им пользоваться, мы расскажем в следующей статье, где будем разбирать тему сложение на Assembler.

4) Настроить переменные среды Windows.

Звучит как то необычно, но ничего сложного здесь нет, это нужно, чтобы мы могли запускать из командной строки наши программы.
Есть несколько способов настройки:

4.1) Открываем Пуск, в поисковой строке вводим(без кавычек) «Переменные среды», откроется окно, в котором нужно создать переменную.
Нажимаем Создать; В поле «Имя переменной» можете ввести, что хотите (я ввел Assembler), а в поле «Значение» нужно ввести путь к папке BIN ( у меня это C:usersникитаBIN ). Жмем Ок.

4.2) Другой способ открыть переменные среды(встречается редко): Мой Компьютер — Свойства — Дополнительно — Переменные среды, далее делаем то же самое, что и в 4.1

Установка MASM32 завершена! Дальше нам нужно будет создать файл с расширением .asm, в котором будет прописан сам код программы для MASM32 и запустить его в командной строке WINDOWS, а как именно это сделать будет описано в следующих статьях.

На этом все, если у вас возникли проблемы, то пишите об этом в комментариях.

Hey guys..
In this blog I’m gonna write about one of the 

Assembler

software.Hope you follow it.

/* All download links are provided at the bottom of the page for better user interface on mobile devices. */

MASM Assembler: It was one of the Assembler used for programming in Assembly language in 8086 Microprocessor.

Basically MASM Assembler was developed for Windows Xp,But It works in Windows 7 32bit not in 64 bit so you might have to use DosBox for it..

Download and Install MASM Assembler for Windows Xp  / Windows 7 32-bit

  • Download MASM Assembler(Link in Download Section ↓)
  • Extract the downloaded file using winrar to a drive (C:)

        Note: At the time of installation please extract the file to Drive C:
To Open/Run MASM ::   Open CMD and type the code

  • C:
  • cd MASM

   

   Note: To execute Programs place your programs in the C:/MASM folder

 Follow the commands to execute the program

edit filename.asm                                        //Used to edit the program
masm filename.asm;                                   //Compiling the code
link filename.obj;                                       //linking the object code
debug filename.exe                                    //Executing the code
-t                                                                 //to trace
-g                                                                //to execute
-q                                                                //to quit


*Where filename is the name of your program

Install MASM  for Windows 7 64-bit/ Windows 8 / Windows 10

Follow the above instruction to download masm and place it in the drive C: as mentioned above

For using Turbo c u need to install DosBox.

Download DosBox Software (Link in Download Section )

Now the fun part..

If you want to open MASM Assembler to be opened every time you open Dos box then…

Go to Program Files.  [Program Files(x86) in 64bit]

Get into DosBox folder.

Find «DOSBox 0.74 Options» and double click to open the file(scroll to the end of file).

dosbox


And paste the code as shown in image below. 

DOSBox 0.74 Options

Here’s the code to paste

mount c c:
cd c:
cd masm

That’s it done now you can use MASM Assembler



Downloads

This piece of blog is for VTU 2010 syllabus students..

here are some of the masm programs for you. Just extract them…

Programs Download

That’s it guys if you have any problems or if your are finding difficulty then please feel free to comment and I’ll reply to  that..

Abhijith

Author : Abhijith

I’m a BE graduate and is currently a freelancer. I like to play PC games and blog whenever I have free time. Thank you for visiting my blog. :)

MASM (Microsoft macro assembler ) is a x86 assembler that uses intel syntax for for MS-DOS and Microsoft windows . There are two version of assembler . One is 32 bit package and another is 64 bit package . 


Follow these simple tutorial to install MASM package on any windows version 

Windows installation Steps :

  • Download DOSBox0.74-win32-installer.exe installer DOWNLOAD (Link 1)  or you can download from this link Download (Link 2)  OR Download (Link 3)
  • Download  8086_Assembler.zip DOWNLOAD  file and unzip it to the C: drive of your windows . 
  • Run DOSBOX0.74 installer and install it .
  • After successful installation and run the package , you can get a black screen . This is the terminal of the MASM .
  • Enter following commands in that terminal screen . 

     > mount c c:8086  
     > c: 
     > edit (your programme name).asm

  • Then you can get a blue window . This is the window to write your first assembler program . 

If you have any query or doubts , you can check this video tutorials Link 


or 


You can check with this screen-shots 

MASM software


If you are using Ubuntu , Please follow the instructions to install MASM 

Ubuntu installations Steps :

  • Open terminal (Ctrl+t)
  • Enter the following commands in the terminal to install dosbox

         sudo apt-get update
         sudo apt-get install dosbox

  • Next create a folder 8086 in /home path by sudo mkdir /home/8086
  • then give permission to this folder by sudo chmod -R 777 /home/8086
  • Download  8086_Assembler.zip DOWNLOAD  file and extract it to the /home/8086 folder 
  • Then run DOSBox from Applications >Games >DOSBox Emulator
  • Type the following commands to mount 

         mount c /home/8086
         c:

  • Now you are ready to type your program in Linux.

How to run the MASM program ? 

After the successful installation Dosbox and Assembler uisng above step , you will write your first program.    

  • Consider if your program name is  » sample.asm « . Then exit from the editor .
  • Create the object files by typing the below command and press enter

          masm sample.asm

  •  After the above steps , it will generate the object files 
  • Press Enter again and again until you will get the compilation errors / success message 
  • If any errors occur , type edit sample.asm . Using this command you can correct the program code.
  • Follow the steps 2- 4 after editing the code , once your errors got resolved , enter the command link sample . This command will generate sample.exe file 
  • Finally run the program by sample.exe command 
  • You can see the output of the program
  • If you want to exit from the Dosbox , type exit command 


Please comment if you have any suggestions or query . We will try to resolve soon .

Понравилась статья? Поделить с друзьями:
  • Как установить mariadb на windows 10
  • Как установить mapsource для windows 10
  • Как установить manjaro второй системой с windows 10
  • Как установить manjaro linux рядом с windows 10
  • Как установить mamp на windows 10