【关键字】——register在C语言中的使用

简介: 【关键字】——register在C语言中的使用
  • register——寄存器

了解register之前,应该先认识认识寄存器,何为寄存器?

在计算机中,数据可以存储在远程二级存储(网盘,服务器),本地二级存储(本地磁盘),主存(也称内存),高速缓冲,还有寄存器。

早期内存读写速度与CPU的运行速度相当,CPU可以利用内存完成绝大多数的数据处理,而随着CPU的的运行速度的提升,内存读写速度已经无法满足CPU,于是设计出了存储空间比内存小很多,但是运行速度足够快的寄存器。

寄存器是CPU内部用来存放数据的一些小型存储区域,用来暂时存放参与运算的数据和运算结果,即寄存器集成在CPU上。

寄存器是 CPU 的高速缓存 LI、 L2,缓存容量是在组装计算机时必问的 两个CPU 性能问题之一。缓存结构和大小对 CPU 的运行速度影响非常大,毕竟 CPU 的运行速度远大于内存的读写速度,更远大于硬盘。基于执行指令和热点数据的时间 局部性和空间局部性, CPU 缓存部分指令和数据,以提升性能。但由于 CPU 内部空 间狭小且结构复杂,高速缓存远小于内存空间。

寄存器是有限存储容量的高速存储部件,它们可用来暂存指令、数据和位址。

如果我们设置一个变量

int main(void)
{
  int i = 10;
  printf("%d\n",i);
  return 0;
}

原来这个变量i在内存中的栈区存储

int main(void)
{
  register int i = 10;
  printf("%d\n", i);
  return 0;
}

这里使用register可以让变量i的存储位置更换在寄存器上,以加快运行在处理变量i时的运行速度。

【注意】:现阶段的编译器的处理数据已经很强大,所有编译器会自动将需要进行快速处理的数据放在寄存器中,以便加快运行速度。

相关文章
|
存储 编译器 C语言
C语言——关键字详解
C语言——关键字详解
|
2月前
|
存储 C语言
【关键字】static在C语言中的使用
【关键字】static在C语言中的使用
|
3月前
|
C语言
|
4月前
|
存储 编译器 C语言
C语言中的关键字与标识符详解
C语言中的关键字与标识符详解
|
5月前
|
存储 编译器 C语言
C语言的关键字
C语言的关键字
56 0
|
5月前
|
C语言
C语言中关键字static的三种用法
C语言中关键字static的三种用法
|
5月前
|
编译器 C语言
深入理解与运用C语言中的Continue关键字
深入理解与运用C语言中的Continue关键字
162 0
|
11月前
|
C语言
关键字static在C语言中的三种用法
关键字static在C语言中的三种用法
61 0
|
C语言
关于C语言全局变量的定义和用法
关于C语言全局变量的定义和用法
157 0
|
存储 C语言
初识C语言——关键字static的作用
初识C语言——关键字static的作用
88 0