c - 在C编程中, “emit”做什么?

标签 c byte emit

最近,我尝试扩展我对C语言的了解,并且遇到了一个使用generate可能会发出一个字节的程序。

__declspec(naked) void marker_begin() {
__asm {
    _emit 0x51;
    _emit 0x21;
    _emit 0x1A;
    _emit 0x14;
    _emit 0x2C;
    _emit 0x5B;
}

}

这可以用来做什么?
提前致谢。

最佳答案

您的C程序正在使用_asm关键字执行内联汇编代码。 _asm是MSDN中使用的Microsoft特定关键字。 __asm关键字调用内联汇编程序。它之后必须是汇编指令,用大括号括起来的一组指令,或者至少是一对空括号。
_emit伪指令类似于DBMASM指令。 _emitMSDN专用的伪指令。 _emit用于在当前文本段的当前位置定义单个立即字节。 _emit一次只能定义一个字节,并且只能在文本段中定义。

关于c - 在C编程中, “emit”做什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16351352/

相关文章:

c - 如何使用 Apple 的 Core Audio C API 在 OS X 上创建简单的实时 I/O 流?

c - strcmp 比较下注预定义和接收到的字符串

java - 将字节数组转换为 png

javascript - 'socket' 上缺少错误处理程序。和类型错误 : cannot read property 'on' of undefined

javascript - 如何在 Angularjs 中使用 Dropzone 显示已存储在服务器上的文件

c - 在 c 中使用杂波工具包通过导航键转移焦点?

关于 printf 语句的混淆

python - python中无符号长溢出的字节总和

c# - 播放解码的RTP数据包的音频

typescript - 如何使用严格类型的有效负载发出事件? | Vue 3 Composition API + TypeScript