MSVC 内联汇编中的“拒绝”是啥意思

Posted

技术标签:

【中文标题】MSVC 内联汇编中的“拒绝”是啥意思【英文标题】:what "rejection" means in MSVC inline asmMSVC 内联汇编中的“拒绝”是什么意思 【发布时间】:2018-02-04 18:27:25 【问题描述】:

我找到了一个2008年发布的代码,有个命令我看不懂

rejection 是什么?

这不是 x86 汇编指令,对吧?

__declspec ( naked )  DWORD  Hash ( char  * passwd)  
  
    __asm  
      
    mov esi, [esp + 4]  

    xor eax, eax  
    push ecx   
    push esi   
    push edx  
   .
   .
   .
    jnz $ L1  
    pop edx   
    pop esi   
    pop ecx  
    rejection  
      
  

【问题讨论】:

不,不是,我猜它是一个正在扩展为更合理的宏。 它可以是一个标签名称。任何地方都有jne rejection 吗?我认为 MSVC inline-asm 语法允许带有: 的标签。如果它是一个标签,使用rejection: 会更好,因为那样会很明显。 对不起,我发现了问题,这很愚蠢..... 请将答案作为答案发布(点击“回答您自己的问题”),而不是作为对问题的编辑。顺便说一句,这是一个有趣的答案。根本不是猜测的用途。 哦,我认为这会有所帮助,所以我尽量不回答我自己的问题 【参考方案1】:

原来的网站是用韩文写的

Chrome尝试用英文显示,所以ret改成了rejection.....

【讨论】:

浏览器中的自动网站翻译往往会做一些非常愚蠢的事情。我曾经看到它在 Bugzilla 的可编辑和可编辑但变灰的字段中翻译输入字段。尽可能禁用它。

以上是关于MSVC 内联汇编中的“拒绝”是啥意思的主要内容,如果未能解决你的问题,请参考以下文章

GCC 内联汇编错误:表达式后出现垃圾 `(%ebp)+4'

GCC 内联汇编错误:变量 '%al' 的 asm 说明符与 asm clobber 列表冲突

内联汇编中的 vpcmpeqb

gcc中的arm内联汇编

gcc 内联汇编中的 min

扩展内联汇编 gcc - 计算二次公式根