Я предполагаю, что вы говорите о файле armasm.exe
в папке \VC\bin\x86_arm
? Если это так, то нет, это двоичный код x86, а не двоичный код ARM. Он будет работать на вашей машине.
Это фактически крестовый ассемблер ARM для x86. Это означает, что он позволяет собирать бинарные файлы ARM на хосте x86. Подумайте об этом, как кросс-компилятор x64 для x86 (в папке x86_amd64
). Это может скомпилировать 64-разрядные двоичные файлы на 32-разрядном хосте x86.
Причина, по которой вы не можете запустить ее, заключается в том, что среда не настроена правильно, и требуемые зависимости не могут быть найдены. Когда я пытаюсь запустить его, я получаю более описательное сообщение, чем вы:
System Error:
The program can't start because msvcdis140.dll is missing from your computer. Try reinstalling the program to fix this problem.
Вы предназначены для использования vcvarsx86_arm.bat
пакетного файла (в той же папке), чтобы установить ваше окружение правильно, перед тем пытается запустить любой из инструментов. Поэтапный:
- Открыть новую командную строку.
- Перетащите
vcvarsx86_arm.bat
и нажмите Enter, чтобы запустить его. Это создает среду для запуска инструментов x86/ARM.
- Перетащите
armasm.exe
(или просто введите armasm.exe
в запрос, неквалифицированный). Теперь он будет запущен, потому что среда была правильно настроена (включая путь, чтобы можно было найти его, не требуя ввода полного пути).
Существует также папка \VC\bin\amd64_arm
. Это содержит инструменты для исполняемых файлов ARM, которые запускаются на хостах x64. Вы используете их точно так же, за исключением того, что сначала запускаете файл vcvarsamd64_arm.bat
в этой папке.
Стоит отметить, что я также вижу папку \VC\bin\arm
, но (по крайней мере, в моей установке VS 2015), которая содержит только один EXE: pgosweep.exe
. Microsoft, похоже, не предоставляет ARM-ассемблер, который работает на платформах ARM. Что имеет смысл - я не думаю, что ARM - поддерживаемый хост для разработки. Visual Studio, конечно же, не была перенесена в ARM. Просто используйте инструменты ARM на x86 или x64.