evc中嵌汇编实验心得

evc中嵌汇编实验心得


1.基于X86的CPU可以直接在C/C++中用_asm关键字嵌入汇编程序.有一点要注意:某些系统标识符不可使用.
  例如在下面程序中:
__asm{  
  MOV   DX ,218        
  MOV   CX ,16    
  MOV   BL ,0      
  MOV   AL ,BL     
  OUT   DX ,AL  
  INC   DX      
  OUT   DX ,AL     
}
OUT 关键字在WINDEF.H中的74行有以下的定义:  
  #ifndef   OUT  
  #define   OUT  
  #endif  
  -------------------------  
  所以里面的OUT就不能是大写,但可以是Out,ouT,OUt,oUt.等,随你喜欢啦!随便挑一个就可以了.


2.基于ARM的CPU使用EVC不支持直接嵌入汇编,必须按照以下步骤:

(1). 首先用记事本建立汇编程序,保存为.s文件.要在s文件里面export 用到的函数

(2). 编译汇编档案
    a. 进入DOS环境, 将当前目录改为wince的bin目录, 如下

       cd C:/Program Files/Microsoft eMbedded C++ 4.0/EVC/wcexxx/bin
    b. 使用里头的armasm.exe编译汇编档案.(这个armasm的用法可以用 -help 查使用格式)
       armasm -cpu XSCALE(此处为你的CPU) -o F:/Test/Asm_Test/test_s.obj(目标

       obj文件) F:/Test/Asm_Test/test_s.s

(3). 将生成的test_s.obj 加入到你自己工程的 "object/library modules" ( on the

     page ProjectSetting->Link)

(4). .c , .cpp文件里需要声明一下,使用 extern func().然后就可以作为函数直接引用了.

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值