编程中寄存器的使用
2017-03-08 22:51
253 查看
1. 系统调用(system call)中的参数传递
比如对于 C 语言库函数 read 的系统调用:result = read(fd, buffer, nbytes);
read 系统调用的参数被压入到栈中,即参数传递是通过栈来进行。但这并非唯一的参数传递方法。事实上,这还算不上效率最高的传递方法。效率最高的方法是将参数存放在指定的寄存器里面。寄存器的访问速度显然高于栈,故这种参数传递可以提升系统调用执行的效率。
在 x64 体系结构中,最前面的 8 个参数由寄存器传递。只有超过 8 个参数时,后面的参数才通过栈来传递。
相关文章推荐
- Windows 64编程中寄存器的使用
- FPGA编程基础(一)--參数传递与寄存器使用
- Windows 64编程中寄存器的使用
- 使用寄存器点亮LED——编程实战
- FPGA编程基础(一)--参数传递与寄存器使用
- 使用JAVA开始面向对象的编程
- 使用C#进行Word 2002和Excel 2002编程
- C语言, 值得终身使用的编程工具(一)
- linux下使用系统调用编程实现copy命令功能
- 使用 Microsoft Visual C# 进行 Microsoft Word 2002 和 Excel 2002 编程
- 使用IntraWeb进行Web编程
- linux下使用系统调用编程实现dir命令功能
- C语言, 值得终身使用的编程工具(二)―――― “秘密”
- 使用NUnit在.Net编程中进行单元测试
- 编程使用WMI 控制连接属性
- [今天的编程日记, 在vb中使用vc编译的dll实例]
- 编程使用WMI 控制连接属性
- Delphi下汉字输入法的编程及使用