[問題] C/C++裡面要怎麼呼叫asm的檔案?

看板C_and_CPP (C/C++)作者 (SurprisingTW)時間14年前 (2012/05/13 14:50), 編輯推噓4(4022)
留言26則, 4人參與, 最新討論串1/1
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) VC++ 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): 怎麼在C/C++裡面使用asm已經寫好的procedures? 餵入的資料(Input): 預期的正確結果(Expected Output): 1234567.890 錯誤結果(Wrong Output): error LNK2019: 無法分析的外部符號 _asmMain 在函式 _main 中被參考 程式碼(Code):(請善用置底文網頁, 記得排版) ‧ C/C++ Program: extern "C" void asmMain( ); int main( ) { asmMain( ); return 0; } ‧ ASM Program: TITLE asmMain.asm .386 .model flat,stdcall .stack 2000 .data double1 REAL8 1234567.890123 formatStr BYTE "%.3f",0dh,0ah,0 .code asmMain PROC C INVOKE printf, ADDR formatStr, double1 ret asmMain ENDP END 補充說明(Supplement): 其實我不知道該怎麼用... 是在專案裡面的原始資料夾開.cpp和.asm這樣嗎? compile不過O_Q 有沒有人能教我實際操作是怎樣... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.243.178.98

05/13 15:29, , 1F
ml asmMain.asm /coff
05/13 15:29, 1F

05/13 15:31, , 2F
cl *.cpp
05/13 15:31, 2F

05/13 15:32, , 3F
link *.obj /OUT:Hello.exe
05/13 15:32, 3F

05/13 15:54, , 4F
看不懂T▽T...
05/13 15:54, 4F

05/13 16:11, , 5F
Visual Studio 命令提示字元你沒用過嗎?
05/13 16:11, 5F

05/13 16:14, , 6F
額....那是什麼 我是新手...
05/13 16:14, 6F

05/13 16:21, , 7F
http://tinyurl.com/738bvkm 打一樓貼的指令
05/13 16:21, 7F

05/13 16:22, , 8F
然後 cl /? 或 ml /? 或 link /?
05/13 16:22, 8F

05/13 17:21, , 9F
http://ppt.cc/2Qsy這樣?然後呢@@?
05/13 17:21, 9F

05/13 17:25, , 10F
cd asmMain.asm跟printf.cpp的檔案路徑
05/13 17:25, 10F

05/13 17:26, , 11F
例如 cd C:\MyAVFiles
05/13 17:26, 11F

05/13 17:34, , 12F
http://ppt.cc/6iBh 我已經確實照路徑打了...
05/13 17:34, 12F

05/13 17:36, , 13F
話說..一定要用命令提示字元嗎? 不能在VC裡面用F5之
05/13 17:36, 13F

05/13 17:36, , 14F
類的?
05/13 17:36, 14F

05/13 17:37, , 15F
這位大哥,你指令模式的 cd 沒用對,是真的很新手...
05/13 17:37, 15F

05/13 17:38, , 16F
但新手就玩組語,也實在很厲害。cd 後面要接目錄
05/13 17:38, 16F

05/13 17:38, , 17F
所以應該拿掉最右邊的 asmMain.asm
05/13 17:38, 17F

05/13 17:40, , 18F

05/13 18:12, , 19F
我是被逼的 原本用vc寫asm寫的好好的都能compile
05/13 18:12, 19F

05/13 18:13, , 20F
忽然給個作業說要用C++去呼叫procedure 上課還從來沒
05/13 18:13, 20F

05/13 18:13, , 21F
出現什麼DOS 根本不知道要怎樣搞...
05/13 18:13, 21F

05/13 18:32, , 22F
會寫asm卻不知道ml.exe,只要打通任都二賣,就成高手了
05/13 18:32, 22F

05/14 14:25, , 23F
http://ppt.cc/cut/gen.php 搞懂如何去該檔案的資料
05/14 14:25, 23F

05/14 14:26, , 24F
夾後 打了一樓的指令 不過這跟我在VC裡面F5顯示的一樣
05/14 14:26, 24F
是要把組語寫在C:\Irvine\examples\ch03\project_sample\Project.vcproj裡面 然後同個地方再開個專案寫C 然後再開cmp打上面指令嗎? 說真的...我真的完全不懂這到底是在幹嘛...沒有方向... 我就只想要用C/C++去呼叫組語的procedure而已 作業要求是這樣 有沒有人能完整的教我該怎麼做... 我不懂啊..真不懂啊...求救...O_Q ※ 編輯: initial1635 來自: 140.113.0.109 (05/14 14:34)

05/14 14:51, , 25F

05/14 14:52, , 26F
很好奇是怎樣的課程安排會讓不懂命令列的人碰asm...
05/14 14:52, 26F
文章代碼(AID): #1Fhrcgjj (C_and_CPP)
文章代碼(AID): #1Fhrcgjj (C_and_CPP)