在C语言中,register是一个关键字,在创建变量的时候将它放在前面,表示建议将此变量放入寄存器中。
放入寄存器之后读取这个数据的时候速度就会更快,效率更高,但并不是加上关键字之后就表示这个变量一定会放到寄存器中,因为寄存器很小,所以系统会自己判断要不要放入。下面就来讲讲寄存器是什么。
我们的电脑上有四个物理存储设备,可以把它们整体看做是一个正三角,越往上面空间越小,造价越高,速度越快,越往下面空间越大,造价越低,速度越慢。
数据会存储到这四个设备中,而CPU会帮我们在内存中读取其中的数据,随着技术的发展,CPU读取的速度越来越快,存储设备的速度赶不上CPU,这时,系统就会将比较常用的数据保存在寄存器中和高速缓存中,让我们更快地得到数据。这时CPU的访问顺序就是从上到下,最后才会到内存中找数据,大大提高了效率。