社区
Linux_Kernel
帖子详情
gcc里面的嵌入汇编语句
gougou606
2006-04-01 12:01:17
大家好
我问问在gcc里面的嵌入汇编语句中
例如:movl %%eax,%%ebx
test %%ebx,%%ebx
其中为什么要两个%%,小弟不懂
好有就是test %%ebx,%%ebx这句话 我觉得没有什么意义啊,这样测试了ebx的值还是不变啊???
...全文
381
4
打赏
收藏
gcc里面的嵌入汇编语句
大家好 我问问在gcc里面的嵌入汇编语句中 例如:movl %%eax,%%ebx test %%ebx,%%ebx 其中为什么要两个%%,小弟不懂 好有就是test %%ebx,%%ebx这句话 我觉得没有什么意义啊,这样测试了ebx的值还是不变啊???
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
4 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
claus2001
2006-04-03
打赏
举报
回复
mark
tb01412
2006-04-02
打赏
举报
回复
在内嵌的汇编指令中可能会直接引用某些硬件寄存器,我们已经知道AT&T格式的汇编语言中,寄存器名以“%”作为前缀,为了在生成的汇编程序中保留这个“%”号,在asm语句中对硬件寄存器的引用必须用“%%”作为寄存器名称的前缀,之所以这样做,因为在内嵌汇编时%是一种标识,而真正的汇编语法中%却是要使用物理寄存器的一种符号,这就有点类似于C语言的转义字符一样
TEST用法:
TEST AX, 1 ;测试AX的第0位. TEST CL, 10101B ;测试CL的第0、2、4位
如果TEST %%ebx,%%ebx,条件表达示就为真,关键是后面的代码,你需要把后面的代码贴出来,别人才知道它的作用之所在
默默努力的小熊
2006-04-02
打赏
举报
回复
这是AT&T的汇编语言的语法。AT&T嵌入式汇编就要加上两个%%了。
具体的AT&T汇编语言的语法可参考:
http://blog.csdn.net/mylxiaoyi/archive/2005/11/08/525349.aspx
test %%ebx,%%ebx是不改变%%ebx,但是会改变eflags中的ZF标志啊。
kes2000
2006-04-02
打赏
举报
回复
TEST 测试,每对操作数的对应数据位之间执行隐含的“与”操作,仅修改标志位,不回送结果
ebx的值应该是不变的
AT&T
汇编
语言与
GCC
内嵌
汇编
简介
GCC
内嵌
汇编
是一种特殊的C语言特性,允许程序员在C/C++代码中直接
嵌入
汇编
代码。这种方式可以用于优化性能关键的部分,或者实现C语言本身无法表达的操作。 ##### 2.1 简介
GCC
内嵌
汇编
提供了灵活的方式来编写特定...
AT&T
汇编
语言与
GCC
内嵌
汇编
简介.pdf
GCC
内嵌
汇编
是
GCC
编译器提供的一种特殊功能,它允许用户在C/C++源代码中直接
嵌入
汇编
代码。通过这种方式,程序员可以在保持高级语言编程的同时,利用低级
汇编
语言的优势来优化关键部分的代码。 ##### 2.2 内嵌
汇编
...
ARM
汇编
器与
GCC
汇编
器支持的
汇编
语言差别
内嵌
汇编
是
GCC
编译器提供的一种将
汇编
代码
嵌入
C/C++代码中的机制。其基本语法如下: ```c __asm__(
汇编
语句
模板 : 输出部分 : 输入部分 : 破坏描述部分) ``` - **
汇编
语句
模板**:包含具体的
汇编
指令序列。 - **...
GCC
内联
汇编
GCC
提供了内嵌
汇编
的功能,允许在C代码中直接
嵌入
汇编
语言
语句
。这在实现特定架构优化或对性能有极高要求的应用场景中非常有用。 **示例**: ```c __asm__ __volatile__("hlt"); ``` 这里,“__asm__”关键字指示...
ATT+
汇编
语言与+
GCC
+内嵌
汇编
简介
GCC
的内嵌
汇编
语法允许在 C 或 C++ 代码中
嵌入
汇编
指令。例如: ```c asm volatile ("addl %1, %0" : "=r" (dest) : "r" (src)); ``` 在这个例子中,`addl` 是一个
汇编
指令,它将两个长整数相加并将结果存储在...
Linux_Kernel
4,465
社区成员
17,462
社区内容
发帖
与我相关
我的任务
Linux_Kernel
Linux/Unix社区 内核源代码研究区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 内核源代码研究区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章