青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

隨筆 - 8  文章 - 26  trackbacks - 0
<2008年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

常用鏈接

留言簿(5)

隨筆檔案

文章分類

文章檔案

相冊

C++語言

搜索

  •  

最新評論

閱讀排行榜

評論排行榜



總結(jié)一下:

對于NASM與VC混合編程

在ASM文件的開頭輸入

[bits 32]                      ;使用32位模式的處理器

[section .text]                ;text段, 代碼段,只讀并可執(zhí)行

聲明代碼段并且代碼段是32位,應(yīng)為對于VC生成的PE文件,其代碼放在.text的代碼段內(nèi)

,數(shù)據(jù)放在.data的數(shù)據(jù)段內(nèi),所以如果要定義數(shù)據(jù)的話,要在.data段內(nèi)

{一} 在C代碼中調(diào)用匯編程序

1..如果遵守C 調(diào)用約定

打比方我們在ASM中實(shí)現(xiàn)兩個(gè)數(shù)相加的函數(shù):

_myadd:

push ebp

mov ebp,esp

mov eax,[ebp+8]  ;a

mov ebx,[ebp+12]    ;b

add eax,ebx

add esp,4

mov esp,ebp

pop ebp

ret 

在ASM的開頭寫上global _myadd;

在C文件中聲明函數(shù) extern "C" int _cdecl myadd(int a,int b); 

最主要的是要在ASM的函數(shù)名稱的前面加上一個(gè) _(下劃線) ,但是在C文件中聲明的函數(shù)不用加下劃線,并且一定要加上extern "C",并且用_cdecl 聲明,這樣以后就可以在C中調(diào)用ASM中的函數(shù)了。

2.如果遵守stdcall 調(diào)用約定

還用上面的那個(gè)兩個(gè)數(shù)相加的例子

_myaddstdcall@8:

push ebp

mov ebp,esp

mov eax,[ebp+8]  ;a

mov ebx,[ebp+12]    ;b

add eax,ebx

add esp,4

mov esp,ebp

pop ebp

ret 8

在ASM文件的開頭寫上 global _myaddstdcall@8

在C文件中聲明函數(shù) extern "C" int _stdcall myaddstdcall(int a,int b); 

這里要注意的是函數(shù)的名稱問題,一般是_XXX@N ,也就是在開頭加上一個(gè)下劃線,@N中的N跟參數(shù)的大小有關(guān)系,目前我的理解是所有參數(shù)在堆棧中占用的總的大小.但是不確定,我只是推測的,如果那位知道具體的規(guī)定一定要告我一聲啊。

{二} 在匯編中調(diào)用C中的函數(shù)

1.遵守C調(diào)用約定

舉個(gè)例子:

extern "C" void _cdecl myprint(int a)

{

printf("myprint %d\n",a);

}

在ASM中聲明 extern _myprint ,然后就可以用 push xxx ,call myprint   , add esp ,4 調(diào)用了

。要注意的是call 調(diào)用完后,一定要加上add esp ,X 來平衡堆棧,應(yīng)為C調(diào)用約定規(guī)定是調(diào)用者平衡堆棧.

2.遵守stdcall 調(diào)用約定

extern "C" void _stdcall  myprintstdcall(int a)

{

printf("myprintstdcall %d\n",a);

}

在ASM中聲明extern _myprintstdcall@4 ,然后用push xxx  ,call _myprintstdcall@4 調(diào)動(dòng),這里就不用再加add esp,X了,有函數(shù)本身平衡堆棧.

就這些了,都是個(gè)人總結(jié),難免有不足與錯(cuò)誤,還請大家指正.

posted on 2009-04-07 22:53 楊彬彬 閱讀(3957) 評論(1)  編輯 收藏 引用

FeedBack:
# re: NASM 與 VC 混合編程的小結(jié) 2011-04-26 14:25 5545645
收下了  回復(fù)  更多評論
  

