VS编译64位汇编时报错:error C4235: 使用了非标准扩展: 不支持在此结构上使用“_asm”关键字


  VC++只支持32位内联汇编,那么64位平台下如何使用_asm关键字

方法1:http://blog.csdn.net/ab7253957/article/details/50471246

方法2:安装Intel C++ Compiler XE

 使用Intel C++ Compiler XE打开VS,如图

点击 Use 2010,以打开VS。

3.设置VS的平台工具集为Intel C++ Compiler XE,即可使用VS编译64位汇编了。如下图:



  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 错误消息"../core\core_cmfunc.h(629): error: unknown register name 'vfpcc' in asm"是指在汇编代码中的一个未知寄存器名称 'vfpcc'。 'tfpcc'是浮点处理器控制寄存器,用于控制浮点计算的状态。这个错误通常是由于编程错误引起的,可能是由于代码使用错误的寄存器名称或者在不支持浮点运算的硬件上尝试执浮点运算。 要解决这个错误,可以尝试以下几个步骤: 1. 检查代码中是否存在拼写错误或语法错误。确保正确使用寄存器名称,并使用正确的语法指令。 2. 检查编译器和工具链的版本是否支持浮点运算。有错误可能是由于使用不支持浮点运算的工具链导致的。在这种情况下,需要更新编译器或选择支持浮点运算的工具链。 3. 确保正确配置了编译器选项和编译器配置文件。有错误也可能是由于编译器选项或配置文件错误导致的。检查相应的选项和配置文件,确保它们正确匹配所使用的硬件和库。 4. 检查目标硬件是否支持浮点运算。如果所使用的硬件不支持浮点运算,那么在代码中就不能使用浮点寄存器。可以尝试改用整数运算代替浮点运算,或者考虑更新硬件以支持浮点运算。 总之,要解决这个错误,需要仔细检查代码并确保正确使用寄存器名称和语法指令,同确保编译器和工具链支持所需的浮点运算。如果问题仍然存在,需要进一步检查硬件支持编译器配置等因素。 ### 回答2: 出现错误 "../core\core_cmfunc.h(629): error: unknown register name 'vfpcc' in asm" 表示在汇编代码使用了一个未知的寄存器名 'vfpcc'。 在嵌入式系统中,汇编语言通常用于直接访问寄存器和底层硬件。该错误通常发生在编译器无法识别 "vfpcc" 寄存器的情况下。 若要解决该问题,可以尝试以下几种方式: 1. 检查代码中是否正确引入了相关的头文件错误可能是由于未正确包含与 "vfpcc" 寄存器相关的头文件引起的。请检查代码中是否存在遗漏的头文件错误文件引入。 2. 检查编译器选项。某些编译器需要特殊的选项来启用对特殊寄存器的支持。请检查编译器的文档或相关资料,了解是否需要设置特定的编译器选项。 3. 更新编译器版本。有,这种错误可能是由于编译器本身的问题引起的。尝试更新编译器到最新版本,其中可能已经修复了与 "vfpcc" 寄存器相关的问题。 4. 查找额外的支持。如果以上方法都无法解决问题,可以尝试在相关的开发者社区或者嵌入式系统的支持论坛上寻求帮助。其他人可能已经遇到和解决了类似的问题,并且能够提供更具体的方法或建议。 总之,错误 "../core\core_cmfunc.h(629): error: unknown register name 'vfpcc' in asm" 指示编译器无法识别 "vfpcc" 寄存器。通过检查代码编译器选项和更新编译器版本等方法,通常可以解决此问题。 ### 回答3: 这个错误是由于在使用ARM编译,在../core\core_cmfunc.h文件的第629中,遇到了一个未知的寄存器名称'vfpcc'。ARM架构中的VFP(向量浮点)指令集中的一些寄存器名称是由编译器定义的。然而,这个错误表明编译器无法识别'vfpcc'这个寄存器名称。 要解决这个错误,我们可以查阅ARM编译器的文档,确认'vfpcc'是不是一个有效的寄存器名称。如果不是,我们需要检查代码中是否有错误的寄存器使用。 另外,我们还可以检查编译器的版本是否过旧,如果是的话可以考虑升级到最新版本。有编译器的错误修复可能在更新的版本中得到了解决。 此外,我们还可以考虑修改代码,以使用正确的寄存器名称或者替换使用'vfpcc'的代码片段。根据具体的代码情况,可能需要进一些代码调整或者修改相关的编译选项。 总结来说,解决这个错误的方法有:查阅编译器文档,确认寄存器名称是否正确;检查编译器版本,考虑升级;修改代码使用正确的寄存器名称或者替换相关代码片段。

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值