asm編譯vs
⑴ visual studio 2010如何運行匯編asm文件
匯編最好還是用masmplus或者masm32,vs2010太大了,用那個匯編做匯編太小題大做了。
匯編...剛才把我電腦搞藍屏了。。。。擦
⑵ 如何編譯ASM文件
1. 在DOS命令中轉到要編譯文件所在的目錄.
2.輸入MASM.EXE空格+文件名.三下回車,就生成了OBJ文件,
3.link.exe空格+所生成的OBJ文件,再按三下回車,就生成了exe文件.
⑶ asm 文件編譯出錯error :org_2 can not fit absolute secti
你的錯誤代碼是errorc129:這是一個C語言方面的語法錯誤,說明你的文件被保存為C文件(文件名為.c後綴)。我用你這段程序放在keil編譯器中試驗過,當程序保存為c文件並編譯時,會出現如你所示的errorc129的錯誤且指向程序的第一句代碼處;若將文件另存為匯編文件(文件名為.asm後綴)再進行編譯,則不會出現c129的報錯。 現在將這段程序保存為.asm文件,並將程序整理為以下形式: ORG 0000H LJMP START ORG 000BH ; LJMP INTT0; START: MOV R0,#70H MOV R7,#0CH INIT: MOV @R0,#00H INC R0 DJNZ R7,INIT MOV 72H,#10 MOV 75H,#10 MOV TMOD,#01H MOV TL0,#0B0H MOV TH0,#03CH SETB EA SETB ET0 SETB TR0 START1: LCALL SCAN LCALL KEYSCAN SJMP START1; DL1MS: MOV R6,#14H DL1: MOV R7,#19H DL2: DJNZ R7,DL2 DJNZ R6,DL1 RET; DL20MS:對於以上程序段,不知道整理出來之後是否與你的原代碼相同,但其中有一點需要說明,匯編文件中的分號「;」的作用與C文件中的「 //」作用類似,它後面緊跟的是注釋內容。 你這段程序,若按以上整理,那麼所有命令後面的分號「 ;」都可以不要的。不過,也有可能你確實使用了分號的作用,將後面一些命令作了屏蔽處理,則此處不另作說明。下面將整理後的程序進行編譯,會出現以下報錯情況:錯誤、警告的解釋: 第4行的錯誤原因是:標志符號「INTT0」沒有定義; 第18行的錯誤原因是:標志符號「SCAN」沒有定義; 第19行的錯誤原因是:標志符號「KEYSCAN」沒有定義; 第27行的警告原因是:代碼結束處沒有「END」命令;(註:所有匯編文件結尾處都應有一句「END」命令表示結束) 可以看得出,你這段程序應該不是完整的,另有一部份你沒有復制出來。你可以根據以上說明,再結合你的實際情況處理你的程序。祝你成功!
⑷ 如何在Vc++下面編寫和編譯.ASM文件
你可以試試把asm文件加入工程,打開後選擇編譯,不過vc在c++
源程序
里邊可以使用嵌入匯編。
static
int
a=5;
asm{
Mov
EAX,a
}
⑸ 用vs2010,編譯C++程序時,插入「__asm」代碼顯示3個錯誤,求高手解決!
#include <stdio.h>
int main()
{
__asm
{
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
}
return 0;
}
⑹ 通過cmd運行asm軟體直接跳出VS怎麼辦
windows使用asmcmd時需要設置ORACLE_SID和ORACLE_HOME,設置ORACLE_HOME時路徑不需要加引號『』 C:\Users\Administrator>asmcmd "asmcmd: the environment variable ORACLE_HOME is not set." C:>set oracle_sid=+asm 要設置asm實例名,單實例就寫+asm,如果是RAC,要寫成節點的+asm1 C:>set ORACLE_HOME=F:\app\11.2.0\grid --進入asmcmd事先需要設置ORACLE_HOME環境變數, C:>asmcmd 'perl.exe' 不是內部或外部命令,也不是可運行的程序或批處理文件。 --如果出現這個錯誤,是由於在F:\app\11.2.0\grid外面加了單引號 C:>asmcmd ASMCMD> ls OCR/ DATA/ BAK/ ASMCMD> exit OK了,退出。
⑺ 如何編譯VC工程中的asm文件
沒有什麼特別。例如:
#include<stdio.h>
#include<math.h>
int power2( int num, int power );
int main( )
{
int a=3,b=5;
printf( "3 * 2^5 = %d\n", power2( a, b) );
}
int power2( int num, int power )
{ __asm
{
mov eax, num ; Get first argument
mov ecx, power ; Get second argument
shl eax, cl ; EAX = EAX * ( 2 ^ CL )
}
// Return with result in EAX
}
====
就用普通的: CL 程序名 就編譯和鏈接了。
編譯成 .obj 不鏈接 用選項 -c
⑻ 如何使用Visual Studio編程調試ASM匯編語言程序 masm 9
MASM是Microsoft Macro Assembler 的縮寫,是微軟公司為x86 微處理器家族開發的匯編開發環境,擁有可視化的開發界面,使開發人員不必再使用DOS環境進行匯編的開發,編譯速度快,支持80x86匯編以及Win32Asm,是Windows下開發匯編的利器。
使用方法:
如果你的電腦是X86,那麼沒有太多限制,直接網上現下載masm5.0,並將所有文件解壓到非C盤中某一個文件夾之內(編寫的.asm文件也放在這裡面)在運行中使用cmd命令,進入你文件所在目錄,如我的文件在D:\masm中,鍵入d:\masm便可進入該文件夾 。使用masm **.asm 命令生成obj文件,link **.obj鏈接生成exe文件 然後 就可以執行了,同樣也是確保在文件目錄下,使用 **.exe命令,還有就是debug的方法,使用方法類似 debug **.exe
如果你的電腦不是X86而是x64,那麼就需要使用DOSBox工具。安裝完成後,打開軟體
會出現兩個界面,在可運行界面會讓你先掛載你的目錄 。輸入你的文件所在目錄便可以,例如 mount d d:masm 「d」作為虛擬d盤 "d:masm"你要虛擬的文件夾位置。然後就可按著x86的方法操作了。很多具體的DOSBox的使用方法,請自行學習,如果一般用於匯編卡法的話,掛載也可以寫到DOSBox的option文件中,方便自己使用 。
⑼ vs2005 編譯 匯編文件時(asm) 找不到windows.inc文件
在vs的設置中,找到「包含文件路徑」,把這個路徑加上去即可。
或著設置編譯選項,-Id:即可。
⑽ 如何用Visual Studio 2008 建立匯編工程,編譯鏈接運行匯編程序
Segmented Executable Linker,Incermental Linker
首先MASM軟體包並不包含資源編輯器,資源編輯器值是當做Windows SDK的一部分來發布的,或者要從Micsoft Visual
Studio軟體包Common目錄中找到,更有甚者連接器Link竟然不是32位的,只能連接DOS程序...Incermental Linker只能在Visual C++目錄中找到。
其他一些有用工具也不在MASM的軟體包里,所以要使用MASM進行Win32匯編編程需要對軟體包進行改造,一方面要舍棄一些MASM軟體包的LInk,另一方面
,需要到其他地方去找資源編譯器和32位鏈接器等工具軟體。Win32編程用的一些鏈接庫導入文件MASM軟體包並沒有,同樣需要到VisualC++中去找,,MASM軟體包沒有自己的
頭文件,也不可能用c++的頭文件,需要自己根據資料整理Visualc++的.h文件整理出來,然而Windows的數據結構和預定義的數據多的是處了明的。MASM會是Win32編程非常難以下手。