社区首页 >问答首页 >错误寄存器:'second operand‘中的内联汇编程序语法错误;找到’C2400‘

错误寄存器:'second operand‘中的内联汇编程序语法错误;找到’C2400‘
EN

Stack Overflow用户
提问于 2011-02-21 05:01:15
回答 2查看 3K关注 0票数 2

在使用VC++中的汇编指令作为宏内嵌的汇编程序块时,我遇到了编译错误。

代码语言:javascript
代码运行次数:0
复制
error C2400: inline assembler syntax error in 'second operand'; found 'register'

代码如下:

代码语言:javascript
代码运行次数:0
复制
_asm {\

        mov esi,dword ptr [pMemBlock]\
        sub esp,sizeOfblock\
        mov ebx,sizeOfblock\
        mov shrResult,ebx\
        shr shrResult,2\
        mov ecx,shrResult\
        mov shrResult,0\
        mov edi,esp\
        rep movs dword ptr es:[edi],dword ptr[esi]\
}

向Usman致敬

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2011-02-21 07:28:36

_asm {行之后的空行将完成宏。它应该被删除或者在它上面。

票数 2
EN

Stack Overflow用户

发布于 2011-02-21 08:18:41

它应该是

代码语言:javascript
代码运行次数:0
复制
_asm {\
    __asm mov esi,dword ptr [pMemBlock]\
    __asm sub esp,sizeOfblock\
    ...

参见this msdn page

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5062488

复制
相关文章
phpstorm有红波浪线,怎么找到语法错误的地方
在phpstorm里面,有时候不小心多打了个字符,会导致IDE显示红色波浪线,提示有语法错误了,但是不容易找出在哪一行。
全栈程序员站长
2022/07/11
9740
phpstorm有红波浪线,怎么找到语法错误的地方
ExecuteReader报错,语法错误
最后,到处查找解决方案,终于在论坛见到了大神的一句:“你输入的是中文字符的空格!”
全栈程序员站长
2022/08/28
8780
ExecuteReader报错,语法错误
Unexpected token语法错误,uni开发新手
使用HBuilderX开发uni-app遇见这个问题 ``` if (!('^[1][3,4,5,6,7,8,9][0-9]{9}$'.test(this.account))) { uni.showToast({ icon: 'none', title: '请输入正确的手机号码' }); return; } ``` [错误提示] 请问我应该怎么写呢?
用户7126922
2020/03/26
4.5K1
如何修复WordPress网站的Syntax Errors语法错误
如果您在WordPress建站中,经常在网站上尝试各种功能,那么有可能会收到以下错误“Syntax error,unexpected…”,请不要惊慌,你不是第一个在WordPress中收到语法错误的人,也不会是最后一个。
晓得博客
2021/06/15
5.4K0
如何修复WordPress网站的Syntax Errors语法错误
php 7.2 if else endif 模板语法错误提示的处理
仔细检查没看到语法提示,这个时候是因为php.ini里面的short_open_tag标签没开启,默认的示关闭的,
全栈程序员站长
2022/07/19
1.2K0
Kotlin中的内联函数
lambda 表达式会被正常地编译成匿名类。这表示每调用一次 lambda表达式,一个额外的类就会被创建。 并且如果 lambda捕捉了某个变量, 那么每次调用的时候都会创建一个新的对象。 这会带来运行时的额外开销,导致使用 lambda 比使用一个直接执行相同代码的函数效率更低 。
对话、
2022/02/22
1.6K0
32位汇编第七讲,混合编程,内联汇编
          32位汇编第七讲,混合编程 混合编程的概念,有时候我们会想,C语言可不可以调用汇编的函数,或者反过来调用 或者说C语言里面内部直接内联汇编去编写. 可以实现,静看怎么实现 一丶C语
IBinary
2018/01/08
1.6K0
32位汇编第七讲,混合编程,内联汇编
汇编语言设计程序篇-03
如果不明确指定,那么[0]就表示ds:[0],如果明确指定了,像上面es:[bx],那对应的段地址就默认按照es寄存器中的值为准
大忽悠爱学习
2022/06/19
6470
汇编语言设计程序篇-03
Jenkins 声明式流水线的语法错误检查
在做 Jenkins 声明式流水线开发时常会遇到的问题是:Pipeline 看起来没有问题,当提交到代码仓库后进行 Jenkins 构建时发现原来有语法错误,然后再去修改、提交、构建,结果可能还有有其他没有注意到的语法问题。
Peter Shen
2020/06/12
2.8K0
Jenkins 声明式流水线的语法错误检查
Apache检查httpd.conf的语法错误的方法
当然,我们可以重新启动apache服务器,但这样一来,如果万一存在错误,apache服务器将不能正常启动,也不能提供正常服务。
星哥玩云
2022/07/27
1.8K0
简单了解C语言内嵌汇编
最近看自旋锁的实现,自选锁的循环查找锁的主要实现类似如下,该实现使用到了内嵌的汇编(摘自sanos内核,源代码有2处实现,一处使用intel汇编,是没有问题的,另一处使用内嵌汇编语法,源代码中为cmpxchgl %2, %0,是错误的,应该是cmpxchgl %0, %2)
charlieroro
2020/03/24
1.3K0
【答疑释惑】C语言常犯语法错误
1 字符常量与字符串常量混淆。 char c; c="a"; 在这里就混淆了字符常量与字符串常量,字符常量是由一对单引号括起来的单个字符,字符串常量是一对双引号括起来的字符序列。 2 忽略了“=”与“==”的区别 在许多高级语言中,用“=”符号作为关系运算符“等于”。如在BASIC程序中可以写: if (a=3) then … 但C语言中,“=”是赋值运算符,“==”是关系运算符。如: if (a==3) a=b; 前者是进行比较,a是否和3相等,后者表示如果a和3相等,把b值赋给a。 3 输入变量
程序员互动联盟
2018/03/14
9300
Win32 Linux汇编语法区别
一、简介 作为最基本的编程语言之一,汇编语言虽然应用的范围不算很广,但重要性却勿庸置疑,因为它能够完成许多其它语言所无法完成的功能。就拿 Linux 内核来讲,虽然绝大部分代码是用 C 语言编写的,但仍然不可避免地在某些关键地方使用了汇编代码,其中主要是在 Linux 的启动部分。由于这部分代码与硬件的关系非常密切,即使是 C 语言也会有些力不从心,而汇编语言则能够很好扬长避短,最大限度地发挥硬件的性能。
ke1th
2019/05/26
2.4K0
在vscode中为Django配置专属的语法检测提醒,防止误报语法错误
    Python插件中默认使用pylint用来检测python代码的书写是否有错误和是否符合良好的编码习惯。
用户9127725
2022/08/08
1.8K0
怎么去掉myeclipse/ecplise对注释的字母拼写语法错误的检查?
怎么去掉myeclipse/ecplise对注释的字母拼写语法错误的检查?
黑泽君
2018/10/11
1.1K0
怎么去掉myeclipse/ecplise对注释的字母拼写语法错误的检查?
Python基础 | 新手学Python时常见的语法错误和异常
记得刚接触Python的时候,一条简单的语句在执行的时候却总能遇到报错。然后各种艰难的复查发现可能是循环语句缺少冒号啊、用了中文的标点符号啊、引号/括号等少了一个或者无法匹配啊、函数方法或变量名拼写错误啊等等。
可以叫我才哥
2021/08/05
7.1K1
怎么去掉eclipse对注释的字母语法错误的检查?
操作如下图所示:
黑泽君
2018/10/11
1.2K0
error C2061: 语法错误: 标识符“_TCHAR”
error C2061: 语法错误: 标识符“_TCHAR”解决办法: 标识符“_TCHAR”被定义在“tchar.h”头文件中,包含该头文件即可。
chaibubble
2022/05/07
2.1K0
汇编语言-第四章 第一个程序
一个源程序从写出到执行的过程 编写汇编源程序 对源程序进行编译链接 ---- 1.使用 汇编语言编译程序对源程序文件中的源程序进行编译,产生目标文件。 2.用链接程序对目标文件进行连接,生成可在操作系统中直接运行的可执行文件。 其中,可执行文件包含两部分内容: 程序(从源程序中的汇编指令翻译过来的机器码)和数据(源程序中定义的数据) 相关的描述信息(比如,程序有多大、要占用多少内存空间)。 ---- 执行可执行文件中的内容 操作系统按照可执行文件中的描述信息,将可执行文件中的机器码和数据加载
青木
2018/05/28
6120
【汇编】(五)第一个汇编程序
源程序由“ 汇编指令+伪指令+宏指令 ”组成: 伪指令:编译器处理; 汇编指令:编译为机器码;
sidiot
2023/08/31
2650
【汇编】(五)第一个汇编程序

相似问题

C2400内联汇编程序语法错误,vs 2015

10

内联程序集错误中的编译器错误:- C2400:‘第二个操作数’中内联汇编程序语法错误;找到'newline‘

22

内联汇编程序语法错误

12

在“操作码”中获取内联汇编程序语法错误;找到“常量”

11

在内联汇编程序中使用寄存器

14
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文