如何在C语言中嵌入汇编语言?

赤勇玄心行天道 2020-02-29 11:42:28
本人只懂C语言,完全不懂汇编语言,想优化某些C语言函数的汇编代码,但是完全不会入手,好像不同的编译器不同的指令集汇编代码都还不一样,所以请问大家知道有什么书或者教程是专门讲解这块的?感激不尽!
...全文
602 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 5 楼 大熊猫侯佩 的回复:
补充一下我十几年之前的一篇C内嵌汇编的文章:

用汇编写特殊要求的strlen
https://blog.csdn.net/mydo/article/details/2969377


我的大神呀,你是怎么学会的呀?就只是看了gcc的官方文档吗?还有没有其他详细一点的资料了?谢谢您了!
大熊猫侯佩 2020-03-07
  • 打赏
  • 举报
回复
补充一下我十几年之前的一篇C内嵌汇编的文章:

用汇编写特殊要求的strlen
https://blog.csdn.net/mydo/article/details/2969377
大熊猫侯佩 2020-03-06
  • 打赏
  • 举报
回复
gcc对内嵌汇编支持不错,可以直接看gcc的官方文档的相关章节。
  • 打赏
  • 举报
回复
引用 1 楼 蓝之羽520 的回复:
比如:
__asm {
mov ebx, 0x04269B38;
mov ebx, [ebx];
mov eax, ebx;
add eax, 0x828;
mov edx, [eax];
mov dNum, eax;
}


大神,这个代码正是我想学习的,请问大神有没有相关的学习资料或者书籍名称呢?望赐教!
蓝之羽520 2020-03-03
  • 打赏
  • 举报
回复
dNum是c语言的DWORD变量
蓝之羽520 2020-03-03
  • 打赏
  • 举报
回复
比如:
__asm {
mov ebx, 0x04269B38;
mov ebx, [ebx];
mov eax, ebx;
add eax, 0x828;
mov edx, [eax];
mov dNum, eax;
}

21,497

社区成员

发帖
与我相关
我的任务
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
  • 汇编语言
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