ChinaUnix.net
相关文章推荐:

C语言 指定参数寄存器

asmlinkage作用就是告诉编译器,函数参数不是用用寄存器来传递,而是用堆栈来传递的; 网上搜了一下资料,都是介绍asmlinkage是什么的,但是没有介绍为什么要用这个玩意?寄存器的速度比堆栈快很多,为什么要用慢的方式呢,用意为何?

by wLiu2007 - 内核源码 - 2014-08-28 15:35:53 阅读(2138) 回复(9)

相关讨论

很简单,举个例子: 平台ARM11 ,gcc-elf-gcc int add (int a , int b ) {  int c;//在这里能指定c用通用寄存器来操作吗?如r4或者r5     return c = a + b; }

by rocky1972 - C/C++ - 2009-01-01 21:06:27 阅读(3484) 回复(12)

寄存器 寄存器定义 寄存器用途 数据寄存器 寄存器分类    英文名称:Register 寄存器定义  寄存器是 中央处理器 内的组成部份。寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令、数据和位址。在中央处理器的控制部件中,包含的寄存器有 指令寄存器 (IR)和 程序计数器 (PC)。在中央处理器的算术及逻辑部件中,包含的寄存器有 累加器 ( ACC )。   寄存器是内存阶层中的最顶端,也是系统获得操作资料的最快速...

by skyily - Linux文档专区 - 2009-10-13 15:34:21 阅读(751) 回复(0)

寄存器(Register)是CPU内部的元件,所以在寄存器之间的数据传送非常快。用途:1.可将寄存器内的数据执行算术及逻辑运算。2.存于寄存器内的地址可用来指向内存的某个位置,即寻址。3.可以用来读写数据到电脑的周边设备。8086 有8个8位数据寄存器,这些8位寄存器可分别组成16位寄存器:AH&AL=AX:累加寄存器,常用于运算;BH&BL=BX:基址寄存器,常用于地址索引;CH&CL=CX:计数寄存器,常用于计数;DH&DL=DX:数据寄存器,常用...

by beauty2001 - Linux文档专区 - 2009-03-21 17:29:43 阅读(504) 回复(0)

Linux情景分析的上册第一章中,讲了一些AT&T的汇编,其中在C语言中,嵌入式汇编,经常需要对寄存器进行限制,有指令部:输出部:输入部:损坏部; 我对于其中的这些变量与寄存器的结合不是很明白,希望大家赐教!

by 悠悠长风 - 内核/嵌入技术 - 2006-01-04 08:59:02 阅读(634) 回复(0)

Linux情景分析的上册第一章中,讲了一些AT&T的汇编,其中在C语言中,嵌入式汇编,经常需要对寄存器进行限制,有指令部:输出部:输入部:损坏部; 我对于其中的这些变量与寄存器的结合不是很明白,希望大家赐教!

by 悠悠长风 - 嵌入式开发 - 2006-01-04 08:59:02 阅读(2019) 回复(0)

在VC++6里是这样写是能通过编译的: __asm MOV ESP,0A0000h;//设置堆栈顶部 但是换到Borland c++下编译就不能通过了: Error TEST.C 39: Undefined symbol 'ESP' 我用的是Borland C/C++ V3.1,好像是自带有TASM汇编器的。 但是这段汇编代码是嵌入在c代码里的. 不知两个编译器该如何结合起来使用? 谢谢

by Macker - C/C++ - 2005-05-04 10:29:49 阅读(1340) 回复(1)

我现在只知道Win32平台下C++语言保存函数返回值的寄存器是EDX:EAX,那在Linux平台下呢?用gcc编译。

by chb79 - 内核/嵌入技术 - 2004-11-06 19:38:19 阅读(989) 回复(1)

我现在只知道Win32平台下C++语言保存函数返回值的寄存器是EDX:EAX,那在Linux平台下呢?用gcc编译。

by chb79 - 内核源码 - 2004-11-06 19:38:19 阅读(1358) 回复(1)

int80的系统调用,参数传递是否都用寄存器

by blackoil - 内核源码 - 2009-05-28 10:11:52 阅读(1484) 回复(5)

系统在执行ta 8这条指令前,都会将如系统调用号、所需参数等放入固定的寄存器中,请问在SPARC/Solaris平台下是怎么样一个规则呢? 望告知!急!如果有相关文档更好!

by yababy - Solaris - 2008-06-13 08:30:16 阅读(1580) 回复(2)