只有注冊用戶登錄后才能發(fā)表評論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
      <noscript id="pjuwb"></noscript>
            <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
              <dd id="pjuwb"></dd>
              <abbr id="pjuwb"></abbr>
              狂野欧美激情性xxxx| 欧美日韩国产一级片| 亚洲免费av片| 久久精品动漫| 在线中文字幕一区| 亚洲精品极品| 欧美激情一区二区三区蜜桃视频| 亚洲高清一区二| 亚洲欧美日本在线| 亚洲欧美国产va在线影院| 国产精品乱码妇女bbbb| 国产精品v片在线观看不卡| 日韩午夜激情电影| 亚洲视频每日更新| 老司机一区二区三区| 欧美福利一区| 亚洲欧美日韩中文在线制服| 久久婷婷国产麻豆91天堂| 亚洲一级二级| 欧美aaa级| 国产精品久久久久一区| 欧美成人精精品一区二区频| 欧美搞黄网站| 猛干欧美女孩| 午夜精品免费在线| 欧美日韩在线不卡| 亚洲永久免费精品| 久久精品夜夜夜夜久久| 亚洲天堂第二页| 亚洲午夜激情在线| 国产精品国产馆在线真实露脸 | 国产精品美女一区二区| 久久精品国产亚洲一区二区三区 | 夜夜爽www精品| 久久精品日产第一区二区| 欧美1区免费| 国产日产欧产精品推荐色| 欧美99在线视频观看| 99精品国产在热久久婷婷| 亚洲高清久久久| 亚洲欧美www| 黑人一区二区三区四区五区| 亚洲综合另类| 欧美午夜一区二区三区免费大片 | 亚洲人成毛片在线播放女女| 免费成人在线视频网站| 久久成人亚洲| 日韩性生活视频| 亚洲一级黄色| 久久国产精品99国产精| 欧美在线在线| 一本一本久久a久久精品综合麻豆| 国产精品第三页| 欧美~级网站不卡| 国产日本亚洲高清| 亚洲欧美国产日韩中文字幕| 亚洲国产精品成人| 蜜臀av在线播放一区二区三区| 久久人体大胆视频| 一本色道久久精品| 欧美一级片久久久久久久| 亚洲一二三区在线观看| 欧美三级中文字幕在线观看| 久久久伊人欧美| 国产精品中文字幕在线观看| 亚洲第一搞黄网站| 午夜视频久久久久久| 欧美二区乱c少妇| 欧美在线免费视屏| 亚洲自拍偷拍网址| 午夜精品在线| 亚洲第一福利社区| 欧美1级日本1级| 欧美不卡三区| 久久精品国产v日韩v亚洲| 午夜日本精品| 亚洲理伦电影| a91a精品视频在线观看| 午夜欧美不卡精品aaaaa| 亚洲欧洲精品一区二区三区| 亚洲视频国产视频| 亚洲韩国日本中文字幕| 午夜精品视频网站| 欧美日韩国产首页| 午夜精品国产| 久久久久在线观看| 国产日本欧美一区二区三区在线| 欧美女同视频| 久热综合在线亚洲精品| 久久精品30| 新67194成人永久网站| 亚洲精品一二三区| 狠狠色综合色区| 在线看日韩欧美| 一区二区三区欧美亚洲| 亚洲另类一区二区| 亚洲午夜国产成人av电影男同| 国产日韩av在线播放| 欧美成人久久| 欧美精品一区三区| 欧美激情精品| 欧美高清一区二区| 亚洲免费视频在线观看| 亚洲精选在线观看| 亚洲欧洲视频在线| 在线一区日本视频| 亚洲欧美日韩精品久久亚洲区| 老司机午夜精品视频在线观看| 久久成人一区二区| 欧美一区二区三区久久精品茉莉花| 亚洲一区二区在线观看视频| 一级日韩一区在线观看| 999在线观看精品免费不卡网站| 欧美日韩国产在线| 你懂的国产精品永久在线| 亚洲日韩欧美视频一区| 欧美高清在线视频| 午夜日韩在线| av成人毛片| 亚欧成人精品| 亚洲精品免费观看| 午夜亚洲福利| 欧美成人国产va精品日本一级| 91久久香蕉国产日韩欧美9色| 亚洲一区日韩在线| 欧美亚洲免费在线| 国产亚洲欧美日韩美女| 国产精品av免费在线观看| 国产综合视频| 久久精品综合| 久久久久综合网| 亚洲综合视频在线| 国产欧美日韩在线视频| 欧美一区二区三区免费视| 亚洲一区二区网站| 国产精品大片| 国产精品国产成人国产三级| 亚洲一区二区三区高清| 国产精品一二| 亚洲国产精品免费| 欧美日韩免费看| 日韩网站在线观看| 久久国产一区| 91久久中文字幕| 欧美日韩亚洲综合一区| 欧美va天堂| 久久丁香综合五月国产三级网站| 亚洲欧美日韩在线观看a三区| 国产精品日韩高清| 国产精品mm| 国产情人节一区| 国产主播喷水一区二区| 久久亚洲电影| 欧美黄色网络| 久久久国产视频91| 夜久久久久久| 国产日本欧洲亚洲| 黄色小说综合网站| 亚洲一区精彩视频| 午夜久久电影网| 欧美护士18xxxxhd| 亚洲欧美日韩一区| 午夜精品亚洲| 亚洲欧美综合网| 国产精品久久久久久久久久三级| 欧美高清在线观看| 在线观看91精品国产麻豆| 一区二区三区精品视频在线观看| 欧美激情视频一区二区三区免费| 欧美日韩国产页| 亚洲精品在线二区| 在线视频亚洲| 亚洲国产日韩欧美综合久久| 性亚洲最疯狂xxxx高清| 欧美国产一区视频在线观看| 男男成人高潮片免费网站| 久久精品视频在线观看| 国产欧美日韩精品丝袜高跟鞋| 亚洲一区免费网站| 久热re这里精品视频在线6| 一区二区三区在线免费视频| 一区二区免费在线观看| 国产日韩精品一区二区| 久久综合一区| 亚洲网在线观看| 精品69视频一区二区三区| 女人天堂亚洲aⅴ在线观看| 另类亚洲自拍| 亚洲人体大胆视频| 亚洲色图综合久久| 蜜桃精品久久久久久久免费影院| 136国产福利精品导航网址应用| 欧美视频在线一区| 美腿丝袜亚洲色图| 一本色道久久综合亚洲精品小说| 亚洲人成人77777线观看| 欧美人与性动交a欧美精品| 久久精品1区| 久久激情五月丁香伊人| 欧美一区二区三区播放老司机|